Composante
École Nationale Supérieure d'Électrotechnique d'Électronique d'Informatique d'Hydraulique et des Télécommunications
Objectifs
Notions d'analyse des performances et de la scalabilité des
algorithmes des calcul à haute performance.
Description
Ce cours présente des notions de base pour l'analyse des
performances et de la scalabilité des algorithmes séquentiels et
parallèles pour le calcul à haute performance. Les arguments
traités sont:
- localité des données dans les mémoires cache: fonctionnement des
mémoires cache, "roofline model", "blocking" des algorithmes,
opérations BLAS de niveau 1, 2 et 3, algorithmes de
factorisation de matrices par blocs.
- scalabilité des algorithmes parallèles: surtout dans les
algorithmes parallèles et concept de scalabilité forte et
faible. Lois de Amdahl et Gustafsson
- algorithmes parallèles pour architectures à mémoire partagée:
parallélisme par tâche et analyse du chemin critique
- algorithmes parallèles pour architectures à mémoire distribuée:
modèle de Hockney, communications collectives, modélisation et
analyse d'algorithmes parallèles d'algèbre linéaire numérique
(produit et factorisation de matrices denses et creuses)
- analyse de la consommation de mémoire dans des graphes de
tâches: modèles d'analyse et minimisation de la consommation de
mémoire dans des algorithmes parallèles exprimés sous forme de
graphes de tâches
Pré-requis obligatoires
Programmation, algèbre linéaire, architecture des ordinateurs
