Optimization of the Gyroaverage operator based on Hermite interpolation
1 Maison de la Simulation, USR 3441,
CEA / CNRS / Inria / Univ. Paris-Sud / Univ. Versailles, 91191
2 IRMA, Université de Strasbourg, France
3 CEA, IRFM, F-13108 Saint-Paul-lez-Durance
4 Inria, Bordeaux INP, CNRS, FR-33405 Talence
Gyrokinetic modeling is appropriate for describing Tokamak plasma turbulence, and the gyroaverage operator is a cornerstone of this approach. In a gyrokinetic code, the gyroaveraging scheme needs to be accurate enough to avoid spoiling the data but also requires a low computation cost because it is applied often on the main unknown, the 5D guiding-center distribution function, and on the 3D electric potentials. In the present paper, we improve a gyroaverage scheme based on Hermite interpolation used in the Gysela code. This initial implementation represents a too large fraction of the total execution time. The gyroaverage operator has been reformulated and is now expressed as a matrix-vector product and a cache-friendly algorithm has been setup. Different techniques have been investigated to quicken the computations by more than a factor two. Description of the algorithms is given, together with an analysis of the achieved performance.
© EDP Sciences, SMAI 2016
This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.