使用OpenACC编译器指令在混合浮点精度下高效和可移植地加速量子化学多体方法
Efficient and portable acceleration of quantum chemical many-body methods in mixed floating point precision using OpenACC compiler directives
摘要:
它演示了如何编译器指令的非专有OpenACC标准可用于companimate和有效地加速速率确定步骤的两个最常用的多体方法的电子结构理论,即二阶Møller-Plesset(MP2)模型在它的分辨率的身份(RI)近似形式和(T)三重校正耦合集群单打和双打模型(CCSD,T))。通过计算指令以及使用优化的设备数学库,能量内核中涉及的操作已经被移植到图形处理单元(GPU)加速器,并且相关联的数据传输相应地被优化到这样的程度,(使用双精度和/或单精度运算)能够扩展到主机中央处理单元(CPU)主存储器容量所允许的最大系统。的混合CPU/GPU实现的性能进行评估,通过计算丙氨酸氨基酸链的测试系统,使用一个电子基组的大小不断增加(范围从双到五重zeta质量)。对于所有,但本研究的最小的问题大小,优化的加速代码(使用一个多核CPU主机节点结合六个GPU)被发现能够减少总的解决方案的时间至少一个数量级的优化,OpenMP线程CPU的参考实现。
英文摘要:
It is demonstrated how the non-proprietary OpenACC standard of compiler directives may be used to compactly and efficiently accelerate the rate-determining steps of two of the most routinely applied many-body methods of electronic structure theory, namely the second-order Møller-Plesset (MP2) model in its resolution-of-the-identity (RI) approximated form and the (T) triples correction to the coupled cluster singles and doubles model (CCSD(T)). By means of compute directives as well as the use of optimized device math libraries, the operations involved in the energy kernels have been ported to graphics processing unit (GPU) accelerators, and the associated data transfers correspondingly optimized to such a degree that the final implementations (using either double and/or single precision arithmetics) are capable of scaling to as large systems as allowed for by the capacity of the host central processing unit (CPU) main memory. The performance of the hybrid CPU/GPU implementations is assessed through calculations on test systems of alanine amino acid chains using one-electron basis sets of increasing size (ranging from double- to pentuple-zeta quality). For all but the smallest problem sizes of the present study, the optimized accelerated codes (using a single multi-core CPU host node in conjunction with six GPUs) are found to be capable of reducing the total time-to-solution by at least an order of magnitude over optimized, OpenMP-threaded CPU-only reference implementations.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。