Extreme-Scale Block-Structured Adaptive Mesh Refinement
arXiv:1704.06829 · doi:10.1137/17M1128411
Abstract
In this article, we present a novel approach for block-structured adaptive mesh refinement (AMR) that is suitable for extreme-scale parallelism. All data structures are designed such that the size of the meta data in each distributed processor memory remains bounded independent of the processor number. In all stages of the AMR process, we use only distributed algorithms. No central resources such as a master process or replicated data are employed, so that an unlimited scalability can be achieved. For the dynamic load balancing in particular, we propose to exploit the hierarchical nature of the block-structured domain partitioning by creating a lightweight, temporary copy of the core data structure. This copy acts as a local and fully distributed proxy data structure. It does not contain simulation data, but only provides topological information about the domain partitioning into blocks. Ultimately, this approach enables an inexpensive, local, diffusion-based dynamic load balancing scheme. We demonstrate the excellent performance and the full scalability of our new AMR implementation for two architecturally different petascale supercomputers. Benchmarks on an IBM Blue Gene/Q system with a mesh containing 3.7 trillion unknowns distributed to 458,752 processes confirm the applicability for future extreme-scale parallel machines. The algorithms proposed in this article operate on blocks that result from the domain partitioning. This concept and its realization support the storage of arbitrary data. In consequence, the software framework can be used for different simulation methods, including mesh based and meshless methods. In this article, we demonstrate fluid simulations based on the lattice Boltzmann method.
38 pages, 17 figures, 11 tables
References in corpus (3)
Cited by in corpus (14)
- waLBerla: A block-structured high-performance framework for multiphysics simulations
- The Peano software - parallel, automaton-based, dynamically adaptive grid traversals
- Block structured adaptive mesh refinement and strong form elasticity approach to phase field fracture with applications to delamination, crack branching and crack deflection
- A Systematic Comparison of Dynamic Load Balancing Algorithms for Massively Parallel Rigid Particle Dynamics
- Advanced Automatic Code Generation for Multiple Relaxation-Time Lattice Boltzmann Methods
- waLBerla-wind: a lattice-Boltzmann-based high-performance flow solver for wind energy applications
- GPU-Native Adaptive Mesh Refinement with Application to Lattice Boltzmann Simulations
- GPU-based compressible lattice Boltzmann simulations on non-uniform grids using standard C++ parallelism: From best practices to aerodynamics, aeroacoustics and supersonic flow simulations
- Robust, strong form mechanics on an adaptive structured grid: efficiently solving variable-geometry near-singular problems with diffuse interfaces
- Stable nodal projection method on octree grids
- A Modular and Extensible Software Architecture for Particle Dynamics
- A hybrid adaptive multiresolution approach for the efficient simulation of reactive flows
- Exploring Dynamic Load Balancing Algorithms for Block-Structured Mesh-and-Particle Simulations in AMReX
- GPU-native Embedding of Complex Geometries in Adaptive Octree Grids Applied to the Lattice Boltzmann Method