Particle-in-Cell Algorithms for Plasma Simulations on Heterogeneous Architectures

Within the fusion community, a large number of codes are in use to simulate various aspects of the plasma behaviour. Many codes have been written by physicists with a big emphasis on the physics without using the latest technologies available in computer science. For improving this situation, a project with acronym EUFORIA was created. The main target of this project is to increase the performance of key existing codes, either parallelizing the sequential codes or improving their parallelization. However, in general these codes were not thought for new supercomputers based on muticore architectures and only take advantage of the task level parallelism, basically using Message Passing Interface (MPI). In this paper we discuss several possible ways to apply hybrid parallelization techniques in fusion codes for exploiting new multiprocessor supercomputers under development.

[1]  Frank Jenko,et al.  The global version of the gyrokinetic turbulence code GENE , 2011, J. Comput. Phys..

[2]  J. Dawson Particle simulation of plasmas , 1983 .

[3]  J. C. Whitson,et al.  Steepest‐descent moment method for three‐dimensional magnetohydrodynamic equilibria , 1983 .

[4]  D NortonCharles,et al.  Object-oriented parallel computation for plasma simulation , 1995 .

[5]  R. Budny,et al.  A description of the full-particle-orbit-following SPIRAL code for simulating fast-ion experiments in tokamaks , 2013 .

[6]  Alejandro Soba,et al.  Improvements of the particle-in-cell code EUTERPE for petascaling machines , 2011, Comput. Phys. Commun..

[7]  Susan L. Graham,et al.  Gprof: A call graph execution profiler , 1982, SIGPLAN '82.

[8]  C. D. Beidler,et al.  Physics and Engineering Studies for Wendelstein 7-X , 1991 .

[9]  E. J. Seiler,et al.  A Parallel Particle-in-Cell Model for the Massively Parallel Processor , 1990, J. Parallel Distributed Comput..

[10]  S. Ethier,et al.  Gyrokinetic particle-in-cell simulations of plasma microturbulence on advanced computing platforms , 2005 .

[11]  R. Hatzky,et al.  Energy conservation in a nonlinear gyrokinetic particle-in-cell code for ion-temperature-gradient-driven modes in θ-pinch geometry , 2002 .

[12]  Viktor K. Decyk,et al.  Skeleton PIC Codes for Parallel Computers , 1995 .

[13]  Laurent Villard,et al.  A global collisionless PIC code in magnetic coordinates , 2007, Comput. Phys. Commun..

[14]  Benjamin Bergen,et al.  0.374 Pflop/s trillion-particle kinetic modeling of laser plasma interaction on roadrunner , 2008, 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis.

[15]  Frank Jenko,et al.  Electron temperature gradient driven turbulence , 1999 .

[16]  R W Hockney,et al.  Computer Simulation Using Particles , 1966 .

[17]  Viktor Przebinda,et al.  Some Improvements in PIC performance through sorting , caching , and dynamic load balancing , 2005 .

[18]  Peter Messmer Par-T: A Parallel Relativistic Fully 3D Electromagnetic Particle-in-Cell Code , 2000, PARA.

[19]  Rainald Löhner,et al.  Deflated preconditioned conjugate gradient solvers for the Pressure-Poisson equation , 2008, J. Comput. Phys..

[20]  Geoffrey Fox,et al.  Particle-in-Cell Simulation Codes in High Performance Fortran , 1996, Proceedings of the 1996 ACM/IEEE Conference on Supercomputing.

[21]  F. Castejón,et al.  Linear and Nonlinear Simulations Using the EUTERPE Gyrokinetic Code , 2010, IEEE Transactions on Plasma Science.

[22]  T. S. Hahm,et al.  Nonlinear gyrokinetic equations for tokamak microturbulence , 1988 .

[23]  Roman Hatzky,et al.  Gyrokinetic global electrostatic ion-temperature-gradient modes in finite β equilibria of Wendelstein 7-X , 2005 .

