ChASE: Chebyshev Accelerated Subspace iteration Eigensolver for sequences of Hermitian eigenvalue problems

Solving dense Hermitian eigenproblems arranged in a sequence with direct solvers fails to take advantage of those spectral properties which are pertinent to the entire sequence, and not just to the single problem. When such features take the form of correlations between the eigenvectors of consecutive problems, as is the case in many real-world applications, the potential benefit of exploiting them can be substantial. We present ChASE, a modern algorithm and library based on subspace iteration with polynomial acceleration. Novel to ChASE is the computation of the spectral estimates that enter in the filter and an optimization of the polynomial degree which further reduces the necessary FLOPs. ChASE is written in C++ using the modern software engineering concepts which favor a simple integration in application codes and a straightforward portability over heterogeneous platforms. When solving sequences of Hermitian eigenproblems for a portion of their extremal spectrum, ChASE greatly benefits from the sequence's spectral properties and outperforms direct solvers in many scenarios. The library ships with two distinct parallelization schemes, supports execution over distributed GPUs, and it is easily extensible to other parallel computing architectures.

[1]  Erich Wimmer,et al.  Full-potential self-consistent linearized-augmented-plane-wave method for calculating the electronic structure of molecules and surfaces: O 2 molecule , 1981 .

[2]  Walter Kohn,et al.  Nobel Lecture: Electronic structure of matter-wave functions and density functionals , 1999 .

[3]  Yousef Saad,et al.  The Eigenvalues Slicing Library (EVSL): Algorithms, Implementation, and Software , 2018, SIAM J. Sci. Comput..

[4]  G. Golub,et al.  The canonical correlations of matrix pairs and their numerical computation , 1992 .

[5]  Yousef Saad,et al.  Self-consistent-field calculations using Chebyshev-filtered subspace iteration , 2006, J. Comput. Phys..

[6]  Robert A. van de Geijn,et al.  Elemental: A New Framework for Distributed Memory Dense Matrix Computations , 2013, TOMS.

[7]  Chao Yang,et al.  Chebyshev polynomial filtered subspace iteration in the discontinuous Galerkin method for large-scale electronic structure calculations. , 2016, The Journal of chemical physics.

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

[9]  Edoardo Di Napoli,et al.  Block iterative eigensolvers for sequences of correlated eigenvalue problems , 2013, Comput. Phys. Commun..

[10]  Yousef Saad,et al.  Fast Computation of Spectral Densities for Generalized Eigenvalue Problems , 2017, SIAM J. Sci. Comput..

[11]  K. Hadeler,et al.  A minimax principle for nonlinear eigenvalue problems with applications to nonoverdamped systems , 1982 .

[12]  H. Rutishauser Computational aspects of F. L. Bauer's simultaneous iteration method , 1969 .

[13]  Stanley C. Eisenstat,et al.  A Divide-and-Conquer Algorithm for the Symmetric Tridiagonal Eigenproblem , 1995, SIAM J. Matrix Anal. Appl..

[14]  D. Sorensen Numerical methods for large eigenvalue problems , 2002, Acta Numerica.

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

[16]  Y. Saad Numerical Methods for Large Eigenvalue Problems , 2011 .

[17]  Gerhard Wellein,et al.  High-performance implementation of Chebyshev filter diagonalization for interior eigenvalue computations , 2015, J. Comput. Phys..

[18]  I. Dhillon Algorithm for the Symmetric Tridiagonal Eigenvalue/Eigenvector Problem , 1998 .

[19]  Toshiyuki Imamura,et al.  Development of a High-Performance Eigensolver on a Peta-Scale Next-Generation Supercomputer System (Selected Papers of the Joint International Conference of Supercomputing in Nuclear Applications and Monte Carlo : SNA + MC 2010) , 2011 .

[20]  E. Rogers A mimmax theory for overdamped systems , 1964 .

[21]  H. Hotelling Relations Between Two Sets of Variates , 1936 .

[22]  V. Eijkhout,et al.  Reverse Communication Interface for Linear Algebra Templates for Iterative Methods , 1995 .

[23]  A Marek,et al.  The ELPA library: scalable parallel eigenvalue solutions for electronic structure theory and computational science , 2014, Journal of physics. Condensed matter : an Institute of Physics journal.

[24]  Stanly Steinberg,et al.  A Matrix Eigenvalue Problem , 1979 .

