Journal
COMPUTER PHYSICS COMMUNICATIONS
Volume 278, Issue -, Pages -Publisher
ELSEVIER
DOI: 10.1016/j.cpc.2022.108421
Keywords
Particle-in-cell; Plasma acceleration; GPU computing; Quasi-static approximation
Funding
- Gauss Centre for Super-computing e.V
- Helmholtz Matter and Technologies Accelerator Research and Development Program
- Exascale Computing Project, U.S. Department of Energy's Office of Science [17-SC-20-SC]
- National Nuclear Security Administration
- Office of Science, Office of High Energy Physics, of the U.S. Department of Energy [DE-AC02-05CH11231]
- Office of Science of the U.S. Department of Energy [DE-AC05-00OR22725]
Ask authors/readers for more resources
In this work, the researchers present HiPACE++, a performance-portable, quasi-static, three-dimensional particle-in-cell code for modeling plasma accelerators. By decomposing the computation into 2D transverse operations and utilizing GPUs, HiPACE++ achieves significant speedups over CPU-only implementations. The code supports parallelization across multiple GPUs and is suitable for a wide range of computational devices.
Modeling plasma accelerators is a computationally challenging task and the quasi-static particle-in-cell algorithm is a method of choice in a wide range of situations. In this work, we present the first performance-portable, quasi-static, three-dimensional particle-in-cell code HiPACE++. By decomposing all the computation of a 3D domain in successive 2D transverse operations and choosing appropriate memory management, HiPACE++ demonstrates orders-of-magnitude speedups on modern scientific GPUs over CPU-only implementations. The 2D transverse operations are performed on a single GPU, avoiding time-consuming communications. The longitudinal parallelization is done through temporal domain decomposition, enabling near-optimal strong scaling from 1 to 512 GPUs. HiPACE++ is a modular, open-source code enabling efficient modeling of plasma accelerators from laptops to state-of-the-art supercomputers. Program summary Program Title: HiPACE++ CPC Library link to program files: https://doi .org /10 .17632 /zh3rc7hvrm .1 Developer's repository link: HiPACE++ GitHub repository Licensing provisions: BSD 3-clause Programming language: C++ Nature of problem: Modeling plasma accelerators is a computationally challenging task requiring nanometer-scale resolutions over meter-scale propagation distances. The quasi-static particle-in-cell method enables high-fidelity simulations of this strongly non-linear process, but these simulations can be very expensive. Solution method: The quasi-static particle-in-cell algorithm is modified to enable efficient utilization of accelerated hardware, in particular with GPU computing, reducing the cost of simulations by orders of magnitude. A novel longitudinal parallelization enables excellent strong scaling of this method up to hundreds of GPUs. (C) 2022 The Author(s). Published by Elsevier B.V.
Authors
I am an author on this paper
Click your name to claim this paper and add it to your profile.
Reviews
Recommended
No Data Available