Niveau d'étude
BAC +5
Composante
UFR Sciences et Techniques
Description
Ce cours présente les différentes architectures dans le domaine du calcul intensif (HPC) calculateurs à mémoire partagée, à mémoire distribuée, accélérateurs de type GPU, …) ainsi que les méthodes et outils pour utiliser au mieux ces différentes architectures. Cet enseignement abordera les notions de puissance de calcul, de profilage et d’optimisation des performances de calcul, de calculs massivement parallèles et de portage sur GPU. Un focus sera fait sur la consommation énergétique de ce type d’infrastructures.
Objectifs
L'objectif est de fournir aux étudiants une culture de base en calcul intensif (HPC), qui les rende capables d’utiliser ce type d’infrastructure et d’améliorer leurs algorithmes pour les adapter à l’utilisation de telles infrastructures. Un second objectif est de sensibiliser les étudiants à l’impact énergétique et environnemental sur l’utilisation de ces infrastructures.
Pré-requis obligatoires
Des compétences en algorithmique et en programmation ainsi que la connaissance du langage de programmation Python sont requises pour cet enseignement. Des notions de base en langage C et en lignes de commandes bash (lister des fichiers, exécuter une commande, …) sont recommandées.
Contrôle des connaissances
Contrôle continu
Compétences visées
- Utiliser des ressources HPC
- Identifier et résoudre les problèmes de performance
- Paralléliser des algorithmes calculatoires
- Porter des algorithmes sur GPU