The PSC Code: Particle-in-cell Simulations on GPU-based Supercomputers

POSTER

Abstract

We present the latest version of the Plasma Simulation Code (PSC). PSC has been adapted to use generic programming techniques provided by the C++11 standard. PSC provides flexibility in selecting algorithms for particle-in-cell simulations, e.g., switching between 1st and 2nd order particle shape functions, and options for charge-conservative current deposition. At the same time, PSC supports modern hardware architectures, e.g., Nvidia GPUs and SIMD-based CPUs. Our applications, in particular in the area of HEDLP, also require custom functionality like localized heating and particle injection operations. Generic programming helps in that algorithms can be defined and implemented once, in generic form, and then can be compiled into, e.g., CPU and GPU code as required.

PSC has specifically been ported to Oak Ridge National Lab's Summit supercomputer. We will present performance and scalability data that shows that it can efficiently run on this GPU-heavy supercomputer.

Presenters

  • Kai Germaschewski

    University of New Hampshire, Princeton Plasma Phys Lab

Authors

  • Kai Germaschewski

    University of New Hampshire, Princeton Plasma Phys Lab

  • Will Randolph Fox

    Princeton University, Princeton Plasma Physics Lab, Princeton Plasma Physics Laboratory, Princeton University, Princeton Plasma Phys Lab, Princeton Plasma Phys Lab, Princeton Univ, PPPL

  • Jackson VH Matteucci

    Princeton University, Princeton Plasma Phys Lab, Princeton Univ