We introduce a novel iterative eigenvalue algorithm for near-diagonal matrices termed iterative perturbative theory (IPT). Built upon a "perturbative" partitioning of the matrix into diagonal and off-diagonal parts, IPT computes one or all eigenpairs with a complexity per iteration of one matrix-vector or one matrix-matrix multiplication respectively. Thanks to the high parallelism of these basic linear algebra operations, we obtain excellent performance on multi-core processors and GPUs, with large speed-ups over standard methods (up to $\sim50$x with respect to LAPACK and ARPACK). For matrices which are not close to being diagonal but have well-separated eigenvalues, IPT can be be used to refine low-precision eigenpairs obtained by other methods. We give sufficient conditions for linear convergence and demonstrate performance on dense and sparse test matrices. In a real-world application from quantum chemistry, we find that IPT performs similarly to the Davidson algorithm.
翻译:我们为近对角矩阵引入了一种新型的迭代迭代电子价值算法,称为迭代扰动理论(IPT)。在将矩阵“半振”分割成对角和对角部分时,IPT计算出一种或全部对角,根据一个矩阵矢量或一个矩阵矩阵矩阵乘数的迭代,具有复杂性。由于这些基本线性代数操作的高度平行性,我们在多核心处理器和GPUs上取得了出色的性能,并大大超过标准方法(在LAPACK和ARPACK方面高达$/sim50x)。对于不接近对角但具有良好分离性亚皮值的矩阵,IPT可用于改进通过其他方法获得的低精度乙型。我们为线性趋同和稀薄性测试矩阵提供了充分的条件。在量子化学的实际应用中,我们发现IPT与Davidson算法相似。