Skip to main content
QUICK REVIEW

[论文解读] Density Functional Theory calculation on many-cores hybrid CPU-GPU architectures

Luigi Genovese, Matthieu Ospici|ArXiv.org|Apr 9, 2009
Matrix Theory and Algorithms参考文献 2被引用 6
一句话总结

本文提出了一种基于Daubechies小波的从头电子结构代码BigDFT在混合CPU-GPU架构上的GPU加速实现。该实现利用双精度浮点数算术,在完整DFT计算中实现了最高6倍的加速,部分核函数加速高达20倍,同时在大规模并行异构环境中保持了收敛性和可扩展性,适用于不同CPU/GPU比例的配置。

ABSTRACT

The implementation of a full electronic structure calculation code on a hybrid parallel architecture with Graphic Processing Units (GPU) is presented. The code which is on the basis of our implementation is a GNU-GPL code based on Daubechies wavelets. It shows very good performances, systematic convergence properties and an excellent efficiency on parallel computers. Our GPU-based acceleration fully preserves all these properties. In particular, the code is able to run on many cores which may or may not have a GPU associated. It is thus able to run on parallel and massive parallel hybrid environment, also with a non-homogeneous ratio CPU/GPU. With double precision calculations, we may achieve considerable speedup, between a factor of 20 for some operations and a factor of 6 for the whole DFT code.

研究动机与目标

  • 在基于系统性正交小波基的混合CPU-GPU超级计算机上,实现可扩展的高性能DFT计算。
  • 通过在GPU上使用双精度浮点数加速关键运算,克服大体系中DFT立方标度计算瓶颈。
  • 保持与现有基于CPU的并行化完全兼容,并支持混合集群中非均匀的CPU/GPU比例。
  • 证明GPU加速不会损害原始DFT代码的收敛性或效率。

提出的方法

  • 基于Daubechies小波的BigDFT代码通过CUDA将计算密集型操作(如线性代数和卷积)卸载至GPU内核。
  • 为DFT核心运算(包括Kohn-Sham哈密顿量计算、电子密度和交换相关势)实现GPU内核。
  • 通过支持每张GPU卡配备多个CPU核心,优化CPU与GPU之间的数据传输以最小化延迟。
  • 通过保持原有的基于MPI的域分解机制,保留原始代码的系统性收敛性和并行效率。
  • 全程使用双精度浮点数算术,确保从头算模拟的数值鲁棒性。
  • 混合架构支持异构配置,允许不同数量的CPU核心分配给单张GPU卡,且性能无下降。

实验结果

研究问题

  • RQ1能否在保持收敛性和并行效率的前提下,将基于Daubechies小波的完整电子结构代码高效移植到混合CPU-GPU架构上?
  • RQ2通过使用双精度浮点数算术在GPU上加速关键DFT运算,可实现多大的性能提升?
  • RQ3在异构混合环境中,当为单张GPU卡分配多个CPU核心时,代码的可扩展性如何?
  • RQ4GPU加速的DFT代码在不同体系尺寸和边界条件下是否能保持性能和稳定性?
  • RQ5GPU加速在不引入热点或通信瓶颈的前提下,能在多大程度上提升生产级DFT代码的整体性能?

主要发现

  • 在每节点配备两块GPU的12节点混合系统上,GPU加速的DFT代码在完整计算中实现了约6倍的整体加速。
  • 部分GPU内核在特定运算(尤其是线性代数和卷积运算)中实现了高达20倍的加速。
  • 即使为每张GPU卡分配多个CPU核心,代码仍保持优异的收敛特性和并行效率。
  • 在高CPU/GPU比例下(如每张GPU卡4个核心),性能下降极小,仅约2倍减速,表明负载均衡能力极强。
  • 该实现支持非均匀的CPU/GPU比例,并在大规模并行混合集群中表现出良好的可扩展性。
  • GPU加速与原始基于CPU的并行化完全兼容,且在完整代码执行过程中未观察到性能瓶颈。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。