High Performance Parallel LOBPCG Method for Large Hamiltonian Derived from Hubbard Model on Multi-GPU Systems

High Performance Parallel LOBPCG Method for Large Hamiltonian Derived from Hubbard Model on Multi-GPU Systems
复制标题

多GPU系统上哈伯德模型导出的大哈密顿量的高性能并行LOBPCG方法

DOI:
10.1007/978-3-031-10419-0_1
复制
发表时间:
2022
期刊:
SCFA 2022: Supercomputing Frontiers, Lecture Notes in Computer Science
影响因子:
--
通讯作者:
Machida Masahiko
Machida Masahiko
中科院分区:
--
文献类型:
--
作者:
Yamada Susumu;Imamura Toshiyuki;Machida Masahiko

文献摘要

相似文献

Hubbard模型的物理性质可以通过求解由该模型导出的哈密顿量的本征值问题来理解。由于哈密顿量是一个大型稀疏矩阵,通常采用迭代法求解。局部最优块预条件共轭梯度法是解决这一问题的有效方法之一。提出了当所有迭代向量都存储在设备存储器中时,该方法在GPU系统上的调整策略。在这项研究中,我们提出了优化策略的并行LOBPCG方法在多GPU系统的哈密顿量是大的,一些迭代向量存储在主机内存中。当用LOBPCG方法求解多特征对(特征值和对应的特征向量)时,迭代向量的数目与特征对的数目成正比,迭代向量的大小与哈密顿量的维数相同。另一方面,通过考虑元素的规则排列,可以显着减少用于哈密顿量的非零元素的存储器消耗。因此,当我们在GPU上执行大哈密顿量的LOBPCG方法时,一些向量必须存储在主机内存中,并且必须根据需要在主机和设备内存之间传输。由于数据传输的代价很大,本文还对数据传输进行了优化,在多GPU系统上的仿真结果表明,数据传输的优化对于高性能计算是非常有效的。
The physical property of the Hubbard model can be understood by solving the eigenvalue problem for the Hamiltonian derived from the model. Since the Hamiltonian is a large sparse matrix, an iteration method is usually utilized for solving the problems. One of effectual solvers for this problem is the LOBPCG (Locally Optimal Block Preconditioned Conjugate Gradient) method. The tuning strategies of the method on GPU systems when all iteration vectors are stored in device memory have been proposed. In this research, we propose tuning strategies for parallel LOBPCG method on multi-GPU system when the Hamiltonian is large and some iteration vectors are stored in host memory. When the LOBPCG method is used for solving multi eigenpairs (eigenvalues and the corresponding eigenvectors), the number of iteration vectors, whose size is the same as the dimension of the Hamiltonian, is proportional to the number of the eigenpairs. On the other hand, the memory consumption for the non-zero elements of the Hamiltonian can be significantly reduced by considering the regular arrangement of the elements. Therefore, when we execute the LOBPCG method for a large Hamiltonian on GPUs, some of the vectors have to be stored on host memory and have to be transferred between host and device memory as needed. Since the cost of the data transfer is very large, we also propose the optimization for it. The simulation result on a multi-GPU system shows that the optimization of the data transfer is very effective for high performance computing.