Master Mathématiques-Informatique - Spécialité Systèmes et Logiciels

Algorithmique et techniques de base du calcul parallele

Le cours présente les méthodes permettant la construction de programmes parallèles performants sur des architectures distribuées: machine multicores ou multiprocesseur SMP, grappe ou cluster de multiprocesseurs, grille formée de l'interconnexion de plusieurs grappes. Une partie importante du cours concerne l'algorithmique parallèle dont l'objectif est d'extraire le parallélisme maximal d'un problème tout en conservant un nombre d'opérations total proche des meilleurs algorithmes séquentiels. Une fois ce parallélisme dégagé, les algorithmes d'ordonnancement permettant de répartir l'exécution sur les ressources sont présentés; basiquement, les ressources sont supposées identiques, mais le cours aborde aussi l'ordonnacement sur des ressources hétérogènes et en nombre dynamiquement variable. Le cours illustre la mise en oeuvre de tels algorithmes sur des interfaces de programmation standard (threads Posix et bibliothèques de communication).

En complément au cours, les étudiants étudient, au choix, soit l'analyse et la programmation parallèle d'une application de leur choix, soit un article de recherche (au choix dans une liste d'articles proposés) auquel est associé une question. Les étudiants doivent rédiger un rapport de 4 pages : soit descriptif de l'analyse, soit une réponse à la question). Ce travail est présenté par l'étudiant dans un exposé de 15' avec 5' de questions.

Evaluation du cours: exposé (coef 1/3) et examen écrit (coef 2/3).



Liste des étudiants

Questions sur les articles : Clicker ici !

Planning 2007-2008

Le cours a lieu le vendredi  en salle F321  - 13h30 - 16h45
aux dates suivantes (avec des slots de remplacement possible):

Cours 1 : Introduction à la programmation parallèle

Transparents du cours (pdf)
Compléments:

Cours 2 : Algorithmes parallèles - SMP / Sans prise en compte des communications

Transparents du cours (pdf) 1. Algorithmes en cascade 2. Grain adaptatif
Compléments:

Cours 3 : Algorithmes parallèles - Fin cascade et Prise en compte des communications (1)

Cours 4 : Ordonnancement par liste et clustering

(Denis Trystram)

Cours 5 : Mise en oeuvre d'algorithmes parallèles

(Jean-Francois Mehaut)

Cours 6 : Applications interactives et importance des communications globales

Bruno Raffin

Cours 7 : Complexité parallèle - Problèmes P-complet

(Denis Trystram et Jean-Louis Roch)

Cours 8 : Exposé d'articles ou de programmes

A compléter ...


Autres références utiles pour le cours :

Archives - Années antérieures