DOE PAGES title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Acceleration of the particle-in-cell code Osiris with graphics processing units

Journal Article · · Journal of Plasma Physics

Fully relativistic particle-in-cell (PIC) simulations are crucial for advancing our knowledge of plasma physics. Modern supercomputers based on graphics processing units (GPUs) offer the potential to perform PIC simulations of unprecedented scale, but require robust and feature-rich codes that can fully leverage their computational resources. In this work, this demand is addressed by adding GPU acceleration to the PIC code Osiris. An overview of the algorithm, which features a CUDA extension to the underlying Fortran architecture, is given. Detailed performance benchmarks for thermal plasmas are presented, which demonstrate excellent weak scaling on NERSC's Perlmutter supercomputer and high levels of absolute performance. The robustness of the code to model a variety of physical systems is demonstrated via simulations of Weibel filamentation and laser-wakefield acceleration run with dynamic load balancing. Finally, measurements and analysis of energy consumption are provided that indicate that the GPU algorithm is up to ~14 times faster and ~7 times more energy efficient than the optimized CPU algorithm on a node-to-node basis. The described development addresses the PIC simulation community's computational demands both by contributing a robust and performant GPU-accelerated PIC code and by providing insight into efficient use of GPU hardware.

Research Organization:
University of California, San Diego, CA (United States); University of Rochester, NY (United States)
Sponsoring Organization:
European Research Council; Fundação para a Ciência e Tecnologia; US National Science Foundation (NSF); USDOE National Nuclear Security Administration (NNSA); USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR)
Grant/Contract Number:
AC02-05CH11231; NA0003842; NA0004131; NA0004144; NA0004147
OSTI ID:
2496787
Journal Information:
Journal of Plasma Physics, Journal Name: Journal of Plasma Physics Journal Issue: 1 Vol. 91; ISSN 0022-3778
Publisher:
Cambridge University PressCopyright Statement
Country of Publication:
United States
Language:
English

References (47)

Weighted Particles in Coulomb Collision Simulations Based on the Theory of a Cumulative Scattering Angle journal September 1998
OSIRIS: A Three-Dimensional, Fully Relativistic Particle in Cell Code for Modeling Plasma Based Accelerators book January 2002
Optimize Memory Usage in Vector Particle-In-Cell (VPIC) to Break the 10 Trillion Particle Barrier in Plasma Simulations book January 2021
A Bucket Sort Algorithm for the Particle-In-Cell Method on Manycore Architectures book January 2016
Performance-Portable Many-Core Plasma Simulations: Porting PIConGPU to OpenPower and Beyond book October 2016
PIC methods in astrophysics: simulations of relativistic jets and kinetic physics in astrophysical systems journal July 2021
A binary collision model for plasma simulation with a particle code journal November 1977
Adaptable Particle-in-Cell algorithms for graphical processing units journal March 2011
Fine-sorting one-dimensional particle-in-cell algorithm with Monte-Carlo collisions on a graphics processing unit journal October 2011
Particle-in-Cell algorithms for emerging computer architectures journal March 2014
Particle merging algorithm for PIC codes journal June 2015
A portable platform for accelerated PIC codes and its application to GPUs using OpenACC journal October 2016
Controlling the numerical Cerenkov instability in PIC simulations using a customized finite difference Maxwell solver and a local FFT based current correction journal May 2017
Smilei : A collaborative, open-source, multi-purpose particle-in-cell code for plasma simulation journal January 2018
A new field solver for modeling of relativistic particle-laser interactions using the particle-in-cell algorithm journal January 2021
Dynamic load balancing with enhanced shared-memory parallelism for particle-in-cell codes journal February 2021
HiPACE++: A portable, 3D quasi-static particle-in-cell code journal September 2022
RaDiO: An efficient spatiotemporal radiation diagnostic for particle-in-cell codes journal April 2023
Particle-in-cell simulations with charge-conserving current deposition on graphic processing units journal February 2011
An efficient mixed-precision, hybrid CPU–GPU implementation of a nonlinearly implicit one-dimensional particle-in-cell algorithm journal June 2012
Implementation of a hybrid particle code with a PIC description in r–z and a gridless description in ϕ into OSIRIS journal January 2015
On numerical errors to the fields surrounding a relativistically moving particle in PIC codes journal July 2020
Accurately simulating nine-dimensional phase space of relativistic particles in strong fields journal August 2021
Particle-in-cell plasma simulation on heterogeneous cluster systems journal November 2012
Fast parallel Particle-To-Grid interpolation for plasma PIC simulations on the GPU journal October 2008
Graphics processing unit (GPU) programming strategies and trends in GPU computing journal January 2013
Porting WarpX to GPU-accelerated platforms journal December 2021
Modeling of Ionization Physics with the PIC Code OSIRIS conference January 2002
Three-dimensional Weibel instability in astrophysical scenarios journal May 2003
Towards robust algorithms for current deposition and dynamic load-balancing in a GPU particle in cell code
  • Rossi, Francesco; Londrillo, Pasquale; Sgattoni, Andrea
  • ADVANCED ACCELERATOR CONCEPTS: 15th Advanced Accelerator Concepts Workshop, AIP Conference Proceedings https://doi.org/10.1063/1.4773692
conference January 2013
Modeling of a chain of three plasma accelerator stages with the WarpX electromagnetic PIC code on GPUs journal February 2021
Extended particle absorber for efficient modeling of intense laser–solid interactions journal November 2021
Interpenetrating Plasma Shells: Near-Equipartition Magnetic Field Generation and Nonthermal Particle Acceleration journal September 2003
Plasma modelling and numerical simulation journal September 2009
Exploiting multi-scale parallelism for large scale numerical modelling of laser wakefield accelerators journal November 2013
Contemporary particle-in-cell approach to laser-plasma modelling journal September 2015
Numerical heating in particle-in-cell simulations with Monte Carlo binary collisions journal January 2021
Spontaneously Growing Transverse Waves in a Plasma Due to an Anisotropic Velocity Distribution journal February 1959
On the energy efficiency of graphics processing units for scientific computing conference May 2009
Efficient GPU Implementation for Particle in Cell Algorithm
  • Joseph, Rejith George; Ravunnikutty, Girish; Ranka, Sanjay
  • Distributed Processing Symposium (IPDPS), 2011 IEEE International Parallel & Distributed Processing Symposium https://doi.org/10.1109/IPDPS.2011.46
conference May 2011
GPU Computing journal May 2008
Skeleton Particle-in-Cell Codes on Emerging Computer Architectures journal March 2015
Pushing the Frontier in the Design of Laser-Based Electron Accelerators with Groundbreaking Mesh-Refined Particle-In-Cell Simulations on Exascale-Class Supercomputers conference November 2022
VPIC 2.0: Next Generation Particle-in-Cell Simulations journal January 2021
PIConGPU: A Fully Relativistic Particle-in-Cell Code for a GPU Cluster journal October 2010
Power Analysis of NERSC Production Workloads
  • Zhao, Zhengji; Rrapaj, Ermal; Bhalachandra, Sridutt
  • Proceedings of the SC '23 Workshops of The International Conference on High Performance Computing, Network, Storage, and Analysis https://doi.org/10.1145/3624062.3624200
conference November 2023
Computer Simulation Using Particles book January 1988