ReInvent 2021 : AWS dévoile le processeur Graviton 3 qui animera son cloud
Le géant du cloud annonce l’arrivée d’un nouveau processeur ARM de sa conception qui permettra d’exécuter en ligne trois fois plus rapidement les algorithmes d’intelligence artificielle.
Parmi sa flotte de machines virtuelles EC2, AWS, le no 1 des clouds publics, commercialisera bientôt des instances C7g qui reposent sur son tout nouveau processeur maison, le Graviton 3. À l’instar des derniers processeurs M1 Pro/Max qu’Apple conçoit désormais lui-même pour ses Mac, le Graviton 3 est un ARM 64 bits qui brille plus particulièrement sur les calculs mathématiques. Il serait deux fois plus rapide sur le supercalcul et le chiffrement que l’actuel Graviton 2, trois fois plus rapide sur les algorithmes de Machine Learning.
« Ces nouvelles instances de l’offre d’IaaS EC2 répondront exactement aux besoins critiques : simulation, encodage de vidéos, modélisation scientifique, analyses distribuées… », ajoute Jeff Barr, le porte-parole technologique d’AWS.
Il précise que la différence la plus notable entre les VMs d’EC2 basées sur un Graviton et celles motorisées par des processeurs x86 d’Intel ou AMD est que le nombre de vCPUs dans les premières correspond exactement au nombre de cœurs physiques qui fonctionnent en dessous. Les utilisateurs auraient ainsi une idée plus exacte du temps que prennent les calculs.
Les Graviton reposent sur des cœurs ARM Neoverse. Imaginés il y a deux ans par ARM, ces cœurs ont été conçus pour rivaliser de performances avec ceux des Intel Xeon et AMD Epyc dans les serveurs. On trouve la version N1 dans les processeurs Altra et Altra Max qu’Ampere fabrique pour équiper les serveurs des clouds Azure et Oracle OCI, mais aussi dans les serveurs que la startup Bamboo propose aux datacenters. C’est aussi sur des cœurs Neoverse que sera basé le processeur européen Rhea de SiPearl, destiné à la prochaine génération de supercalculateurs de l’UE.
L’arrivée du Graviton 3 chez AWS devrait se faire vers l’été 2022.
Cœurs Neoverse N1, V1 ou N2 ?
À l’heure où nous écrivons ces lignes, on ne sait avec certitude si le Graviton 3 utilisera les mêmes cœurs Neoverse N1 que le Graviton 2 et les Altra d’Ampere, ou s’il bénéficiera de l’une de leurs évolutions planifiées chez ARM : les Neoverse V1 et N2. Des rumeurs parient sur des coeurs Neoverse N2, dont ARM nous dit qu'ils arriveront sur un processeur gravé en 5 nm chez TSMC, vers la fin 2022. La seule certitude est que le Graviton 3 fonctionnera à 2,6 GHz, qu'il aura 64 coeurs (monothreads) tous équipés de 1 Mo de cache L2 non partagé. Chaque coeur contribuera en revanche à hauteur de 1Mo à un cache L3 commun, lequel totalisera, donc, 64 Mo.
Comparativement, l'actuel Graviton 2 (déployé l'année dernière) a aussi 64 coeurs, presque la même fréquence (2,5 GHz), les mêmes caches L2, mais un cache L3 deux fois moindre, de 32 Mo. Le bond était plus phénoménal depuis le Graviton 1 (déployé en 2019) qui, lui, n'avait que 16 coeurs Cortex-A72 (les mêmes que sur un Rapsberry PI 4), 8 Mo de cache et une fréquence de 2,3 GHz.
Du côté des documentations d'ARM, on apprend que les nouveaux cœurs Neoverse V1 et N2, basés sur le tout dernier jeu d’instruction ARMv9 (ARMv8.3 sur le Graviton 2), auront la particularité de supporter directement les prochaines barrettes de mémoire DDR5 (50 % plus rapide que la DDR4) et un bus PCIe 5.0 (deux fois plus de bande passante que le bus PCIe 4.0). Lors de la présentation du Graviton 3, AWS n’a évoqué que la compatibilité avec les mémoires DDR5. Il a aussi dévoilé des chiffres : le Graviton 3 accèderait à ses barrettes de mémoire DDR5-4800 avec une bande passante de 300 Go/s, alors que le Graviton 2 qui utilise des barrettes DDR4-3200 n'a qu'une bande passante de 204,8 Go/s ; elle était de 51,2 Go/s sur le Graviton 1.
Les nouveaux cœurs Neoverse V1 et N2 ont aussi l’avantage d’avoir une unité de calculs dite « bfloat16 », encore une fois annoncée aussi comme étant présente sur le Graviton 3. Le bfloat16 est une version plus rapide de l’unité de calcul en virgule flottante, car elle n’encode ses résultats qu’en 16 bits au lieu des 32 bits habituels – voire plus. Si 32 bits sont généralement nécessaires pour traiter les simulations que l’on affecte aux supercalculateurs, il se trouve que des opérations en 16 bits sont tout à fait suffisantes pour venir à bout des algorithmes de Machine Learning, un domaine largement mis en avant par AWS lors de sa présentation.
Pour le résumer simplement, les cœurs Neoverse V1 sont conçus pour avoir un maximum de circuits d’accélération dédiés qui fonctionnent en parallèle, tandis que les Neoverse N2 accélèrent simplement l’exécution d’un code générique, dans les deux cas sans pour autant consommer plus d’énergie. Les premiers sont donc destinés à exécuter des applications particulières – supercalcul, intelligence artificielle… – tandis que les seconds iront dans le tout-venant des serveurs.
Les cœurs Neoverse V1 équiperont le Rhea de SiPearl qui doit être lancé courant 2022, avec une finesse de gravure de 7 nm.
AWS déclare aussi que son Graviton 3 consommera 60 % d’énergie en moins, ce qui ne correspond à aucune des caractéristiques officielles dévoilées par ARM. Pour autant, cet indice est la plupart du temps une tournure marketing qui signifie qu’un processeur consommerait 60 % d’énergie en moins si, et seulement si, on lui demandait de n’en faire pas plus que ses prédécesseurs. ARM indique que si on exploite le plein potentiel de ses cœurs Neoverse V1 et N2, alors ils consommeront la même énergie que les cœurs de génération précédente. Ou presque. Selon une documentation que LeMagIT a aperçue, le Graviton 3 consommerait 100 watts là où le Graviton 2 consomme 110 watts (et le Graviton 1, 95 watts).
En attendant, plus de Graviton 2 et des x86 plus modernes sur EC2
En marge de l’annonce du Graviton 3, AWS a confirmé qu’il vient aussi d’équiper certains de ses serveurs des processeurs AMD Epyc de troisième génération. Les machines virtuelles concernées sur EC2 sont les nouvelles instances M6a.
L’intérêt d’utiliser un Epyc est qu’il exécute directement les applications écrites en code x86 pour les datacenters. AWS cite en premier SAP. L’avantage d’employer la dernière génération de ce processeur est qu’elle est plus performante pour un coût équivalent. AWS annonce 35 % de gain de vitesse. Les instances M6a seraient également 10 % moins chères que les instances précédentes qui atteignaient déjà de telles performances. AWS ne précise toutefois pas desquelles il s’agit.
Les instances M6a sont disponibles dans de nombreuses configurations : de 2 à 192 vCPU, de 8 à 768 Go de RAM, avec jusqu’à 50 Gbit/s de bande passante réseau entre les instances et 40 Gbit/s vers le stockage (environ 5 Go/s).
En attendant l’arrivée du Graviton 3, AWS a aussi musclé son offre autour de son prédécesseur, le Graviton 2. On le trouve ainsi au cœur des nouvelles instances G5g qui se destinent aux algorithmes de Machine Learning et qui sont appuyées dans leur calcul par des cœurs GPU T4G Tensor de Nvidia. Ces instances sont disponibles au catalogue avec 4 à 64 vCPUs, 1 à 2 cœurs de GPU, 8 à 128 Go de RAM.
Citons également la présence du Graviton 2 dans de nouvelles machines virtuelles IM4gn et IS4gen optimisées pour le stockage en mode bloc (donc plutôt destinées à exécuter des bases de données SQL). Ces instances, qui possèdent de 1 à 64 cœurs et de 6 à 256 Go de RAM, s’accompagnent d’une capacité de stockage sur SSD qui va de 937 Go à 30 To, avec des vitesses d’accès qui grimpent jusqu’à 8 Go/s.
Enfin, les Graviton 2 se retrouveront également dans les nouvelles machines physiques Outposts. Ces infrastructures hyperconvergées, destinées à être installées dans les datacenters des entreprises, servent à créer une passerelle entre l’informatique historique et les instances en cloud. Utilisées dans les projets de cloud hybrides, elles sont censées garantir que les données sensibles puissent être traitées par les fonctions d’AWS sans pour autant quitter leur zone géographique réglementaire.
Les nœuds concernés par le processeur Graviton 2 sont les modèles 1U avec 64 cœurs, 128 Go de RAM et 3,8 To de stockage en SSD NVMe. Les nœuds de taille 2U sont pour leur part équipés des derniers processeurs Intel Xeon, avec 64 ou 128 cœurs, de 128 à 256 Go de RAM et jusqu’à 7,6 To de stockage en SSD.