Adaptive SIMD optimizations in particle-in-cell codes with fine-grain particle sorting
arXiv:1810.03949 · doi:10.1016/j.cpc.2019.05.001
Abstract
Particle-In-Cell (PIC) codes are broadly applied to the kinetic simulation of plasmas, from laser-matter interaction to astrophysics. Their heavy simulation cost can be mitigated by using the Single Instruction Multiple Data (SIMD) capibility, or vectorization, now available on most architectures. This article details and discusses the vectorization strategy developed in the code Smilei which takes advantage from an efficient, systematic, cell-based sorting of the particles. The PIC operators on particles (projection, push, deposition) have been optimized to benefit from large SIMD vectors on both recent and older architectures. The efficiency of these vectorized operations increases with the number of particles per cell (PPC), typically speeding up three-dimensional simulations by a factor 2 with 256 PPC. Although this implementation shows acceleration from as few as 8 PPC, it can be slower than the scalar version in domains containing fewer PPC as usually observed in vectorization attempts. This issue is overcome with an adaptive algorithm which switches locally between scalar (for few PPC) and vectorized operators (otherwise). The newly implemented methods are benchmarked on three different, large-scale simulations considering configurations frequently studied with PIC codes.
References in corpus (13)
- Extremely high-intensity laser interactions with fundamental quantum systems
- Ion acceleration by superintense laser-plasma interaction
- SMILEI: a collaborative, open-source, multi-purpose particle-in-cell code for plasma simulation
- Particle acceleration in relativistic collisionless shocks: Fermi process at last?
- The Maximum Energy of Accelerated Particles in Relativistic Collisionless Shocks
- Particle acceleration and relativistic shocks
- Exploiting multi-scale parallelism for large scale numerical modelling of laser wakefield accelerators
- Structure-preserving second-order integration of relativistic charged particle trajectories in electromagnetic fields
- Perpendicular relativistic shocks in magnetized pair plasma
- Electron Weibel Instability in Relativistic Counter-Streaming Plasmas with Flow-Aligned External Magnetic Fields
- An efficient and portable SIMD algorithm for charge/current deposition in Particle-In-Cell codes
- Fine-sorting One-dimensional Particle-In-Cell Algorithm with Monte-Carlo Collisions on a Graphics Processing Unit
- Co-design of a particle-in-cell plasma simulation code for Intel Xeon Phi: a first look at Knights Landing
Cited by in corpus (5)
- The Magnetohydrodynamic-Particle-In-Cell Module in Athena++: Implementation and Code Tests
- Numerical modeling of laser tunneling ionization in Particle in Cell Codes with a laser envelope model
- Efficient start-to-end 3D envelope modeling for two-stage laser wakefield acceleration experiments
- Efficient cylindrical envelope modeling for laser wakefield acceleration
- Single Domain Multiple Decompositions for Particle-in-Cell simulations