SIPs: Shift-and-invert parallel spectral transformations

SIPs is a new efficient and robust software package implementing multiple shift-and-invert spectral transformations on parallel computers. Built on top of SLEPc and PETSc, it can compute very large numbers of eigenpairs for sparse symmetric generalized eigenvalue problems. The development of SIPs is motivated by applications in nanoscale materials modeling, in which the growing size of the matrices and the pathological eigenvalue distribution challenge the efficiency and robustness of the solver. In this article, we present a parallel eigenvalue algorithm based on distributed spectrum slicing. We describe the object-oriented design and implementation techniques in SIPs, and demonstrate its numerical performance on an advanced distributed computer.

[1]  Robert E. Fulton,et al.  Implementation of the lanczos method for structural vibration analysis on a parallel computer , 1986 .

[2]  W. Gropp,et al.  Using MPI-2nd Edition , 1999 .

[3]  Jack Dongarra,et al.  ScaLAPACK user's guide , 1997 .

[4]  C. Lanczos An iteration method for the solution of the eigenvalue problem of linear differential and integral operators , 1950 .

[5]  B. Parlett The Symmetric Eigenvalue Problem , 1981 .

[6]  Axel Ruhe,et al.  The spectral transformation Lánczos method for the numerical solution of large sparse generalized symmetric eigenvalue problems , 1980 .

[7]  Chao Yang,et al.  Time-Memory Trade-Offs Using Sparse Matrix Methods for Large-Scale Eigenvalue Problems , 2003, ICCSA.

[8]  Chao Yang,et al.  ARPACK users' guide - solution of large-scale eigenvalue problems with implicitly restarted Arnoldi methods , 1998, Software, environments, tools.

[9]  Robert E. Fulton,et al.  Implementation of the lanczos method for structural vibration analysis on a parallel computer , 1987 .

[10]  Patrick Amestoy,et al.  A Fully Asynchronous Multifrontal Solver Using Distributed Dynamic Scheduling , 2001, SIAM J. Matrix Anal. Appl..

[11]  O. Marques BLZPACK: Description and User's Guide , 1995 .

[12]  Karl Meerbergen,et al.  The Lanczos method: evolution and application , 2005, Math. Comput..

[13]  James Demmel,et al.  LAPACK Users' Guide, Third Edition , 1999, Software, Environments and Tools.

[14]  Franco Zambonelli,et al.  Diffusive load-balancing policies for dynamic applications , 1999, IEEE Concurr..

[15]  B. Parlett,et al.  The Lanczos algorithm with selective orthogonalization , 1979 .

[16]  Patrick R. Amestoy,et al.  Multifrontal parallel distributed symmetric and unsymmetric solvers , 2000 .

[17]  J. G. Lewis,et al.  A Shifted Block Lanczos Algorithm for Solving Sparse Symmetric Generalized Eigenproblems , 1994, SIAM J. Matrix Anal. Appl..

[18]  Sándor Suhai,et al.  Self-consistent-charge density-functional tight-binding method for simulations of complex materials properties , 1998 .

[19]  Gerard L. G. Sleijpen,et al.  A Jacobi-Davidson Iteration Method for Linear Eigenvalue Problems , 1996, SIAM J. Matrix Anal. Appl..

[20]  Vicente Hernández,et al.  SLEPc: A scalable and flexible toolkit for the solution of eigenvalue problems , 2005, TOMS.

[21]  H. Simon,et al.  A parallel Lanczos method for symmetric generalized eigenvalue problems , 1999 .

[22]  Gerard L. G. Sleijpen,et al.  A Jacobi-Davidson Iteration Method for Linear Eigenvalue Problems , 1996, SIAM Rev..