Introduction au calcul parallèle avec la
bibliothèque MPI (Message Passing Interface)
Abstract
Ce cours est issu de la formation faite par l'IDRIS (http : //www.idris.f r).
Un code de calcul ou programme peut être écrit suivant deux modèles de
programmation : séquentiel ou parallèle.
Dans le modèle séquentiel, un programme est exécuté par un unique proces-
sus. Ce processus tourne sur un processeur d'une machine et a accès à la
mémoire du processeur.
Il arrive que pour certains codes de calcul, la mémoire d'un seul processeur
ne suffise plus (manipulation de gros tableaux) et/ou le temps de calcul soit
trop important...
Pour palier à ces problèmes, on peut avoir recours à différentes méthodes
comme le raffinement de maillage adaptatif, le grid-meshing ou la program-
mation parallèle.
On s'intéresse ici plus particulièrement à la programmation parallèle. Celle-ci
permet de répartir les charges de calcul sur plusieurs processus. Il existe deux
types de programmation parallèle : le MP I (Message Passing Interface) et
le openMP (Multithreading). On se limitera au MP I.
Un code de calcul ou programme peut être écrit suivant deux modèles de
programmation : séquentiel ou parallèle.
Dans le modèle séquentiel, un programme est exécuté par un unique proces-
sus. Ce processus tourne sur un processeur d'une machine et a accès à la
mémoire du processeur.
Il arrive que pour certains codes de calcul, la mémoire d'un seul processeur
ne suffise plus (manipulation de gros tableaux) et/ou le temps de calcul soit
trop important...
Pour palier à ces problèmes, on peut avoir recours à différentes méthodes
comme le raffinement de maillage adaptatif, le grid-meshing ou la program-
mation parallèle.
On s'intéresse ici plus particulièrement à la programmation parallèle. Celle-ci
permet de répartir les charges de calcul sur plusieurs processus. Il existe deux
types de programmation parallèle : le MP I (Message Passing Interface) et
le openMP (Multithreading). On se limitera au MP I.