A robust and efficient implementation of LOBPCG
For practitioners needing reliable eigenvalue computations, this work provides a more robust and faster LOBPCG implementation, though it is an incremental improvement over existing techniques.
The paper improves the numerical stability and performance of the LOBPCG algorithm for computing eigenvalues of large sparse symmetric matrices, proposing a new basis selection strategy and a backward-stable convergence criterion that consistently outperform prior methods in both stability and speed.
Locally Optimal Block Preconditioned Conjugate Gradient (LOBPCG) is widely used to compute eigenvalues of large sparse symmetric matrices. The algorithm can suffer from numerical instability if it is not implemented with care. This is especially problematic when the number of eigenpairs to be computed is relatively large. In this paper we propose an improved basis selection strategy based on earlier work by Hetmaniuk and Lehoucq as well as a robust convergence criterion which is backward stable to enhance the robustness. We also suggest several algorithmic optimizations that improve performance of practical LOBPCG implementations. Numerical examples confirm that our approach consistently and significantly outperforms previous competing approaches in both stability and speed.