Architecture Multiprocesseurs.

Principe simple => plusieurs processeurs et une mémoire commune
Dans cette architecture, chaque proc. exécute son programme relativement indépendamment des autres.

Selon l'accession aux ressources, on distingue 3 classes :
  • Fortement couplée : mémoire commune accessible par tous.
  • Légerement couplée : des plages mémoires sont reservées pour chaque proc. Un réseau de communication relie tous les proc entre eux.
  • "Closely coupled" : des plages mémoires sont reservées ou non pour chaque proc mais absence de réseau de communication entre les proc.
L'architecture multiprocesseurs illustre surtout la classe "Fortement couplée".

L'hyper cube :

C'est un "cube" de dimension N (N = nb de sommets)
N=1 ; N=2 ; N=4 ; N=8 ; N=16 ...
Chaque noeud ou sommet du cube est un proc. Leur nb est une puissance de deux.

Les proc sont numérotés grâce à des valeurs binaires de telle façon que l'on connait la distance qui les sépare entre eux.
Elle est égale aux nbs de bits de même poids dont la valeur diffère (= distance de Hamming).
Etudions les bits (de la droite vers la gauche) sur cet exemple :

Proc-a 0010 Proc-b 0100
0010 ... 0100 => distance=0
0010 ... 0100 => distance=1
0010 ... 0100 => distance=1
0010 ... 0100 => distance=0
Au total distance=2


L'avantage de cette méthode de numérotation est qu'avec un algorithme de routage on peut se déplacer dans l'hyper cube sans table de routage.

Classification de Flynn