Symmetric multiprocessing

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir SMP.

Le Symmetric multiprocessing (SMP) est une architecture informatique qui consiste à multiplier les processeurs au sein d'un ordinateur, de manière à augmenter la puissance de calcul.

L'augmentation du nombre de processeurs permet d'exécuter simultanément un plus grand nombre de processus du système, utilisateur ou noyau en leur allouant l'un ou l'autre des processeurs disponibles.

[modifier] Les différents types d'organisation

Parmi les architectures symétriques, il existe plusieurs types d'organisation :

  • SMP, les processeurs partagent le bus d'accès à la mémoire vive. Le processeur d'Intel, le Xeon, utilise cette technique. Le SMP a été mis en pratique pour la première sur le mainframe Burroughs B5500 en 1961.
  • cc-NUMA (pour cache coherent non-uniform memory access), chaque processeur dispose de sa propre mémoire vive. Et tous les ensembles processeur + mémoire sont reliés par un système de communication. Typiquement, si un processeur « A » doit aller chercher une donnée dans la mémoire d'un processeur « B », il utilise le moyen de communication, ce qui est plus lent que d'aller la chercher dans sa mémoire d'où le terme « accès non-uniforme ». Le processeur d'AMD, l'Opteron, utilise cette technique pour pouvoir augmenter la fréquence d'accès en mémoire vive.
  • ncc-NUMA (pour non cache coherent non-uniform memory access), c'est le même genre que le système précédent, sauf que les caches ne sont pas cohérents entre eux. C'est un modèle d'ordinateur très complexe à programmer. Certains supercalculateurs d'IBM, de SGI et Cray disposent de cette fonction.

[modifier] Voir aussi