3 : Vue d ensemble du système
E-S distribuée partagée
Comme la mémoire distribuée partagée, les dispositifs E-S sont distribués parmi les n uds de
calcul (chaque n ud de calcul possède deux ports E-S) et sont accessibles par tous les n uds de
calcul grâce à la matrice d interconnexion NUMAlink.
Architecture ccNUMA
Comme le suggère son nom, l architecture cache-coherent non-uniform memory access
(ccNUMA) a deux parties : cache coherence (cohérence du cache) et nonuniform memory
access (accès non uniforme à la mémoire) qui seront décrites dans les sections suivantes.
Cohérence du cache
Le serveur de la série Altix 3700 Bx2 utilise des caches pour réduire la latence de la mémoire.
Même si les données existent dans la mémoire locale ou à distance, les copies des données
peuvent exister dans divers caches du processeur à l échelle du système. La cohérence de cache
conserve les copies de cache de façon ordonnée.
Afin de garder les copies cohérentes, l architecture ccNUMA utilise des protocoles de
cohérence basés sur un répertoire. Dans un protocole de cohérence basé sur un répertoire,
chaque bloc de mémoire (128 octets) a une entrée dans un tableau qui relève d un répertoire.
Comme les blocs de mémoire qu ils représentent, les répertoires sont distribués parmi les n uds
de calcul. Un bloc de mémoire peut également se reporter à une ligne de cache.
Chaque entrée de répertoire indique l état du bloc de mémoire qu elle représente. Par exemple,
lorsque le bloc n est pas caché, il est sans propriétaire. Lorsque seulement un processeur
possède une copie du bloc de mémoire, il est dans un état exclusif. Et lorsque plusieurs
processeurs ont une copie du bloc, il est dans un état partagé, un vecteur de bits indique quels
caches possèdent une copie.
Lorsqu un processeur modifie un bloc de données, les processeurs qui ont le même bloc de
données dans leur cache doivent être avertis de la modification. Le serveur de la série
Altix 3700 Bx2 utilise une méthode d invalidation de cache afin de maintenir la cohérence du
cache. Cette méthode d invalidation purge toutes les copies non modifiées du bloc de données et
le processeur qui veut modifier le bloc reçoit la propriété exclusive du bloc.
52
007-4377-002