Télécharger la présentation
Publié parIgnace Rigaud Modifié depuis plus de 10 années
1
L’adaptativité pour un solveur de l’équation de Vlasov
Hoenen Olivier LSIIT – ICPS – Projet INRIA CalVi
2
Plan Équation de Vlasov Algorithme adaptatif
Contexte scientifique Schéma de résolution Algorithme adaptatif Transformations Optimisations Étude de la parallélisation Distribution Équilibrage de charge
3
Contexte scientifique
Physique des plasmas et faisceaux de particules Fusion thermonucléaire contrôlée (projet ITER) Espace des phases (6D + t) Équation de Vlasov Équation aux dérivées partielles (EDP) Pas de solution analytique méthode de résolution numérique
4
Schéma de résolution Méthode semi-Lagrangienne
Propriété : « les valeurs de la fonction de distribution sont constantes le long des caractéristiques » Basée sur un maillage de l’espace des phases Couplée avec un solveur de champ électrique Interpolation par éléments finis bi-quadratiques A-1
5
Algorithme adaptatif Basé sur un maillage dyadique
Décomposition en base 2 de l’espace des phases Prédiction du maillage À partir du maillage au pas de temps précédent La fonction de distribution est calculée aux nœuds du maillage, la prédiction vise à mailler finement dans les zones à fort gradient, et grossièrement pour celles à faible gradient Compression du maillage Pour éliminer les cellules trop finement prédites
6
Prédiction du maillage
cellule cible de même taille que cellule source on raffine cellule source plus fine que cellule cible STOP cellule cible plus fine que cellule source on raffine A-1 A-1 A-1
7
Compression du maillage
8
Transformations algorithmiques
Prédiction et compression sont récursives Consistance du maillage gérée implicitement Parcours hiérarchique et local des éléments Mais performances réduites Dé-récursivation Objectif : conserver les bonnes propriétés du parcours récursif mais avec des performances d’algorithme itératif Utilisation classique d’un pile pour retrouver le contexte de la récursivité, ou plus simplement d’un tableau : de 4 éléments par niveau pour la prédiction d’un compteur de cellule et d’un booléen par niveau pour la compression
9
Structure de données Tableaux à 2 niveaux
Coût réduit pour des accès aléatoire à des éléments Modularité du niveau grossier pour s’adapter à la simulation Le creux des niveaux fins est virtuel adaptivité perfectible en terme d’allocation mémoire (dépend du niveau grossier choisi) Optimisation de la fonction de recherche Stockage du niveau de la cellule couvrante présente dans le maillage pour chaque cellule fine Recherche de la cellule du maillage contenant un point donné avec une complexité minimum
10
Étude de la parallélisation
Caractéristiques du solveur adaptatif Parallélisme de données, communications très nombreuses, non prédictibles et de petite taille La charge du calcul dépend linéairement du nombre d’interpolations, donc du nombre de nœuds (≈ cellules) Objectif : obtenir un solveur scalable Partionnement dynamique du maillage Équilibrage de charge Minimisation des communications Problème NP-complet
11
Distribution des données
Subdivision en régions Union de cellules Partition du domaine Bijection région processeur Un processeur possède localement sa propre vision du maillage Chaque cellule est estampillée par un numéro de processeur Redéfinition dynamique des régions pour maintenir leurs bonnes propriétés
12
Propriétés des régions
Équilibrage : même charge de calcul sur chaque processeur Minimisation des temps de synchronisation Utilisation équitable de la mémoire Forme : connexe et compacte Réduction du volume des communications Amélioration de la localité des données
13
Courbe de Hilbert Courbe de remplissage de surface (SFC)
Ramène le problème nD à un problème simple 1D Propriétés de la courbe de Hilbert : Calculée en base 2 correspond bien au maillage dyadique Construction récursive sur un maillage creux Extensible en dimension Conserve la localité
14
Équilibrage de charge Calcul de la charge idéale
Charge totale / nombre de processeurs Calcul du nombre d’éléments à « migrer » Somme des différences entre charge idéale et charge locale des processeurs suivants (resp. précédents) Mise à jour des régions par chaque processeur Échange de cellules avec les voisins dans la courbe Choix implicite des éléments à migrer (extrémités de courbe)
15
Mise à jour des régions
16
Poursuite des travaux Validation expérimentale 2D/4D
Efficacité de l’adaptatif par rapport à l’uniforme Architectures à mémoire partagée Étude de la parallélisation de la méthode sur des machines de type cc-NUMA Modèle de programmation OpenMP Parallélisation hybride…
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.