Multiple instructions on multiple data
Apparence
Multiple Instructions multiple data ou MIMD désigne les machines multi-processeurs où chaque processeur éxecute 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. La synchronisation dépend 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:
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