plus69free - Fotolia
AMD revient pour contrer Intel dans les datacenters
Basé sur le même design que le récent processeur Ryzen pour PC, le nouveau processeur Epyc permettrait d’exécuter 50% de VM en plus dans les serveurs, sans coûter plus cher que les Xeon d’Intel.
Les DSI vont peut-être regarder à nouveau la marque du processeur lorsqu’ils achèteront leurs prochains serveurs. Telle est en tout cas l’ambition d’AMD qui vient de lancer sa nouvelle puce Epyc 7000 avec des caractéristiques supérieures au Xeon d’Intel dans tous les domaines et, surtout, pour un prix monté en serveur a priori similaire.
« Les performances sont telles que nous allons pouvoir proposer des serveurs bien plus denses, avec un seul processeur Epyc 7000 qui atteint 9,1 millions d’IOPS, là où nous atteignons aujourd’hui 7 millions d’IOPS avec deux processeurs Xeon », se félicite ainsi Antonio Neri, le tout récent No 2 de HPE, qui était présent aux côtés d’AMD lors du lancement de la puce, fin juin, à Austin (Texas).
Comme Dell EMC, également présent à l’événement, HPE annonce l’arrivée de machines à base de processeur Epyc d’ici à la rentrée prochaine. Les habituels fabricants de serveurs et baies de stockage en marque blanche (SuperMicro, Tyan, Gigabyte, Sugon, Asus...) présentaient, eux, des modèles déjà fonctionnels, en 1U, 2U, mono-socket, bi-socket... parfois avec la mention « Opteron Naples » - à savoir le nom de code jusqu’ici connu d’Epyc. SuperMicro disposait même déjà d’une version Epyc de sa plateforme BigTwin, celle qui sert à fabriquer des architectures hyperconvergées.
Plus de VM dans moins de serveurs
Le bénéfice numéro 1 d’Epyc serait d’exécuter plus de machines virtuelles par serveur ou, dit autrement, de condenser encore plus de VM dans un minimum d’espace. La conséquence est de réduire le nombre de machines physiques, et donc le coût de l’infrastructure, celui du courant qu’elle consomme et aussi celui des mètres-carrés pour l’entreposer.
Ainsi, sur le segment des serveurs bi-socket, AMD compare son processeur haut de gamme Epyc 7601 à 2,2 GHz au Xeon E5 2699A V4 d’Intel à 2,2 GHz, également haut de gamme et d’un prix similaire à l’unité (environ 4 000$). Face aux 22 cœurs, soit 44 threads (environ 70 VM en fonctionnement simultané par processeur) de la solution Intel, la puce d’AMD affiche 32 cœurs, soit 64 threads (théoriquement plus d’une centaine de VM standard simultanées). AMD résume la supériorité de son architecture en annonçant 47% de puissance brute en plus pour un prix au serveur équivalent, selon des tests de performances internes.
Évidemment, la quantité de mémoire adressable est à l’avenant, puisqu’un processeur Epyc reconnaît 16 barrettes DIMMs DDR4 à 2666 MHz, soit 2 To de RAM, là où un Xeon ne gère que 8 DIMMs (soit 1 To de mémoire, soit - en pratique - deux fois moins de machines virtuelles). En version bi-socket, cette quantité double dans les deux cas.
Sur le segment des serveurs mono-socket, AMD dispose d’un Epyc 7551P à environ 2 000$ en tout point identique au 7601 si ce n’est qu’il fonctionne à 2 GHz. En revanche, Intel n’a dans cette catégorie que des Xeon dotés, au mieux, de 8 cœurs, soit 16 threads (le E5-1680 v4 coûte un peu moins de 2 000$ mais tourne, lui, à 3,4 GHz). Par conséquent, AMD compare son modèle mono-socket à une configuration bi-socket basée sur deux Xeon E5-2650 v4 à 2,2 GHz et environ 1 000$ l’unité. Ensemble, ces deux Xeon-ci affichent un total de 24 cœurs, soit 42 threads. Théoriquement, les Xeon devraient être plus puissants, mais AMD affirme, selon ses propres benchmarks, atteindre 21% de performances en plus. Ce que confirmait HPE un peu plus haut. Surtout, le serveur mono-socket Epyc pourrait tenir dans un rack 1U, alors que les bi-sockets Xeon occupent généralement 2U.
Mieux gérer les cœurs pour faire des économies
Dans toutes ses versions, le processeur Epyc intègre quatre exemplaires d’un circuit (die) qui correspond peu ou prou à celui qui équipe le Ryzen 7, ce processeur qu’AMD a lancé il y a quelques semaines sur le marché des PC. On retrouve donc les mêmes caractéristiques, à savoir, par circuit, une gravure en 14 nm (comme Intel), huit cœurs « Zen » pas forcément tous actifs, un cœur ARM pour chiffrer les données à la volée et l’intégration de tous les chipsets habituels au sein d’un module SoC (System on a Chip), lequel permet de réduire le reste de la carte mère.
Les cœurs Zen auraient le mérite d’être orchestrés par un module - appelé SenseMI sur Ryzen - qui monitore leur activité et en déduit la manière la plus optimale de les faire fonctionner. Ainsi, pour réduire les chargements/déchargements de données, le processeur Epyc serait capable de toujours attribuer l’exécution des mêmes VM aux mêmes cœurs. Dans le même ordre d’idée, si Epyc s’aperçoit qu’un cœur n’occupe qu’une fraction de son temps de calcul à effectuer des traitements, alors il réduit sa fréquence de sorte à ce que ce cœur effectue ses traitements sans discontinuer ; au final, le cœur exécute toujours autant d’instructions par seconde, mais il chauffe moins (de 8%, selon AMD) et coûte donc moins cher en énergie.
Il est notable qu’AMD préfère fabriquer un modèle d’Epyc à 8 cœurs (le modèle 7251) en le composant de quatre dies qui ont chacun 6 cœurs inactifs, plutôt qu’avec un seul die où tous les cœurs seraient actifs. Vraisemblablement, l’option choisie par AMD lui coûte bien moins cher car elle lui permet de recycler les dies qui présentent des défauts sur certains cœurs. Ces défauts sont généralement très fréquents en début de série à la périphérie des wafers, car la lentille qui sert à graver les dies n’est pas encore configurée de manière optimale et peut produire des circuits « flous » sur les bords. Pour l’utilisateur final, le fait de séparer ainsi les cœurs garantit une meilleure efficacité de la gestion de leur énergie.
Le chiffrement des VM, un avantage qui reste à démontrer
Concernant le chiffrement à la volée par le cœur ARM, AMD a ici mis au point une technologie dite SEV (Secure Encrypted Virtualization) qui, sur le papier, paraît géniale : « avec SEV, les entreprises ne craindront plus d’envoyer leurs VM s’exécuter dans des Cloud étrangers, car le processeur Epyc cryptera le contenu de la VM en RAM, de sorte que même l’administrateur du Cloud ne pourra pas espionner les données critiques en fouinant dans la mémoire », lance ainsi un technicien d’AMD interrogé par le MagIT.
En pratique, le système est un peu plus compliqué. Les VM ne sont chiffrées que par le processeur qui les exécute, avec une clé aléatoire qu’il ne partage pas. Si on change de serveur en cours de route, soit parce que l’entreprise uploade sa VM chez un hébergeur, soit parce que la VM est déplacée à chaud pour des questions de répartition de charge (fonction vMotion dans VMware, au hasard), le chiffrement saute et l’administrateur espion peut tout à fait lire la VM avant qu’elle soit ré-encryptée. « Il suffira que les éditeurs d’hyperviseurs prévoient un système pour ré-encrypter la VM le temps qu’elle se déplace sur le réseau... », a essayé de se défendre notre interlocuteur. L’avenir nous dira si VMware, Microsoft ou même Red Hat avec KVM ont entendu son appel.
AMD, qui fut l’inventeur de la version 64 bits de l’architecture x86, équipait un quart des serveurs vers le milieu des années 2000. Puis, ses parts de marché ont fondu comme neige au soleil face à la concurrence féroce d’Intel, jusqu’à ne plus équiper que 1% des serveurs l’année dernière. Ses résultats sont plus honorables sur le marché du PC où l’arrivée du Ryzen - qui repose sur la même architecture de cœurs Zen qu’Epyc - l’a propulsé ce trimestre au-dessus des 20% de parts de marché. Le fondeur espère que la même dynamique accompagnera Epyc.