Optimisation de l'utilisation du cache dans EUROPLEXUS
Résumé
in this paper we propose a new data structure organization for EUROPLEXUS: a simulation code developed by the CEA and dedicated to the analysis of fast phenomena of fluids and structures. The approach we propose is built so that the data accessed by the processor operating on a portion of the calculation for a time step are as contiguous as possible. This new distribution will help to minimize the number of cache misses compared to that obtained with the current organization of the data structure. Studies have validated the performance gain achieved with the new organization in the case of large scale problems.
Dans cet article, nous proposons une nouvelle organisation de la structure de données d'EUROPLEXUS,un code de simulation en dynamique rapide des fluides et des structures développé par le CEA. Cette nouvelle organisation est construite de telle sorte que les données consultées par le processeur travaillant sur une partie du calcul pendant un pas de temps Ti soient le plus contigües possible afin qu'elles tiennent dans le cache de ce dernier. Cette nouvelle répartition nous permettra de minimiser le nombre de défauts de cache comparé à celui obtenu avec l'organisation actuelle de la structure de données. Les études de performance ont validé le gain réalisé avec la nouvelle organisation des données dans le cas des problèmes de grande taille.
Origine | Fichiers produits par l'(les) auteur(s) |
---|