Quokka:基于GPU的二阶矩AMR辐射流体动力学程序
Quokka: A code for two-moment AMR radiation hydrodynamics on GPUs
摘要:
我们提出了Quokka,一个新的子循环的时间,块结构的自适应网格细化(AMR)辐射流体动力学代码优化的图形处理单元(GPU)。Quokka用分段抛物方法(PPM)求解流体动力学方程,并通过局部封闭的可变爱丁顿张量(VET)辐射矩方程处理辐射转移。我们使用AMReX库来处理自适应网格管理。为了最大限度地提高GPU的性能,我们结合显式的时间演化的辐射矩方程与降低光速近似。我们展示了流体力学,辐射和耦合辐射流体力学的广泛测试问题的结果。在单个GPU上的3D均匀网格上,我们的代码每秒可实现> 2.5亿次流体动力学更新和每秒近4000万次辐射流体动力学更新。对于3D均匀网格上的辐射流体力学问题,我们的代码可以从4个GPU扩展到256个GPU,效率为76%。该代码在GitHub上以开源许可证公开发布。
英文摘要:
We present Quokka, a new subcycling-in-time, block-structured adaptive mesh refinement (AMR) radiation hydrodynamics code optimised for graphics processing units (GPUs). Quokka solves the equations of hydrodynamics with the piecewise parabolic method (PPM) in a method-of-lines formulation, and handles radiative transfer via the variable Eddington tensor (VET) radiation moment equations with a local closure. We use the AMReX library to handle the adaptive mesh management. In order to maximise GPU performance, we combine explicit-in-time evolution of the radiation moment equations with the reduced speed-of-light approximation. We show results for a wide range of test problems for hydrodynamics, radiation, and coupled radiation hydrodynamics. On uniform grids in 3D on a single GPU, our code achieves > 250 million hydrodynamic updates per second and almost 40 million radiation hydrodynamic updates per second. For radiation hydrodynamics problems on uniform grids in 3D, our code scales from 4 GPUs to 256 GPUs with an efficiency of 76 per cent. The code is publicly released under an open-source license on GitHub.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。