[25]  Edoardo Di Napoli,et al.  An optimized and scalable eigensolver for sequences of eigenvalue problems , 2015, Concurr. Comput. Pract. Exp..

[26]  Axel Ruhe ALGORITHMS FOR THE NONLINEAR EIGENVALUE PROBLEM , 1973 .

[27]  Jack Dongarra,et al.  ScaLAPACK Users' Guide , 1987 .

[28]  G. Golub,et al.  Subspace iterative methods for eigenvalue problems , 1999 .

[29]  Yousef Saad,et al.  Approximating Spectral Densities of Large Matrices , 2013, SIAM Rev..

[30]  Antoine Levitt,et al.  Parallel eigensolvers in plane-wave Density Functional Theory , 2014, Comput. Phys. Commun..

[31]  Ren-Cang Li,et al.  Bounding the spectrum of large Hermitian matrices , 2011 .

[32]  Tamara G. Kolda,et al.  An overview of the Trilinos project , 2005, TOMS.

[33]  Arthur J Freeman,et al.  Total-energy full-potential linearized augmented-plane-wave method for bulk solids: Electronic and structural properties of tungsten , 1984 .

[34]  Eric Polizzi,et al.  A Density Matrix-based Algorithm for Solving Eigenvalue Problems , 2009, ArXiv.

[35]  Yousef Saad,et al.  Chebyshev-filtered subspace iteration method free of sparse diagonalization for solving the Kohn-Sham equation , 2014, J. Comput. Phys..

[36]  Robert A. van de Geijn,et al.  A Parallel Eigensolver for Dense Symmetric Matrices Based on Multiple Relatively Robust Representations , 2005, SIAM J. Sci. Comput..

[37]  Andreas Stathopoulos,et al.  PRIMME: preconditioned iterative multimethod eigensolver—methods and software description , 2010, TOMS.

[38]  F. L. Bauer Das Verfahren der Treppeniteration und verwandte Verfahren zur Lösung algebraischer Eigenwertprobleme , 1957 .

[39]  Stéphane Moreau,et al.  Spectral recycling strategies for the solution of nonlinear eigenproblems in thermoacoustics , 2015, Numer. Linear Algebra Appl..

[40]  G. Stewart Simultaneous iteration for computing invariant subspaces of non-Hermitian matrices , 1976 .

[41]  Jack J. Dongarra,et al.  A set of level 3 basic linear algebra subprograms , 1990, TOMS.

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

[43]  Maurice Clint,et al.  The Evaluation of Eigenvalues and Eigenvectors of Real Symmetric Matrices by Simultaneous Iteration , 1970, Comput. J..

[44]  Peter Arbenz,et al.  Iterative solution of generalized eigenvalue problems from optoelectronics with trilinos , 2012 .

[45]  S. H. Lui,et al.  Domain decomposition methods for eigenvalue problems , 2000 .

[46]  G. W. Stewart,et al.  Matrix algorithms , 1998 .

[47]  Andreas Stathopoulos,et al.  Locking issues for finding a large number of eigenvectors of Hermitian matrices , 2006 .

[48]  H. Rutishauser Simultaneous iteration method for symmetric matrices , 1970 .

[49]  J. Cuppen A divide and conquer method for the symmetric tridiagonal eigenproblem , 1980 .

[50]  Richard B. Lehoucq,et al.  Anasazi software for the numerical solution of large-scale eigenvalue problems , 2009, TOMS.

[51]  Chao Yang,et al.  Parallel eigenvalue calculation based on multiple shift-invert Lanczos and contour integral based spectral projection method , 2014, Parallel Comput..

[52]  Stefan Blügel,et al.  Correlations in sequences of generalized eigenproblems arising in Density Functional Theory , 2012, Comput. Phys. Commun..

[53]  P. Hohenberg,et al.  Inhomogeneous Electron Gas , 1964 .

[54]  Paolo Bientinesi,et al.  High-Performance Solvers for Dense Hermitian Eigenproblems , 2012, SIAM J. Sci. Comput..

[55]  G. Stewart Accelerating the orthogonal iteration for the eigenvectors of a Hermitian matrix , 1969 .

[56]  Toshiyuki Imamura,et al.  Development of a High-Performance Eigensolver on a Peta-Scale Next-Generation Supercomputer System , 2011 .