ScholarGate
Assistant

Programmation parallèle par passage de messages

La programmation parallèle par passage de messages coordonne les processus sur des machines à mémoire distribuée par une communication explicite, constituant le modèle dominant pour le calcul haute performance à grande échelle.

Trouver un sujet avec PaperMindBientôtFind papers & topics
Tools & resources
Télécharger les diapositives
Learn & explore
VidéoBientôt

Definition

Dans la programmation parallèle par passage de messages, chaque processus dispose de sa propre mémoire privée et les processus coopèrent uniquement en envoyant et en recevant des messages ; l'interface de passage de messages (MPI) est la bibliothèque standard qui fournit des primitives de communication point à point et collectives pour ce modèle.

Scope

Ce sujet couvre le paradigme du passage de messages pour les ordinateurs parallèles à mémoire distribuée : les opérations d'envoi/réception point à point et leurs variantes bloquantes et non bloquantes, les opérations collectives (diffusion, dispersion/collecte, réduction, tout-à-tout), les groupes de processus et les communicateurs, ainsi que la norme de facto MPI. Il aborde également les modèles de coût structurés tels que le modèle Bulk Synchronous Parallel (BSP) qui guident la conception d'algorithmes et le raisonnement sur les performances.

Core questions

  • Comment les calculs sont-ils partitionnés entre des processus à mémoire distribuée qui ne partagent aucun espace d'adressage ?
  • Quand les opérations collectives devraient-elles remplacer la communication point à point explicite ?
  • Comment le coût de communication d'un algorithme parallèle peut-il être modélisé et minimisé ?

Key theories

Communication point à point et collective
MPI structure le calcul parallèle autour de messages explicites entre processus et de motifs collectifs optimisés — diffusions, réductions et collectes — dont les implémentations efficaces sont essentielles aux programmes à mémoire distribuée évolutifs.
Modèle Bulk Synchronous Parallel
Le modèle BSP structure le calcul en super-étapes de calcul local, de communication et de synchronisation par barrière, offrant un modèle de coût clair qui fait le lien entre la conception d'algorithmes et le matériel de passage de messages.
Conception d'algorithmes sensibles à la communication
Étant donné que la communication domine souvent le coût sur les machines à mémoire distribuée, les algorithmes parallèles sont conçus et analysés pour minimiser le volume et la latence des messages, équilibrant le calcul et la communication.

Clinical relevance

MPI est la pierre angulaire de la simulation scientifique sur supercalculateurs — modélisation climatique, dynamique des fluides numérique, dynamique moléculaire — et de tout calcul qui doit s'adapter à travers les nombreux nœuds à mémoire distribuée d'un cluster.

History

Le modèle BSP de Valiant en 1990 a fourni une abstraction de pont pour le calcul parallèle ; le Forum MPI a standardisé le passage de messages en 1994, et les versions successives de MPI ainsi que les ouvrages de référence de Gropp, Snir, Dongarra et leurs collègues en ont fait la lingua franca du calcul haute performance.

Key figures

  • William Gropp
  • Jack Dongarra
  • Marc Snir
  • Leslie Valiant

Related topics

Seminal works

  • gropp2014
  • valiant1990
  • snir1998

Frequently asked questions

Pourquoi le passage de messages est-il préféré pour les très grandes machines parallèles ?
Les grands ordinateurs parallèles sont physiquement à mémoire distribuée : il n'y a pas de mémoire partagée unique à mettre à l'échelle. Le passage de messages correspond directement à ce matériel et force le programmeur à gérer explicitement la localité des données, ce qui permet une mise à l'échelle à des milliers ou des millions de cœurs.

Methods for this concept

Related concepts