A scalable and extensible checkpointing scheme for massively parallel simulations

A scalable and extensible checkpointing scheme for massively parallel simulations
复制标题

DOI:
10.1177/1094342018767736
复制
发表时间:
2019-07-01
影响因子:
3.1
通讯作者:
Ruede, Ulrich
Ruede, Ulrich
中科院分区:
计算机科学3区
文献类型:
--
作者:
Kohl, Nils;Hoetzer, Johannes;Ruede, Ulrich

文献摘要

被引文献

相似文献

工程或材料科学中的真实仿真可能会消耗大量的计算资源,因此需要使用大规模并行超级计算机。故障的概率随着运行时间和系统组件的数量而增加。因此,对于未来的艾级系统,制定策略以使软件能够抵御故障被认为是至关重要的。在本文中,我们提出了一个可扩展的,分布式的,无盘的,弹性的检查点方案,可以创建和恢复一个分区的模拟域的快照。我们证明了效率和可扩展性的检查点策略的模拟高达40亿个计算单元上执行超过400亿个浮点值。一个检查点的创建只需要几秒钟,新的检查点方案几乎完美地扩展到超过260,000(2(18))个进程。为了在运行期间从无盘检查点恢复,我们使用ULFM MPI实现了恢复算法。检查点机制完全集成在最先进的高性能多物理场仿真框架中。我们证明了该方法的效率和鲁棒性与现实的相场模拟起源于材料科学和晶格玻尔兹曼方法的实施。
Realistic simulations in engineering or in the materials sciences can consume enormous computing resources and thus require the use of massively parallel supercomputers. The probability of a failure increases both with the runtime and with the number of system components. For future exascale systems, it is therefore considered critical that strategies are developed to make software resilient against failures. In this article, we present a scalable, distributed, diskless, and resilient checkpointing scheme that can create and recover snapshots of a partitioned simulation domain. We demonstrate the efficiency and scalability of the checkpoint strategy for simulations with up to 40 billion computational cells executing on more than 400 billion floating point values. A checkpoint creation is shown to require only a few seconds and the new checkpointing scheme scales almost perfectly up to more than 260, 000 (2(18)) processes. To recover from a diskless checkpoint during runtime, we realize the recovery algorithms using ULFM MPI. The checkpointing mechanism is fully integrated in a state-of-the-art high-performance multi-physics simulation framework. We demonstrate the efficiency and robustness of the method with a realistic phase-field simulation originating in the material sciences and with a lattice Boltzmann method implementation.