Search papers, labs, and topics across Lattice.
This paper details the GPU acceleration and portability enhancements made to the TRIMEG-C1 code, which simulates electromagnetic instabilities in tokamak plasmas using a particle-in-cell approach. By employing the OpenMP framework for GPU offloading across NVIDIA and AMD architectures, the authors achieved a significant speedup of approximately 9 times for the particle pusher kernel on AMD MI300A APUs compared to traditional CPU execution. The implementation's accuracy was validated through simulations of the Ion Temperature Gradient (ITG) mode, confirming the fidelity of the physics results against established benchmarks.
Achieving a 9x speedup in gyrokinetic simulations could revolutionize the efficiency of plasma physics research.
The Triangular mesh-based gyrokinetic code TRIMEG-C1 solves the gyrokinetic equations using the particle-in-cell scheme to simulate electromagnetic instabilities in tokamak plasmas. TRIMEG-C1 utilizes a high-order C1 finite element method, which captures the accurate physics with lower grid resolution than the C0 method. In this work, we focus on achieving a portable implementation on multiple graphics processing unit (GPU) architectures to accelerate the TRIMEG-C1 code for future physics studies. The OpenMP framework is chosen as the acceleration framework for GPU offloading on different hardware platforms, specifically, NVIDIA and AMD GPUs. The particle pushing procedure, as well as particle-to-grid operations have been adapted for GPU execution. A speedup of $\approx9$ for the particle pusher kernel is achieved on 2 AMD MI300A APUs (Accelerated Processing Unit) compared with 2 AMD 9754 CPUs. In addition, the efficiency of hybrid MPI-OpenMP offloading parallelization was assessed by oversubscribing GPU resources. The Ion Temperature Gradient (ITG) mode was simulated using the GPU implementation, and its correctness was verified by comparing the physics results in terms of the energy growth rate and the two-dimensional mode structures.