Aller au contenu

Multiple instructions on multiple data

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 19 février 2009 à 17:54 et modifiée en dernier par Louperibot (discuter | contributions) (robot Modifie: de:Flynnsche Klassifikation#MIMD (Multiple Instruction, Multiple Data)). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

Multiple Instructions multiple data ou MIMD désigne les machines multi-processeurs où chaque processeur exécute son code de manière asynchrone et indépendante. Pour assurer la cohérence des données, il est souvent nécessaire de synchroniser les processeurs entre eux, les techniques de synchronisation dépendent de l'organisation de la mémoire.

On distingue pour cela 2 types d'architectures :

MIMD à mémoire partagée

Les processeurs accèdent à une mémoire commune : la synchronisation peut se faire au moyen de:

  • sémaphores
  • verrous, ou Mutex (exclusion mutuelle)
  • barrières de synchronisation

MIMD à mémoire distribuée

Chaque processeur dispose de sa propre mémoire. Cette architecture nécessite un réseau d'interconnexion pour la synchronisation. On citera pour l'échange d'informations entre les processeurs :

  • appel de procédure distante RPC
  • envoi / réception de messages synchrone, ou asynchrone