Parallélisme et calcul à haut rendement
Informations
-40% pour les académiques(*)
-50% pour les doctorants(*)
(*) dans la limite des places ouvertes à ces tarifs
- Développeur de codes de calcul scientifique intéressé par la performance
- Responsable d'infrastructure de calcul
Programme détaillé
Architectures des calculateurs HPC
- Cœurs CPU et unités de calcul
- Processeurs multi-coeurs
- Hiérarchie de cache
- Nœuds SMP
- Clusters de SMP
Performance des calculs séquentiels
- FLOPS : combien de cycles pour
+
,-
,*
- Mur de la mémoire (roofline model)
- Combien de cycles pour
/
,sqrt
,sin
,exp
… - RAM, bande passante, accès aléatoires
- Tests et spéculation de branchement
- FLOPS : combien de cycles pour
Notions de bases du parallélisme
- Loi d’Amdahl, scalabilité forte et faible
- Dead locks, race conditions
- Ordre des opérations et associativité des calculs flottants
Paradigmes de programmation parallèle
- Vectorisation (SIMD)
- Parallélisme en mémoire partagée
- Threads, OpenMP, TBB, tâches
- Parallélisme en mémoire distribuée
- MPI, runtime parallèles
- Calcul sur GPU
Profiling et debugging parallèle
Description
L’efficacité énergétique est le critère dominant qui guide la conception des ordinateurs depuis 20 ans. En stoppant brutalement l’augmentation de la fréquence horloge des ordinateurs, la contrainte énergétique a conduit les constructeurs à produire des machines dont la puissance résulte de l’assemblage d’un nombre toujours croissant d’unités de calculs. L’accélération des calculs informatiques repose alors principalement sur la division du travail en un nombre toujours plus élevé de tâches élémentaires s’exécutant en parallèle. En raison de cette contrainte énergétique, les architectures de calculs parallèles sont aussi de plus en plus spécialisées (CPU, GPU TPU, DSP, FPGA) et leur programmation s’appuie sur des paradigmes et des langages adaptés.
Téléphone portable, laptop, desktop ou super-ordinateur : le parallélisme est omniprésent. La maîtrise de la programmation des machines parallèles n’est donc plus réservée aux laboratoires, mais fait partie du bagage nécessaire à tous les développeurs soucieux de la performance de leurs logiciels.
Cette formation vise à exposer les grands enjeux de la programmation et des machines parallèles et à guider les développeurs vers les outils les mieux adaptés à leurs besoins. En sus, la formation leur proposera une méthodologie pour concevoir des logiciels à haut rendement énergétique. Ces connaissances seront aussi utiles aux responsables de parcs informatiques pour établir leur stratégie d’équipement.
La formation inclut une large part de travaux pratiques. Dans le cadre de cette formation sous forme de cours interactifs à distance, un environnement numérique distant dédié est mis à disposition de chaque stagiaire.
Formulaire de pré-inscription
Quelque chose n'a pas marché. Merci de réessayer ultérieurement, ou de nous contacter par e-mail : contacttriscale-innov.com
Vous devriez recevoir un e-mail de confirmation dans quelques instants. Merci pour votre confiance !