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.
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.
*This work is supported by DOE grant DESC0008655.
Presenters
-
Kai Germaschewski
- University of New Hampshire
- Princeton Plasma Phys Lab