Le consortium Gen-Z, qui regroupe les plus grands acteurs de l’IT, travaille à la mise au point d’un standard ouvert d’interconnexion pour l’accès aux données. Présentation.
Processeur, stockage, mémoire, réseau… Chacun évolue au fil des années. Chacun contribue à faire fonctionner un écosystème commun. Mais aucun ne parle le même langage. Entre les composants matériels, une couche logicielle se charge de faire l’intermédiaire. Elle traduit les commandes de la mémoire en commandes réseaux et stockage, et inversement. Tous les échanges de données au sein d’un système informatique consomment donc du temps et de la ressource simplement pour que chacun se comprenne. La hausse continue des performances des CPU ont masqué cette difficulté pendant de longues années. Mais aujourd’hui, tous les composants se trouvent limités par cette barrière. Il est temps d’adopter une nouvelle sémantique.
Un langage simple et universel
Cette sémantique, c’est celle de la mémoire. Le bus mémoire est conçu pour amener la donnée jusqu’au processeur le plus rapidement et efficacement possible. La recette ? Une interface à très faible latence qui exploite un langage extrêmement simple, composé de deux instructions, « load », qui transfère la donnée de la mémoire vers le registre CPU, et « store », qui effectue le chemin inverse. Le modèle a prouvé son efficacité et offre au CPU un accès très fin à la mémoire, pouvant descendre jusqu’à l’octet. Alors que des nouvelles technologies de stockage à mémoire persistante sont en train de se développer, étendre cette capacité d’accès à l’ensemble du système est la clé pour créer une nouvelle rupture dans les performances applicatives. Imaginez un système dont tous les composants parlent le même langage à travers des voies de communication simplifiées, se libérant des inconvénients des bus traditionnels. C’est le Gen-Z.
Une infrastructure 100 % composable
En octobre 2016, 12 leaders technologiques, parmi lesquels AMD, ARM, Dell, HPE, Huawei ou encore Samsung, ont décidé d’unir leurs efforts au sein d’un consortium baptisé Gen-Z. Leur objectif était le suivant : créer un protocole d’interconnexion ouvert, qui permettrait au processeur d’accéder à la donnée d’une manière identique à la mémoire quel que soit le support ou la topologie réseau.
À gauche, une interface CPU/Mémoire classique.
À droite, une interface Gen-Z. Source : genzconsortium.org
En plus d’appliquer la sémantique mémoire à tous les devices pour accélérer les échanges, une des innovations majeures apportées par le protocole Gen-Z est le découplage du contrôleur mémoire et du CPU. Cela signifie que les fonctions propres à chaque média (DRAM, SCM, NAND,…) sont déportées directement sur ce média. Quel intérêt ? Processeurs et mémoires peuvent désormais évoluer séparément. L’entreprise peut facilement déployer les ressources dont elle a besoin pour supporter ses workloads métier. Libre à elle de bâtir une infrastructure globale, avec le nombre de CPUs et de GPUs qu’elle souhaite, un lot de DRAM, des FPGA et des supports flash, puis ensuite d’utiliser certaines parties de ces ressources pour créer en quelques minutes des serveurs virtuels dédiés à telle ou telle application. Les entreprises accèdent donc enfin à une infrastructure pleinement composable. Autre avantage, certaines opérations peuvent être effectuées par le contrôleur. Avec l’architecture Gen-Z, plus besoin donc de copier les données sur le cache du processeur. Elles sont traitées directement sur le média, ce qui améliore la latence et accélère l’application.
Gen-Z n’en est qu’à ses débuts et réserve de nombreux bénéfices, avec une bande passante annoncée de plusieurs centaines de GB/s et une latence inférieure à 100 ns. Aujourd’hui, le consortium regroupe plus de 60 membres et d’autres géants ont rejoint l’aventure (Broadcom, Cisco, Google, IBM, Lenovo, NetApp, Qualcomm, etc. ). La spécification 1.0 a été publiée le 13 février 2018 et les premières offres commerciales devraient apparaître en 2020. Vous pouvez néanmoins commencer à préparer l’avenir avec des technologies d’ores et déjà pensées pour tirer parti de ces futures évolutions.