* Ces horaires sont donnés à titre indicatif.
Modélisation des architectures distribuées, évaluation des performances d’un code sur une architecture donnée.
Introduction aux bibliothèques d'échanges de messages (MPI) , à la programmation par directives de compilation (OpenMP), et au calcul sur GPGPU (opencl). Introduction à la bibliothèques scientifique Petsc
Méthodes de calcul hautes performances adaptées aux modèles de programmation : pipeline, sous-structuration, décomposition de domaine (Schur, Feti, Schwarz), décompositions d'opérateurs, décomposition dans un espace de fonctions,DFT distribuées, méthodes de Krylov parallèles. Méthodes de couplages de codes et/ou d’EDPs.
Démarches de validations et de vérifications de code.
Logicielsd’appui:
MPI, openMP, Opencl, C/C++, Petsc.
Comprendre et mobiliser un large champ de sciences et techniques
Identifier et analyser un besoin client
Proposer une solution adaptée, dans le domaine des Mathématiques Appliquées, en prenant en compte les contraintes environnementales
Interagir avec son environnement de façon professionnelle et citoyenne
Acquérir les réflexes: de conceptualisation de la programmation distribuée, d’écriture d’un nouveau module aux normes d’un code donné, de Validation et de vérification decode.
Compétences pour déterminer les parties d'un code qui sont parallélisables en maitrisant les outils d'évaluation de performances que sont l'efficacité et l'accélération. Il est en capacité de proposer un choix de parallélisation (en mémoire partagée, distribuée, ou sur GPU) adapté à l'algorithme devant être mis en oeuvre et par rapport aux ressources de calcul disponible. Il maitrise la programmation parallèle en utilisant les bibliothèques standard du calcul haute performances que sont MPI, openMP, openCL, et Petsc. Il est en mesure de modifier un algorithme numérique pour y introduire des techniques numériques de parallélisation comme la décomposition de domaine, le pipelinage des calcul, la décomposition dans des espaces fonctionnels (FFT, méthodes spectrales). Il maitrise la technique MPI pour le couplage de codes de calcul.
Il sait rédiger un rapport de performances en
Type | Libellé | Nature | Coef. |
---|