4.7 Article

HiPACE plus plus : A portable, 3D quasi-static particle-in-cell code

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

  1. Gauss Centre for Super-computing e.V
  2. Helmholtz Matter and Technologies Accelerator Research and Development Program
  3. Exascale Computing Project, U.S. Department of Energy's Office of Science [17-SC-20-SC]
  4. National Nuclear Security Administration
  5. Office of Science, Office of High Energy Physics, of the U.S. Department of Energy [DE-AC02-05CH11231]
  6. 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

Primary Rating

4.7
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available