Parthenon – a performance portable block-structured adaptive mesh refinement framework

02/24/2022
by   Philipp Grete, et al.
0

On the path to exascale the landscape of computer device architectures and corresponding programming models has become much more diverse. While various low-level performance portable programming models are available, support at the application level lacks behind. To address this issue, we present the performance portable block-structured adaptive mesh refinement (AMR) framework Parthenon, derived from the well-tested and widely used Athena++ astrophysical magnetohydrodynamics code, but generalized to serve as the foundation for a variety of downstream multi-physics codes. Parthenon adopts the Kokkos programming model, and provides various levels of abstractions from multi-dimensional variables, to packages defining and separating components, to launching of parallel compute kernels. Parthenon allocates all data in device memory to reduce data movement, supports the logical packing of variables and mesh blocks to reduce kernel launch overhead, and employs one-sided, asynchronous MPI calls to reduce communication overhead in multi-node simulations. Using a hydrodynamics miniapp, we demonstrate weak and strong scaling on various architectures including AMD and NVIDIA GPUs, Intel and AMD x86 CPUs, as well as Fujitsu A64FX CPUs. At the largest scale, the miniapp reaches a total of 3.5x10^12 zone-cycles/s on 4096 Summit nodes (24576 GPUs) at  55 combination with being an open, collaborative project, this makes Parthenon an ideal framework to target exascale simulations in which the downstream developers can focus on their specific application rather than on the complexity of handling massively-parallel, device-accelerated AMR.

READ FULL TEXT

page 1

page 9

page 10

research
12/05/2020

An Improved Framework of GPU Computing for CFD Applications on Structured Grids using OpenACC

This paper is focused on improving multi-GPU performance of a research C...
research
10/27/2016

A Survey of High Level Frameworks in Block-Structured Adaptive Mesh Refinement Packages

Over the last decade block-structured adaptive mesh refinement (SAMR) ha...
research
09/30/2022

Towards Exascale for Wind Energy Simulations

We examine large-eddy-simulation modeling approaches and computational p...
research
02/17/2023

GPU Offloading in ExaHyPE Through C++ Standard Algorithms

The ISO C++17 standard introduces parallel algorithms, a parallel progra...
research
04/12/2016

BoxLib with Tiling: An AMR Software Framework

In this paper we introduce a block-structured adaptive mesh refinement (...
research
09/25/2020

AMReX: Block-Structured Adaptive Mesh Refinement for Multiphysics Applications

Block-structured adaptive mesh refinement (AMR) provides the basis for t...
research
09/30/2019

waLBerla: A block-structured high-performance framework for multiphysics simulations

Programming current supercomputers efficiently is a challenging task. Mu...

Please sign up or login with your details

Forgot password? Click here to reset