Accueil - Connexion

Architectures paralleles

2I2AC3 Architectures paralleles Informatique S8
Cours : 9 h TD : 0 h TP : 15 h Projet : 0 h Total : 24 h
Responsable : Emmanuel Cagniot
Pré-requis
Notions d'architectures, de système et de langage C ou C++.
Objectifs de l'enseignement
Introduction aux architectures parallèles et à leurs modèles de programmation.
Programme détaillé
Le CM aborde essentiellement les aspects matériels de l'informatique parallèle à savoir la classification des architectures via les modèles d'exécution et la structure de la mémoire. Les TP ont pour thème la programmation des machines à mémoire partagée au travers du standard OpenMP.
Applications (TD ou TP)
- TP 1 (4h) : Initiation aux mécanismes de base du standard OpenMP (régions parallèles, statut des données et mécanismes de synchronisation) en langage C.

- TP 2 (4h) : Parallélisation des boucles de type forall, maximisation des régions parallèles, vectorisation, algorithme de type "brute force'" (langage C).

- TP 3 (4h) : Parallélisation d'algorithmes récursifs via le mécanisme des sections parallèles et celui des tâches (langage C).

- TP 4 (3h) : Portage d'un algorithme de tri pour mémoire distribuée sur mémoire partagée (langage C++, template programming).
Compétences acquises
Choisir la meilleure architecture parallèle pour un type d'application donné. Trouver le bon compromis entre performance d'une application parallèle et portabilité/maintenabilité de cette dernière.

Bloc compétence : Développer et déployer une solution logicielle
-> Niveau 3 : Maîtriser les technologies logicielles majeures.
-> Niveau 2 : Adapter une modélisation en fonction de contraintes (physiques, systèmes, temps, complexité et coût).
Bibliographie
Algorithmes et architectures parallèles, Michel Cosnard, Denis Trystram, InterEditions, Paris, 1993

© 2021 - ENSICAEN ( Mentions Légales - Crédits )