An efficient mixed-precision, hybrid CPU-GPU implementation of a fully implicit particle-in-cell algorithm
arXiv:1111.5295 · doi:10.1016/j.jcp.2012.04.040
Abstract
Recently, a fully implicit, energy- and charge-conserving particle-in-cell method has been proposed for multi-scale, full-f kinetic simulations [G. Chen, et al., J. Comput. Phys. 230,18 (2011)]. The method employs a Jacobian-free Newton-Krylov (JFNK) solver, capable of using very large timesteps without loss of numerical stability or accuracy. A fundamental feature of the method is the segregation of particle-orbit computations from the field solver, while remaining fully self-consistent. This paper describes a very efficient, mixed-precision hybrid CPU-GPU implementation of the implicit PIC algorithm exploiting this feature. The JFNK solver is kept on the CPU in double precision (DP), while the implicit, charge-conserving, and adaptive particle mover is implemented on a GPU (graphics processing unit) using CUDA in single-precision (SP). Performance-oriented optimizations are introduced with the aid of the roofline model. The implicit particle mover algorithm is shown to achieve up to 400 GOp/s on a Nvidia GeForce GTX580. This corresponds to 25% absolute GPU efficiency against the peak theoretical performance, and is about 300 times faster than an equivalent serial CPU (Intel Xeon X5460) execution. For the test case chosen, the mixed-precision hybrid CPU-GPU solver is shown to over-perform the DP CPU-only serial version by a factor of \sim 100, without apparent loss of robustness or accuracy in a challenging long-timescale ion acoustic wave simulation.
25 pages, 6 figures, submitted to J. Comput. Phys
References in corpus (1)
Cited by in corpus (13)
- Exactly Energy Conserving Semi-Implicit Particle in Cell Formulation
- A multi-dimensional, energy- and charge-conserving, nonlinearly implicit, electromagnetic Vlasov-Darwin particle-in-cell algorithm
- An energy- and charge-conserving, nonlinearly implicit, electromagnetic 1D-3V Vlasov-Darwin particle-in-cell algorithm
- Fluid preconditioning for Newton-Krylov-based, fully implicit, electrostatic particle-in-cell simulations
- Reproducibility, accuracy and performance of the Feltor code and library on parallel computer architectures
- An energy-conserving and asymptotic-preserving charged-particle orbit implicit time integrator for arbitrary electromagnetic fields
- Enabling particle applications for exascale computing platforms
- Analysis of a cusped helicon plasma thruster discharge
- A multilevel Monte Carlo method for a class of McKean-Vlasov processes
- Mixed-precision for Linear Solvers in Global Geophysical Flows
- Implicit temporal discretization and exact energy conservation for particle methods applied to the Poisson-Boltzmann equation
- Energy Efficiency trends in HPC: what high-energy and astrophysicists need to know
- Asymptotic-preserving Particle-In-Cell methods for the Vlasov-Maxwell system near quasi-neutrality