Performance of a Second Order Electrostatic Particle-in-Cell Algorithm on Modern Many-Core Architectures

Abstract In this paper we present the outline of a novel electrostatic, second order Particle-in-Cell (PIC) algorithm, that makes use of 'ghost particles' located around true particle positions in order to represent a charge distribution. We implement our algorithm within EMPIRE-PIC, a PIC code developed at Sandia National Laboratories. We test the performance of our algorithm on a variety of many-core architectures including NVIDIA GPUs, conventional CPUs, and Intel's Knights Landing. Our preliminary results show the viability of second order methods for PIC applications on these architectures when compared to previous generations of many-core hardware. Specifically, we see an order of magnitude improvement in performance for second order methods between the Tesla K20 and Tesla P100 GPU devices, despite only a 4× improvement in the theoretical peak performance between the devices. Although these initial results show a large increase in runtime over first order methods, we hope to be able to show improved scaling behaviour and increased simulation accuracy in the future.

[1]  Farzad Mashayek,et al.  A particle-tracking algorithm for the multidomain staggered-grid spectral method , 2001 .

[2]  Leonid Oliker,et al.  Extreme Scale Plasma Turbulence Simulations on Top Supercomputers Worldwide , 2016, SC16: International Conference for High Performance Computing, Networking, Storage and Analysis.

[3]  Daniel Sunderland,et al.  Kokkos: Enabling manycore performance portability through polymorphic memory access patterns , 2014, J. Parallel Distributed Comput..

[4]  K. Yee Numerical solution of initial boundary value problems involving maxwell's equations in isotropic media , 1966 .

[5]  Michael C. Huang,et al.  Particle-in-cell simulations with charge-conserving current deposition on graphic processing units , 2010, J. Comput. Phys..

[6]  T. D. Pointon Second-order, exact charge conservation for electromagnetic particle-in-cell simulation in complex geometry , 2008, Comput. Phys. Commun..

[7]  Qing Zhang,et al.  The Gyrokinetic Particle Simulation of Fusion Plasmas on Tianhe-2 Supercomputer , 2016, 2016 7th Workshop on Latest Advances in Scalable Algorithms for Large-Scale Systems (ScalA).

[8]  J. Hesthaven,et al.  Nodal high-order methods on unstructured grids , 2002 .

[9]  Tamara G. Kolda,et al.  An overview of the Trilinos project , 2005, TOMS.

[10]  R. G. Evans,et al.  Contemporary particle-in-cell approach to laser-plasma modelling , 2015 .

[11]  Stephen A. Jarvis,et al.  Performance Optimisation of Inertial Confinement Fusion Codes using Mini-applications , 2018, Int. J. High Perform. Comput. Appl..

[12]  Jan S. Hesthaven,et al.  High-order nodal discontinuous Galerkin particle-in-cell method on unstructured grids , 2006, J. Comput. Phys..

[13]  Samuel Williams,et al.  Kinetic turbulence simulations at extreme scale on leadership-class systems , 2013, 2013 SC - International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[14]  Fernando L. Teixeira,et al.  Exact charge-conserving scatter-gather algorithm for particle-in-cell simulations on unstructured grids: A geometric perspective , 2014, Comput. Phys. Commun..

[15]  D. Grote,et al.  The WARP Code: Modeling High Intensity Ion Beams , 2005 .

[16]  Viktor K. Decyk,et al.  Adaptable Particle-in-Cell algorithms for graphical processing units , 2010, Comput. Phys. Commun..

[17]  Samuel Williams,et al.  Modern gyrokinetic particle-in-cell simulation of fusion plasmas on top supercomputers , 2019, Int. J. High Perform. Comput. Appl..