AMReX and pyAMReX: Looking Beyond ECP
arXiv:2403.12179 · doi:10.1177/10943420241271017
Abstract
AMReX is a software framework for the development of block-structured mesh applications with adaptive mesh refinement (AMR). AMReX was initially developed and supported by the AMReX Co-Design Center as part of the U.S. DOE Exascale Computing Project, and is continuing to grow post-ECP. In addition to adding new functionality and performance improvements to the core AMReX framework, we have also developed a Python binding, pyAMReX, that provides a bridge between AMReX-based application codes and the data science ecosystem. pyAMReX provides zero-copy application GPU data access for AI/ML, in situ analysis and application coupling, and enables rapid, massively parallel prototyping. In this paper we review the overall functionality of AMReX and pyAMReX, focusing on new developments, new functionality, and optimizations of key operations. We also summarize capabilities of ECP projects that used AMReX and provide an overview of new, non-ECP applications.
12 pages, 1 figure, published in the International Journal of High Performance Computing Applications
References in corpus (10)
- Array Programming with NumPy
- CASTRO: A New Compressible Astrophysical Solver. I. Hydrodynamics and Self-Gravity
- Nyx: A Massively Parallel AMR Code for Computational Cosmology
- A Survey of High Level Frameworks in Block-Structured Adaptive Mesh Refinement Packages
- Warp-X: a new exascale computing platform for beam-plasma simulations
- AMReX: Block-Structured Adaptive Mesh Refinement for Multiphysics Applications
- Alpaka - An Abstraction Library for Parallel Kernel Acceleration
- HiPACE++: a portable, 3D quasi-static Particle-in-Cell code
- Synthesizing Particle-in-Cell Simulations Through Learning and GPU Computing for Hybrid Particle Accelerator Beamlines
- Next Generation Computational Tools for the Modeling and Design of Particle Accelerators at Exascale