Skip to Main content Skip to Navigation
Journal articles

Efficient Data Layouts for a Three-Dimensional Electrostatic Particle-in-Cell Code

Yann Barsamian 1, 2 Sever Adrian Hirstoaga 3, 4 Eric Violard 1, 2
1 CAMUS - Compilation pour les Architectures MUlti-coeurS
Inria Nancy - Grand Est, ICube - Laboratoire des sciences de l'ingénieur, de l'informatique et de l'imagerie
3 TONUS - TOkamaks and NUmerical Simulations
IRMA - Institut de Recherche Mathématique Avancée, Inria Nancy - Grand Est
Abstract : The Particle-in-Cell (PIC) method is a widely used tool in plasma physics. To accurately solve realistic problems, the method requires to use trillions of particles and therefore, there is a strong demand for high performance code on modern architectures. The present work describes performance results of Pic-Vert, a hybrid OpenMP/MPI and vectorized three-dimensional electrostatic PIC code. The code simulates 3d3v Vlasov-Poisson systems on Cartesian grids with periodic boundary conditions. Overall, it processes 590 million particles/second on a 24-core Intel Skylake architecture, without hyper-threading (25 million particles per second per core). The paper presents extensions in 3d of our preliminary 2d results, with highlights on the difficulties and solutions proposed for these extensions. Specifically, our main contributions consist in proposing a new space-filling curve in 3d (called L6D) to improve the cache reuse and an adapted loop transformation (strip-mining) to achieve efficient vectorization. The analysis of these optimization strategies is performed in two-stages, first on a 24-core socket and second on a super-computer, from 1 to 3,072 cores, demonstrating significant performance gains and very satisfactory weak scaling results of the code.
Complete list of metadata

Cited literature [24 references]  Display  Hide  Download
Contributor : Sever Hirstoaga Connect in order to contact the contributor
Submitted on : Wednesday, May 23, 2018 - 12:51:30 AM
Last modification on : Thursday, December 2, 2021 - 3:17:03 AM
Long-term archiving on: : Friday, August 24, 2018 - 4:40:40 PM


Files produced by the author(s)



Yann Barsamian, Sever Adrian Hirstoaga, Eric Violard. Efficient Data Layouts for a Three-Dimensional Electrostatic Particle-in-Cell Code. Journal of computational science, Elsevier, 2018, 27, pp.345--356. ⟨10.1016/j.jocs.2018.06.004⟩. ⟨hal-01664207⟩



Record views


Files downloads