A new parallelization scheme for the Hermite interpolation based gyroaverage operator
Résumé
Gyrokinetic modeling is appropriate for describing plasma turbulence in the core of Tokamaks, and the gyroaverage operator is a cornerstone of this approach. In a gyrokinetic code the gyroaveraging scheme needs to be accurate enough, but also requires a low computational cost because it is often applied on the main unknown, namely the 5D guiding-center distribution function, as well as on several 3D fields. The current gyroaverage implementation used in the GYSELA code has recently been improved [6], enhancing the precision of the operator thanks to Hermite interpolation. In the present paper, we describe a new parallelization scheme for the gyroaverage operator. It mainly avoids costly transpositions of the full 5D function using halo exchange instead. Though the computational cost remains the same, the communication one is much smaller. The overall algorithm is also improved by cleverly interleaving communications and computations, thus allowing for a reduction of communication costs and a more efficient thread parallelization. The execution time with this algorithm is up to twice as fast as the previous version. The benefit of an improved scheme providing the overlap of communications by computations is also shown, again improving execution times. The description of the algorithms is given, together with an analysis of the achieved performance.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...