> Tech > Une nouvelle fusion des bus

Une nouvelle fusion des bus

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

En 1996, Corollary, spécialiste des produits de multiprocessing, a créé Profusion, l'architecture SMP à  huit voies basée sur Intel. (Intel a racheté Corollary en 1997). Profusion utilise un commutateur maillé dit « cross-bar » pour interconnecter tous les sous-systèmes et leur permet d'accéder, indépendamment les uns des autres, à  la

Une nouvelle fusion des bus

mémoire partagée à  grande vitesse. Les aficionados de la conception des réseaux
reconnaîtront là  la même technique que celle utilisée par le maillages de commutation
des commutateurs d’interconnexion réseau à  grande vitesse.

La figure 3 illustre l’architecture Profusion. Le coeur de cette architecture est
le commutateur cross-bar à  cinq ports, baptisé par Intel Chipset Profusion. Celui-ci
crée un système SMP à  huit voies en reliant un bus processeur connecté à  quatre
processeurs, un second bus processeur connecté à  quatre processeurs, un bus système
d’E/S et deux blocs de mémoire. Le jeu de puces Profusion utilise aussi deux filtres
de cohérence de cache pour maintenir la cohérence des données. Plongeons à  présent
dans l’architecture Profusion.

Bus systèmes, processeurs et ponts. Outre les deux
bus processeurs, l’architecture Profusion comporte un bus dédié pour les E/S,
qui améliore les performances et la fiabilité du système. Il peut communiquer
directement avec la mémoire tout en limitant au minimum la consommation de CPU
et les interruptions de processeurs.

De plus, il peut isoler les processeurs des sous-systèmes d’E/S ayant un mauvais
comportement afin de réduire les défaillances du système.

Les trois bus de Profusion peuvent tourner à  100 MHz ou 133 MHz et transporter
cinq charges. Chacun d’eux transporte une charge pour chacun des quatre processeurs
et une pour le chipset Profusion. Le bus d’E/S transporte une charge pour chacun
des quatre ponts PCI et une pour le chipset Profusion.

Deux types de processeurs peuvent fonctionner avec le chipset Profusion
: les Pentium II Xeon à  400 MHz et 450 MHz et les Pentium III Xeon

Deux types de processeurs peuvent fonctionner avec le chipset Profusion :
les processeurs Pentium II Xeon 400 MHz et 450 MHz et les processeurs Pentium
III Xeon plus rapides avec jusqu’à  2 Mo de cache L2. La plupart des constructeurs
de serveurs haut de gamme utiliseront probablement les processeurs Pentium III
Xeon pour tirer pleinement partie des gains de performances que peut supporter
l’architecture Profusion. Certains, comme Compaq, ont intégré des bus systèmes
64 bits et des bus PCI 66 MHz 64 bits sous des ponts PCI dans leurs serveurs à 
8 voies, en vue de supporter la nouvelle spécification PCI 2.1. Les ponts PCI
de ces constructeurs supportent également la technologie hotplug, qui permet d’installer
et de remplacer des périphériques PCI sans arrêter le système. Chaque pont PCI
peut connecter jusqu’à  quatre périphériques PCI.

Mémoire. L’architecture Profusion comporte deux blocs
de mémoire. Ceux-ci partagent le même espace d’adresses mais sont entrelacés par
lignes de cache, ce qui signifie que l’un d’eux contient les lignes de cache numéros
pairs (c’est-à -dire avec les adresses 0, 2, 4 etc.) et l’autre les lignes de cache
numéros impairs (c’est-à -dire avec les adresses 1, 3, 5 etc.). Les blocs utilisent
une méthode d’accès à  la mémoire uniforme, ce qui permet un accès égal aux deux
blocs. En s’appuyant sur la probabilité de l’accès aléatoire, la moitié du total
des accès ira vers le bloc avec les adresses paires et l’autre moitié vers le
bloc avec les numéros impairs. Ainsi l’accès à  la mémoire se fait deux fois plus
vite avec deux blocs.

Chacun des blocs mémoire de Profusion contient jusqu’à  16 Mo de mémoire – généralement
SDRAM. Un serveur Profusion peut donc offrir 32 Go de mémoire. Windows 2000 Datacenter
Server (Datacenter) qui supportera jusqu’à  64 Go d’accès à  la mémoire, peut tirer
pleinement profit de cette évolutivité.

Cependant, la mise en oeuvre, de tel ou tel constructeur, de l’architecture Profusion
peut ne supporter que 32 Go de mémoire.
Par exemple, actuellement, on ne peut porter les serveurs à  8 voies Compaq, ProLiant
8000 et ProLiant 8500, qu’à  8 Go de mémoire. Il faut vérifier soigneusement l’implémentation
du constructeur avant d’acheter un serveur à  8 voies.