[24]  José María Cela,et al.  Exploring a Novel Gathering Method for Finite Element Codes on the Cell/B.E. Architecture , 2010, 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis.

[25]  W. A. Cooper,et al.  First global linear gyrokinetic simulations in 3D magnetic configurations , 1999 .

[26]  Rudy Lauwereins,et al.  Design, Automation, and Test in Europe , 2008 .

[27]  Mateo Valero,et al.  Supercomputing with commodity CPUs: Are mobile SoCs ready for HPC? , 2013, 2013 SC - International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[28]  L. Dagum,et al.  OpenMP: an industry standard API for shared-memory programming , 1998 .

[29]  Toshiki Tajima,et al.  Computational Plasma Physics: With Applications To Fusion And Astrophysics , 2019 .

[30]  Jack J. Dongarra,et al.  The LINPACK Benchmark: past, present and future , 2003, Concurr. Comput. Pract. Exp..

[31]  W. Dorland,et al.  Discrete Particle Noise in Particle-in-Cell Simulations of Plasma Microturbulence , 2005 .

[32]  G. C. Fox,et al.  A universal concurrent algorithm for plasma particle-in-cell simulation codes , 1989, C3P.

[33]  T. Hahm,et al.  Turbulent Transport Reduction by Zonal Flows: Massively Parallel Simulations , 1998 .

[34]  R. Kleiber,et al.  Global linear gyrokinetic simulations for stellarator and axisymmetric equilibria. Invited paper , 2006 .

[35]  Per Stenström,et al.  Microprocessors in the Era of Terascale Integration , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[36]  Markus Hegland,et al.  Block jacobi preconditioning of the conjugate gradient method on a vector processor , 1992 .

[37]  Laurent Villard,et al.  Gyrokinetic global three-dimensional simulations of linear ion-temperature-gradient modes in Wendelstein 7-X , 2004 .

[38]  Samuel Williams,et al.  Scientific Computing Kernels on the Cell Processor , 2007, International Journal of Parallel Programming.

[39]  David Tskhakaya,et al.  Optimization of PIC codes by improved memory management , 2007, J. Comput. Phys..

[40]  C. Birdsall,et al.  Plasma Physics via Computer Simulation , 2018 .

[41]  Arrow,et al.  The Physics of Fluids , 1958, Nature.

[42]  Toni Cortes,et al.  PARAVER: A Tool to Visualize and Analyze Parallel Code , 2007 .

[43]  H. Peter Hofstee,et al.  Power efficient processor architecture and the cell processor , 2005, 11th International Symposium on High-Performance Computer Architecture.

[44]  Timo Kiviniemi,et al.  Gyrokinetic Simulation of Particle and Heat Transport in the Presence of Wide Orbits and Strong Profile Variations in the Edge Plasma , 2006 .

[45]  Roman Hatzky,et al.  Domain cloning for a particle-in-cell (PIC) code on a cluster of symmetric-multiprocessor (SMP) computers , 2006, Parallel Comput..

[46]  W. A. Cooper,et al.  Global linear gyrokinetic simulations in quasi-symmetric configurations , 2001 .

[47]  L. C. Woods Physics of plasmas , 2003 .

[48]  Laurent Villard,et al.  Nonlinear low noise particle-in-cell simulations of electron temperature gradient driven turbulence , 2007 .

[49]  Kathy P. Wheeler,et al.  Reviews of Modern Physics , 2013 .

[50]  Jörg Büchner,et al.  Space Plasma Simulation , 2003 .

[51]  I Langmuir,et al.  Oscillations in Ionized Gases. , 1928, Proceedings of the National Academy of Sciences of the United States of America.

[52]  Beniamino Di Martino,et al.  Parallel PIC plasma simulation through particle decomposition techniques , 2001, Parallel Comput..

[53]  Murali Annavaram,et al.  Mitigating Amdahl's Law through EPI Throttling , 2005, ISCA 2005.