EIRENE [1] is a Monte Carlo neutral transport solver heavily used in the fusion community. EIRENE does not implement domain decomposition, making it impossible to use for simulations where the grid data does not fit on one compute node (see e.g. [2]). This paper presents a domain-decomposed Monte Carlo (DDMC) algorithm implemented in a new open source Monte Carlo code, Eiron. Two parallel algorithms currently used in EIRENE are also implemented in Eiron, and the three algorithms are compared by running strong scaling tests, with DDMC performing better than the other two algorithms in nearly all cases. On the supercomputer Mahti [3], DDMC strong scaling is superlinear for grids that do not fit into an L3 cache slice (4 MiB). The DDMC algorithm is also scaled up to 16384 cores in weak scaling tests, with a weak scaling efficiency of 45% in a high-collisional (heavier compute load) case, and 26% in a low-collisional (lighter compute load) case. We conclude that implementing this domain decomposition algorithm in EIRENE would improve performance and enable simulations that are currently impossible due to memory constraints.
翻译:EIRENE [1] 是一种在聚变研究领域广泛使用的蒙特卡洛中性粒子输运求解器。EIRENE 未实现域分解功能,因此当网格数据无法存储在单个计算节点上时(参见例如 [2]),无法用于相关模拟。本文提出了一种域分解蒙特卡洛(DDMC)算法,该算法已在一个新的开源蒙特卡洛代码 Eiron 中实现。Eiron 还实现了目前 EIRENE 中使用的两种并行算法,并通过运行强扩展测试对这三种算法进行了比较,结果显示 DDMC 在几乎所有情况下均优于其他两种算法。在超级计算机 Mahti [3] 上,对于无法放入 L3 缓存片(4 MiB)的网格,DDMC 的强扩展表现出超线性性能。在弱扩展测试中,DDMC 算法可扩展至 16384 个核心,在高碰撞(计算负载较重)情况下弱扩展效率为 45%,在低碰撞(计算负载较轻)情况下为 26%。我们得出结论:在 EIRENE 中实现此域分解算法将提升其性能,并使得目前因内存限制而无法进行的模拟成为可能。