《Astronomy and Computing》:Accelerating cosmological simulations on GPUs: A portable approach using OpenMP
编辑推荐:
M.D. Lepinzan|G. Lacopo|D. Goz|G. Taffoni|P. Monaco|P.J. Elahi|U. Varetto|M. Cytowski摘要在本研究中,我们将基于拉格朗日扰动理论(LPT)的宇宙学代码PINOCCHIO中的一个关键模块移植到图形处
M.D. Lepinzan|G. Lacopo|D. Goz|G. Taffoni|P. Monaco|P.J. Elahi|U. Varetto|M. Cytowski
摘要
在本研究中,我们将基于拉格朗日扰动理论(LPT)的宇宙学代码PINOCCHIO中的一个关键模块移植到图形处理单元(GPU)上,并通过OpenMP目标指令对其进行了优化。该框架被广泛用于生成暗物质晕图谱。
我们的优化重点在于代码中负责计算模拟中每个粒子坍缩时间的部分。由于这类计算具有很好的并行性,因此非常适合通过GPU来加速处理。
在移植过程中,我们还为计算坍缩时间所必需的立方样条插值和双线性插值函数开发了完全适用于GPU的实现方式。由于GNU科学计算库(GSL)不支持GPU加速,这些自定义实现的计算完全在GPU上完成,其误差仅为,这一数值远低于使用GSL的CPU实现方式。
在LEONARDO(基于NVIDIA)和SETONIX(基于AMD)超级计算机上的对比测试表明,该移植方案具有出色的可移植性和性能,加速比可达4,甚至在某些情况下可达8。虽然坍缩时间计算并非整个工作流程中的主要瓶颈,但这种加速效果仍能使数千次模拟的运行时间分别减少秒,从而累计节省标准小时(标准工作小时)。
通过屋顶线分析可知,我们的GPU移植版本能够实现超过80%的理论FP64峰值性能,这证明了该实现方式在计算效率方面表现优异。
这项研究表明,OpenMP指令是一种可行且有效的策略,可用于在异构硬件上加速大规模宇宙学模拟。