Filtre de cohérence de cache. Les serveurs SMP Intel partagent
les données entre les processeurs et les sous-systèmes d’E/S. Il est possible
que les copies des données qui partagent une adresse mémoire identique et se produisent
dans les caches et la mémoire du processeur ne soient pas cohérentes. Une telle
incohérence provoque des erreurs de fonctionnement du système.
Un système SMP bien conçu maintient une vue cohérente de la mémoire, ou cohérence
des données. Si un ou plusieurs processeurs mettent en mémoire cache des copies
des données avec la même adresse de mémoire, le système doit les synchroniser
avec les données correspondantes en mémoire. Les processeurs Intel utilisent un
protocole de surveillance pour la cohérence des données.
Autrement dit, lorsqu’un bus processeur traitera une transaction en mémoire, il
demandera à  ses autres processeurs et aux processeurs se trouvant sur les bus
processeurs distants s’ils mettent en cache les données ayant la même adresse
mémoire. Si c’est le cas pour un ou plusieurs processeurs, le système synchronisera
les copies mises en cache avec les données en mémoire RAM en utilisant les données
les plus récentes.
Toutefois la surveillance consomme des cycles CPU et de la bande passante de bus
supplémentaires et augmente le trafic entre les bus processeurs.

L’architecture Profusion utilise deux filtres de cohérence de cache pour réduire
la surveillance sur le bus processeur distant. Le filtre de cohérence du cache
à  gauche sur la figure 3 stocke les adresses des données résidant dans les caches
L2 des processeurs sur le bus processeur de gauche. Le filtre de cohérence de
cache à  droite conserve les adresses des données résidant sur les caches L2 des
processeurs se trouvant sur le bus processeurs de droite.
Lors d’une transaction en mémoire, le bus processeur local commence par contrôler
le filtre de cohérence de cache distant, au lieu de surveiller le bus processeurs
distant pour déterminer s’il faut maintenir la cohérence des données. Le bus processeur
local ne surveillera l’autre bus processeur que lorsqu’il constatera que le filtre
de cohérence de cache distant contient la même adresse de données dans la transaction
en mémoire. Sinon, la surveillance reste sur le bus local. Certains constructeurs
appellent les filtres de cohérence de cache accélérateurs
de cache en raison de l’amélioration des performances qu’ils permettent.

Le chipset Profusion à  commutateur crossbar doté de cinq ports, est le
composant central de l’architecture Profusion

Le chipset Profusion. Le chipset Profusion à  commutateur
crossbar doté de cinq ports, est le composant central de l’architecture Profusion.
Les cinq ports du chipset sont interconnectés, comme le montre la figure 3. Ils
comprennent deux interfaces de bus processeur, deux interfaces mémoire et une
interface de bus d’E/S. Les cinq ports sont tous bidirectionnels ; ils sont mis
en oeuvre par 10 ports unidirectionnels dans une RAM statique (SRAM) 64 bits. Il
existe dix chemins directs bidirectionnels entre les bus processeurs, les blocs
mémoire et le bus des E/S. Moyennant quoi, les opérations de lecture et d’écriture
peuvent avoir lieu simultanément entre les bus processeurs, la mémoire et le bus
des E/S. Cette communication simultanée par connexion directe entre noeuds peut
considérablement réduire le temps d’attente des accès. Théoriquement, un bus 100
MHz (vitesse minimale d’un bus système dans un serveur Profusion) peut donner
un débit de pointe de 800 MBps. Grâce à  lui, le commutateur crossbar Profusion
peut atteindre un débit de pointe de 4 GBps (800 Mo x 5 ports).

Le chipset Profusion consiste en deux partitions ASIC (Application-Specific Integrated
Circuit) physiques : un contrôleur d’accès à  la mémoire (MAC pour Memory Access
Controller) et un buffer d’interface des données (DIB pour Data Interface Buffer),
comme le montre la figure 4. Le MAC transfère les informations d’adresses et de
contrôle entre les bus processeurs, le bus d’E/S et la mémoire, et gère les deux
filtres de cohérence de cache. Le DIB transfère et met en mémoire tampon les données
entre les bus processeurs, le bus des E/S et la mémoire.

Voici un exemple simple pour illustrer les fonctions MAC et DIB. Supposons qu’un
processeur doive extraire les données contenues dans l’adresse mémoire 100. Le
bus processeur local de ce processeur envoie les informations de l’adresse 100
et du contrôle de mémoire de lecture du processeur au MAC. Le bus système local
utilise le MAC pour vérifier, en contrôlant le filtre de cohérence de cache du
bus processeur distant, si un cache de processeur se trouvant sur le bus processeur
distant contient une copie des données de l’adresse 100. Si aucun processeur sur
le bus processeur distant n’a les données en cache, le MAC envoie les informations
d’adresse et de contrôle de lecture au bloc de mémoire pairs.
Si un processeur sur le bus processeur distant a en cache les données, le bus
processeur local surveillera le bus processeur distant pour s’assurer que le système
synchronise les copies des données résidant dans la mémoire et dans le cache.
Puis la mémoire renvoie les données au DIB, qui vérifie si le bus processeur local
est occupé à  traiter d’autres requêtes. Si c’est le cas, le DIB conserve les données
dans son buffer et les envoie au bus local lorsque celui-ci se libère.

Grâce à  l’architecture Profusion, combinée à  Windows 2000, les applications
sous Windows NT atteindront de nouveaux sommets

Téléchargez cette ressource

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Villes, intercommunalités, métropoles, départements et régions sont particulièrement exposés aux risques de cybersécurité. Ce livre blanc Stormshield présente les défis cyber que rencontrent les collectivités, les solutions et perspectives pour qu’elles puissent assurer leur mission d’utilité publique, en toute sécurité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010