L’étudiant apprendra les concepts du calcul parallèle et/ou distribué. Il sera initié aux architectures parallèles distribuées, aux paradigmes, environnements et outils de programmation parallèle distribuée. L’étudiant apprendra à concevoir et implémenter des applications de calcul parallèles et/ou distribuées (avec MPI et OpenMP). Il découvrira également les outils nécessaires pour le déploiement et l’exécution de ces applications et l’évaluation de leurs performances sur des machines parallèles/distribuées à petite et à grande échelle (réseaux de stations de travail et grilles de calcul).
Recommandations Un TP avec C++/MPI doit être programmé
Maîtrise de la programmation en langage C.
Chapitre 1 : Ordinateurs et calcul parallèle Introduction au parallélisme
Modèle de machine parallèle Modèle de programmation parallèle
Chapitre 2 : Conception d’algorithmes parallèles Partitionnement
Communication Agglomération Mappage
Cas d’études
Chapitre 1 : Introduction au langage C parallèle Chapitre 2 : MPI (Message Passing Interface)
Modèle de programmation MPI MPI : notions de base Opérations globales
Communication synchrone et asynchrone Cas d’études.
Mode d’évaluation : 60% examen et 40% travail personnel