基于Numba 的 MCDC 蒙特卡洛中子输运的性能可移植性
计算物理
2025-05-30 v3
摘要
寻找一种能够实现在GPU和CPU上进行高性能计算时具备可移植性、快速开发和开放合作能力的软件工程方法是一个挑战。我们采用Numba编译器实现了一种可移植性方案,用于Monte Carlo / Dynamic Code(MC/DC),这是一种用于快速开发蒙特卡洛中子输运的新型应用程序。通过该方案,我们将MC/DC构建为一个可作为纯Python、编译CPU或编译GPU求解器运行的应用程序。在GPU模式下,我们使用Numba配合称为Harmonize的异步GPU调度器来提高GPU性能。我们呈现了在CPU和GPU上进行的性能结果(包括最高可达256节点的弱扩展),并对比了生产C++代码。
引用
@article{arxiv.2409.04668,
title = {Performance Portable Monte Carlo Neutron Transport in MCDC via Numba},
author = {Joanna Piper Morgan and Ilham Variansyah and Braxton Cuneo and Todd S. Palmer and Kyle E. Niemeyer},
journal= {arXiv preprint arXiv:2409.04668},
year = {2025}
}
备注
11 pages, 6 figures