AccueilActualités informatiqueLes processeurs ARM devraient marquer des points dans les supercalculateurs et les...

Les processeurs ARM devraient marquer des points dans les supercalculateurs et les serveurs en nuage

Le fabricant britannique de puces ARM, actuellement racheté par Nvidia, est très bien représenté dans les supercalculateurs, notamment dans le leader du Top500, Fugaku, avec le processeur A64FX de Fujitsu. Mais dans la 58e liste Top500 actuelle des superordinateurs les plus rapides, aucun nouveau système doté de la technologie de processeur ARM n’est apparu. Cela devrait changer au plus tard début 2023 avec le « Alps » suisse et le « Venado » du Los Alamos National Laboratoy (LANL). Dans les deux cas, le prochain processeur ARM de Nvidia, « Grace », sera utilisé en combinaison avec de la RAM LPDDR5, un futur GPU servant d’accélérateur de calcul et utilisant la High-Bandwith Memory (HBM). La partition Epyc AMD de l’Alps (HPE Cray EX) avec 3 PFlops fonctionne déjà depuis un an.

Lors de la conférence SC’21 sur le supercalcul, quelques nouveaux détails sur les ordinateurs ARM à venir et actuels pour le calcul haute performance (HPC) ont été révélés.

Sommaire

Steven Poole, architecte en chef du Los Alamos National Laboratory (LANL), a donné des nouvelles du projet de superordinateur prévu pour début 2023 en collaboration avec Nvidia et la division Cray de HPE. Il porte désormais le nom de « Venado » et doit fournir plus de 100 PFlops. Il sera intéressant de voir si cela suffira pour figurer dans le top 10 de la 61e liste Top500 en juin 2023.

Nvidia Grace aura des « cœurs ARM Neoverse de la prochaine génération », c’est-à-dire avec l’architecture ARMv9. On ne sait pas si Nvidia mise sur Neoverse N2 ou V2 ; mais les Scalable Vector Extensions SVE2 sont certainement à bord. NVLink 4 (ou 5) avec 900 GByte/s sert de liaison cohérente en matière de cache entre le CPU et le GPU.

Le Los Alamos National Laboratory (LANL) veut également utiliser les nouvelles fonctions de sécurité d’ARMv9.

(Image : Los Alamos National Laboratory (LANL))

Selon Poole, deux aspects de Grace sont particulièrement attrayants pour le LANL : la haute performance de la mémoire ainsi que la Confidential Compute Architecure (CCA). La première est avantageuse pour les matrices peu denses (sparse matrix), alors que le benchmark Linpack du Top500 calcule avec des matrices denses. Mais l’ACC est encore plus importante, car elle permet aux utilisateurs étrangers du superordinateur d’utiliser des partitions cloisonnées en toute sécurité.

Les fournisseurs de cloud Amazon et Oracle de leurs expériences HPC avec des machines ARM. Oracle Cloud Infrastructure (OCI) propose des instances ARM à 1 cent par heure et par cœur : des « penny core ». OCI exploite depuis juin l’Altra A1 (Quicksilver) à 80 cœurs de la start-up Ampere. Ses cœurs Neoverse N1 (ARMv8.2) ne connaissent pas le SMT, mais disposent chacun de deux unités SIMD avec support pour INT8 et BFloat16 pour l’apprentissage machine. Grâce à ses huit canaux de mémoire, l’Altra A1 atteint des taux de transfert de données élevés. Selon l’OCI, il a ainsi presque égalé l’AMD Epyc « Milan » (Zen 3) en termes de performance dans le benchmark HPC classique DGEMM, mais il était 34% moins cher avec 7 contre 5,2 pétaflops par dollar américain (PFlops/$).

Selon Oracle, l’Ampere Altra ne calcule certes pas plus vite qu’un AMD Epyc dans le benchmark DGEMM, mais il est moins cher.

(Image : Oracle)

Amazon mise également sur les cœurs ARM Neoverse N1 ainsi que sur huit canaux de RAM pour le Graviton2 qu’il a conçu lui-même ; mais ici, 64 cœurs au maximum sont disponibles. Les instances fonctionnant sur ce système (C6g.15xlarge) se mettent en scène dans les benchmarks HPC OpenFOAM et WRF avec un rapport qualité/prix de 37 à 40 % supérieur à celui d’Intel Skylake et Intel Cascade Lake. Ici aussi, c’est notamment la bande passante mémoire plus élevée qui aide.

Les systèmes d’exploitation, les compilateurs et les bibliothèques de programmation pour les processeurs de serveurs ARM doivent encore être améliorés. Les exploitants de centres de données du Edinburgh Parallel Computing Center (epcc) en Écosse ont acquis trois ans d’expérience avec leur système HPE Apollo 70 appelé Fulhame. Il est équipé de processeurs ThunderX2 de Cavium (maintenant Marvell). Fulhame est une version plus petite de l' »Astra » du Sandia National Lab, qui est classé 393e dans le Top500.

Système ARM HPC « Fulhame » à l’eppc, Edinburgh

(Image : eppc, Edinburgh)

Les Écossais s’étaient réjouis que SLES 15 for HPC apporte enfin le support de SLURM et de Lustre, même s’il y avait quelques problèmes de performance avec Lustre. MPI posait également problème, mais uniquement pour les très gros messages de plus de 16 Go, et les pilotes Infiniband pour Mellanox posaient également problème. Les nouvelles versions de SLES-15 ne présentent plus ce défaut, mais il est dommage qu’elles ne supportent plus Lustre. Les Écossais préfèrent donc rester avec l’ancien SLES 15.

Pendant ce temps, un beau projet est en cours à l’université de Stony Brooks (SBU) sous le nom d’Ookami (loup) : un système A64FX pour « presque tout le monde ». Les chercheurs du monde entier peuvent s’inscrire pour obtenir du temps de calcul gratuit. Selon Eva Siegmann de SBU, cela fonctionne très bien. Les utilisateurs obtiennent rapidement de bonnes performances, souvent plus que sur des ordinateurs Intel/AMD comparables pour les applications gourmandes en mémoire. Avec MPI, il y a cependant parfois des problèmes, car toutes les bibliothèques MPI présentent des « issues », selon Siegmann.

Pour obtenir des performances de calcul vraiment élevées, il faut aborder SVE de manière ciblée, mais les compilateurs et les chaînes d’outils ne sont pas encore tout à fait au point. GNU-C/C++ propose certes le SVE, mais il manque des bibliothèques vectorielles importantes. Fujitsu et Cray possèdent certes de telles bibliothèques pour leurs compilateurs respectifs, mais ces derniers ont six ans de retard et en sont encore au stade de C++14.

ARM lui-même a sa propre chaîne d’outils basée sur LLVM 11, qui est certes à jour en ce qui concerne C++ (C++20) – mais FORTRAN est en baisse, OpenMP n’est supporté que jusqu’à la V3.2 et Fortran 2008 seulement partiellement.

Plus d'articles