Passer au contenu

Numa, les serveurs puissance quatre

Fondée sur l’utilisation de processeurs Intel, l’architecture Numa permet d’en relier jusqu’à 64. Elle alloue de la mémoire à chacun d’eux pour qu’ils puissent accéder rapidement aux données.

Toujours plus importante, la puissance des processeurs est bridée par les goulets d’étranglement que représentent les accès mémoire et leur gestion. Pour profiter pleinement de la puissance de traitement des puces, les fabricants ont développé des architectures multiprocesseurs.La plus répandue est, sans conteste, mise en ?”uvre dans les serveurs SMP (serveurs multiprocesseurs symétriques). Toutefois, au-delà de 16 processeurs, la bande passante de la mémoire est trop restreinte pour assurer des performances cohérentes.Les constructeurs se sont donc orientés vers une architecture plus prometteuse, baptisée Non Uniform Memory Access (Numa), censée reprendre le meilleur de l’architecture parallèle MPP (Massive Parallel Processing) et de SMP.Dans ce type d’architecture, chaque processeur possède sa propre mémoire, mais peut aussi accéder à celle des autres processeurs. L’architecture est dite non uniforme, parce que les temps d’accès mémoire sont, logiquement, plus rapides quand un processeur accède à sa propre mémoire qu’à celle d’un autre.

Le bus SCI localise l’adresse où se trouve l’information à traiter

Le principe de cette architecture est simple : interconnecter plusieurs modules quadriprocesseurs SHV (Standard High Volume) Intel et les faire collaborer pour créer un serveur multiprocesseurs puissant (jusqu’à 64 processeurs dans un même serveur).Chaque module SHV dispose de ses processeurs (Xeon), de sa mémoire vive et de ses contrôleurs d’entrée et de sortie. L’interconnexion de ces modules est assurée par le bus haut débit SCI (Scalable Coherent Interface), contrôlé par un jeu de composants Intel. Ce bus assure une liaison ente chaque noeud de 1 Go/s.
Les données à traiter sont rapatriées dans la mémoire de niveau 2 allouée à chaque processeur, et qui fonctionne à la même fréquence que ce dernier. Chaque module dispose en outre d’une mémoire globale partagée, chargée de préserver la cohérence de la mémoire intramodule.Lorsqu’un processeur veut accéder à une information qui se trouve en dehors de son module, il envoie une requête en direction du bloc mémoire concerné. Cette information transite sur le bus d’interconnexion. Plusieurs modules peuvent donc utiliser les mêmes données.Le bus SCI doit garantir la cohérence des informations entre les blocs processeurs. Cette opération est, en fait, le véritable défi que doivent relever les concepteurs de l’architecture Numa, dont l’objectif est de localiser au maximum l’information à traiter. Ainsi, quand l’information recherchée n’est pas dans la mémoire locale ou dans la mémoire de niveau 2, le bus SCI lance la requête et la transmet en utilisant le protocole de snooping (processus de protection pour la synchronisation des données), qui localisera l’adresse exacte où se trouve l’information à traiter.

Le cache local évite la dégradation de performances

Mais, plus on a recours au snooping, plus les performances se dégradent. Pour pallier cette dégradation, certains constructeurs n’hésitent pas à placer, en plus, un système de répertoire de cache global. Ils y établissent des correspondances entre les adresses de la mémoire cache et celles de la mémoire locale.Avec cette technique, seuls les messages nécessaires à la cohérence sont diffusés sur le bus. Toujours pour augmenter les performances, les constructeurs se sont aussi attachés à adapter leurs systèmes d’exploitation et à modifier le gestionnaire de mémoire virtuelle. Ils placent la page le plus près possible du processeur qui y accédera.Des mécanismes de déplacement de pages sont mis en place pour pouvoir rediriger celles qui sont mal positionnées. Enfin, l’ordonnanceur est amélioré. Ce dernier place les threads qui composent un processus dans le même module quadriprocesseur. Si un processus léger revient régulièrement, il sera attribué au processeur qui l’a précédemment traité.Toutes ces spécificités font que les serveurs Numa offrent une plus grande souplesse pour faire face à la croissance du nombre de processeurs. Le développement est restreint aux modules d’interconnexion et aux modifications du système d’exploitation.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Xavier Bouchet