Conservatoire national des arts et métiers
Architectures des systèmes informatiques
CHAPITRE 11
Types de communications, topologies de connexion, SIMD, MIMD
Année 2002-2003

Suite N°3...

11.6 PLACE ET INCIDENCE DES CACHES

Les organisations précédentes ne sont déjà pas simples. La présence quasi inévitable de caches complique encore la chose. On présente ci-dessous quelques types de réalisations incluant des caches.

11.6.1 Cache commun

Système parfaitement symétrique. Il contient un cache commun à tous les processeurs. Il était utilisé dans les années 80 pour des systèmes de 2 à 8 processeurs. Il reste d'actualité pour des fabrications spécifiques, par exemple plusieurs processeurs sur une même puce. Il n'autorise pas un grand nombre de processeurs car, même si l'on met en place un mécanisme d'accès simultané du processeur au cache et du cache à la mémoire et que l'on applique la technique du cache non bloquant, ce cache et la mémoire ont des bandes passantes limitées et le débit du cache doit être considérable pour alimenter plusieurs processeurs. Introduire des caches locaux dans chaque processeur apporte les avantages et les inconvénients des schémas suivants.

11.6.2 Cache privé et bus

Système presque symétrique. L'accès à la mémoire est fait via un bus unique. La symétrie est limitée à la mémoire commune. Elle n'existe plus entre deux processeurs dont l'un peut avoir la donnée en cache et l'autre la même donnée encore en mémoire. Il n'y a pas plus de quelques dizaines de processeurs à cause des limitations des bandes passantes du bus et de la mémoire. Les contenus des caches privés doivent être maintenus cohérents.

11.6.3 Cache privé et réseau

Système presque symétrique. Ce schéma, comme le suivant, est moins limité que les précédents en nombre de processeurs car les bandes passantes des réseaux d'interconnexion «crossbar» et des mémoires en bancs séparés sont plus grandes que celle du bus unique et de la mémoire unique. En contrepartie, le temps d'accès à la mémoire est augmenté et un réseau est toujours plus lent qu'un bon bus pour une transaction unique.

11.6.4 La mémoire distribuée.

Système asymétrique. La mémoire demeure commune par le fait que le champ total des adresses est unique. Par exemple : supposons que les processeurs ont une capacité d'adressage sur 32 bits et que les bancs de mémoire ont une taille uniforme de 32 Mo. La mémoire locale du premier sera câblée de 0 à 32M-1, celle du second de 32M à 65M-1, etc. Les observations du paragraphe précédent s'appliquent ici, à l'exception de la distance entre processeurs et mémoire. Cette distance est courte pour la mémoire attachée à un processeur, elle est beaucoup plus grande que dans tous les schémas précédents pour les bancs situés auprès d'autres processeurs.

11.6.5 Petite conclusion sur mise en commun ou distribution

On résume les éléments précédents par une deuxième voie de présentation basée sur partage ou distribution :

La mémoire commune :

L'adressage partagé : La mémoire distribuée: La mémoire distribuée virtuellement partagée: 11.6.6 Aperçu sur les questions de cohérence

Au delà de leurs aspects factuels, les schémas avec plus d'un niveau de mémoire, cache ou mémoire virtuelle, s'analysent tous en termes de cohérence (en anglo-saxon «consistency», rarement «coherency»). Cette cohérence n'a pas de spécification universelle, elle doit être précisée dans chaque cas particulier. On fait ici une première présentation du sujet traité plus loin de façon plus détaillée.

En termes simples la cohérence concerne les données et les instructions.

On trouve dans les deux cas, explicitement ou non, une référence à la cohérence séquentielle. Voici les deux situations les plus fréquemment rencontrées. Autre vision du sujet :

Revenons un instant sur la façon d'opérer dans un monoprocesseur. Toutes choses égales par ailleurs, il y a une correspondance dans les deux raisonnements entre mono et multiprocesseur d'une part et unidimensionnel et multidimensionnel en mathématiques.

CE FICHIER N'A PAS DE QUESTIONNAIRE

Conservatoire national des arts et métiers
Architectures des systèmes informatiques
CHAPITRE 11
Types de communications, topologies de connexion, SIMD, MIMD
Année 2002-2003