Issue |
ESAIM: ProcS
Volume 77, 2024
CEMRACS 2022 - Transport in physics, biology and urban traffic
|
|
---|---|---|
Page(s) | 176 - 194 | |
DOI | https://doi.org/10.1051/proc/202477176 | |
Published online | 18 November 2024 |
Highly parallel drift-kinetic semi-Lagrangian simulations in Python
1
CEA, IRFM, Saint-Paul-les-Durance, F-13108, France
2
EPFL, CH-1015 Lausanne, Switzerland
3
Max-Planck Institut für Plasmaphysik, Garching, Germany
* e-mail: emily.bourne@epfl.ch
** e-mail: yaman.guclu@ipp.mpg.de
This paper describes PyGyro, a parallel 4D drift-kinetic code which implements backward semi-Lagrangian methods combined with field-aligned interpolation and time-splitting. The purpose of PyGyro is twofold: to develop an advanced parallelisation scheme based on fast data transpositions, and to demonstrate the efficacy of a development workflow with code written in Python. Bottlenecks are accelerated with the Pyccel transpiler to achieve Fortran-like execution times. The resulting simulations are shown to correctly reproduce the expected physics and demonstrate good strong scaling, well beyond what was achieved by an existing Fortran code.
Résumé
Cet article décrit PyGyro, un code drift kinetic 4D parallèle qui implémente des méthodes semi-Lagrangiennes rétrogrades, combinées avec une interpolation alignée sur le champ magnétique et un schéma de splitting temporel. L’objectif de PyGyro est double : premièrement développer un schéma de parallélisation avancé basé sur des transpositions de données rapides, et deuxièmement, démontrer l’efficacité d’un workflow de développement avec du code écrit en Python. Les bottlenecks sont accélérés avec le transpileur Pyccel pour atteindre des temps d’exécution proches de ceux en Fortran. Les simulations qui en résultent, reproduisent correctement la physique attendue et démontrent une bonne scalabilité, bien au-delà de ce qui a été atteint par un code Fortran existant.
© EDP Sciences, SMAI 2024
This is an Open Access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Current usage metrics show cumulative count of Article Views (full-text article views including HTML views, PDF and ePub downloads, according to the available data) and Abstracts Views on Vision4Press platform.
Data correspond to usage on the plateform after 2015. The current usage metrics is available 48-96 hours after online publication and is updated daily on week days.
Initial download of the metrics may take a while.