Gyrokinetic simulations are essential for understanding turbulent transport in magnetized plasmas, playing a crucial role in the design and optimization of fusion devices. This presentation introduces Gysela-X++ [1] , a C++ rewrite of the original GYSELA [2] Fortran code, designed to extend its physical capabilities and enhance its portability on exascale architectures. It is built on the Kokkos performance portability framework, ensuring efficient execution both on CPU and GPU (AMD and NVIDIA) architectures. As part of this rewrite, we developed Gyselalib++ [3, 4], an open-source library containing all the necessary computational kernels. Gyselalib++ provides mathematical building blocks to construct kinetic or gyrokinetic plasma simulation codes in C++, simulating a distribution function discretized in phase space on a structured grid. Gyselalib++ is not only useful for the fusion community but also addresses a broader audience, as it has been specifically designed to serve as a testbed for the development and benchmarking of new numerical schemes, enabling rapid prototyping and validation of innovative algorithms. We will discuss the motivations behind this rewrite, the design of this general modular framework based on the core library Gyselalib++, and the performance and scalability gains.
[1] https://
Repository¶
https://
- Bourne, E., Grandgirard, V., Asahi, Y., Bigot, J., Donnel, P., Hoffmann, A., Kara, A., Krah, P., Legouix, B., Malaboeuf, E., Munschy, Y., Obrejan, K., Padioleau, T., Protais, M., & Vidal, P. (2025). Gyselalib++: A Portable C++ Library for Semi-Lagrangian Kinetic and Gyrokinetic Simulations. Journal of Open Source Software, 10(113), 8582. 10.21105/joss.08582