Un groupe de chercheurs de l’Université de Bologne et de Cineca a exploré un cluster expérimental de supercalculateurs RISC-V à huit nœuds et 32 cœurs. La démonstration a montré que même un groupe d’humbles systèmes sur puces Freedom U740 de SiFive pouvaient exécuter des applications de superordinateur à une puissance relativement faible. De plus, le cluster fonctionnait bien et prenait en charge une pile informatique hautes performances de base.
Besoin de RISC-V
L’un des avantages de l’architecture de jeu d’instructions RISC-V open source est la simplicité relative de la construction d’un cœur RISC-V hautement personnalisé destiné à une application particulière qui offrira un équilibre très compétitif entre performances, consommation d’énergie et coût. Il rend RISC-V adapté aux applications émergentes et à divers projets de calcul haute performance qui répondent à une charge de travail particulière. Le groupe a exploré le cluster pour prouver que les plates-formes basées sur RISC-V peuvent fonctionner pour le calcul haute performance (HPC) d’un point de vue logiciel.
« Monte Cimone ne vise pas à atteindre de fortes performances en virgule flottante, mais il a été construit dans le but d' »amorcer le tuyau » et d’explorer les défis de l’intégration d’un cluster RISC-V multi-nœuds capable de fournir une pile de production HPC comprenant une interconnexion , stockage et infrastructure de surveillance de l’alimentation sur le matériel RISC-V », la description du projet (s’ouvre dans un nouvel onglet) lit (via NextPlatform (s’ouvre dans un nouvel onglet)).
Pour ses expérimentations, l’équipe a pris un cluster Monte Cimone prêt à l’emploi (s’ouvre dans un nouvel onglet) composé de quatre lames à double carte dans un facteur de forme 1U construit par E4, une société italienne HPC (notez que le cluster Monte Cimone d’E4 se compose de six lames). Le Monte Cimone est une plate-forme « pour le portage et le réglage des piles logicielles et des applications HPC pertinentes pour l’architecture RISC-V », donc le choix était bien justifié.
La Grappe
Les machines Monte Cimone 1U utilisaient deux cartes mères de développement HiFive Unmatched de SiFive alimentées par le SoC multicœur Freedom U740 hétérogène de SiFive qui intègre quatre cœurs U74 fonctionnant jusqu’à 1,4 GHz et un cœur S7 utilisant la technologie exclusive Mix + Match de la société ainsi que 2 Mo de cache L2. . De plus, chaque plate-forme dispose de 16 Go de mémoire DDR4-1866 et d’un SSD NVMe de 1 To.
Chaque nœud arbore également une carte adaptateur de canal hôte (HCA) Mellanox ConnectX-4 FDR 40 Gbps, mais pour une raison quelconque, RDMA n’a pas fonctionné même si le noyau Linux pouvait reconnaître le pilote de périphérique et monter le module du noyau pour gérer la pile Mellanox OFED . Par conséquent, deux des six nœuds ont été équipés de cartes Infiniband HCA avec un débit de 56 Gbps pour maximiser la bande passante inter-nœuds disponible et compenser le manque de RDMA.
L’une des parties critiques de l’expérience était le portage des services HPC essentiels requis pour exposer les charges de travail de calcul intensif. L’équipe a signalé que le portage de NFS, LDAP et du planificateur de tâches SLURM vers RISC-V était relativement simple ; ensuite, ils ont installé un plugin ExaMon dédié à l’échantillonnage des données, un courtier pour la gestion de la couche de transport et une base de données pour le stockage.
Résultats
Étant donné que l’utilisation d’un cluster à faible consommation d’énergie conçu à des fins de portage de logiciels pour les charges de travail HPC réelles n’a pas de sens, l’équipe a exécuté des benchmarks HPL et Stream pour mesurer les performances GFLOPS et la bande passante mémoire. Les résultats étaient mitigés, cependant.
La performance théorique maximale du cœur U74 de SiFive est de 1 GFLOPS, ce qui suggère qu’une performance théorique maximale d’un SoC Freedom U740 devrait être de 4 GFLOPS. Malheureusement, chaque nœud n’a atteint qu’une performance soutenue de 1,86 GFLOPS en HPL, ce qui signifie que la capacité de calcul maximale d’un cluster à huit nœuds devrait se situer autour de 14,88 GFLOPS en supposant une mise à l’échelle linéaire parfaite. L’ensemble du cluster a atteint une performance maximale soutenue de 12,65 GFLOPS, soit 85 % du pic atteignable extrapolé. Pendant ce temps, en raison de la mise à l’échelle relativement médiocre du SoC, 12,65 GFLOPS représentent 39,5 % du pic théorique de l’ensemble de la machine, ce qui n’est peut-être pas si mal pour un expérimental si nous ne prenons pas en compte la mauvaise mise à l’échelle du modèle U740.
En ce qui concerne la bande passante mémoire, chaque nœud devrait produire environ 14,928 Go/s de bande passante en utilisant un module DDR4-1866. En réalité, il n’a jamais dépassé les 7760 Mo/s, ce qui n’est pas un bon résultat. Les résultats de référence réels dans le flux en amont non modifié sont encore moins impressionnants, car une charge de travail à 4 threads n’a atteint qu’une bande passante ne dépassant pas 15,5 % de la bande passante maximale disponible, ce qui est bien inférieur aux résultats des autres clusters. D’une part, ces résultats démontrent un sous-système de mémoire médiocre du Freedom U740, mais d’autre part, ils montrent également que des optimisations logicielles pourraient améliorer les choses.
En termes de consommation d’énergie, le cluster Monte Cimone tient ses promesses : il est faible. Par exemple, la consommation électrique réelle d’un SiFive Freedom U740 culmine à 5,935 W sous des charges de travail HPL gourmandes en CPU, alors qu’en veille, il consomme environ 4,81 W.
Sommaire
Le cluster Monte Cimone utilisé par les chercheurs est parfaitement capable de faire tourner une pile logicielle HPC et des applications de test appropriées, ce qui est déjà bien. De plus, la carte HiFive Unmatched de SiFive et les systèmes E4 se livrent à des fins de portage de logiciels, de sorte que le bon fonctionnement de NFS, LDAP, SLURM, ExaMon et d’autres programmes a été une agréable surprise. Pendant ce temps, le manque de support RDMA ne l’était pas.
« À notre connaissance, il s’agit du premier cluster RISC-V entièrement opérationnel et prenant en charge une pile logicielle HPC de base, prouvant la maturité du RISC-V ISA et la première génération de composants RISC-V disponibles dans le commerce », l’équipe a écrit dans son rapport. « Nous avons également évalué la prise en charge des adaptateurs réseau Infiniband qui sont reconnus par le système, mais qui ne sont pas encore capables de prendre en charge la communication RDMA. »
Mais les performances réelles du cluster n’ont pas répondu aux attentes. De tels effets sont tombés sous la condition des performances et des capacités médiocres de l’U740, mais la préparation du logiciel a joué un rôle. Cela dit, bien que le logiciel HPC puisse fonctionner sur des systèmes basés sur RISC-V, il ne peut pas répondre aux attentes. Cela changera une fois que les développeurs auront optimisé les programmes pour l’architecture open source et que le matériel approprié sera publié.
En effet, les chercheurs affirment que leurs futurs travaux consistent à améliorer la pile logicielle, à ajouter la prise en charge de RDMA, à mettre en œuvre une gestion dynamique de l’alimentation et de la chaleur et à utiliser des accélérateurs basés sur RISC-V.
En ce qui concerne le matériel, SiFive peut construire des SoC avec jusqu’à 128 cœurs hautes performances. Ces processeurs sont destinés aux centres de données et aux charges de travail HPC, alors attendez-vous à ce qu’ils aient une évolutivité des performances appropriée et un sous-système de mémoire décent. De plus, une fois que SiFive entrera sur ces marchés, il devra assurer la compatibilité et les optimisations logicielles, alors attendez-vous à ce que le fabricant de puces encourage les développeurs de logiciels à peaufiner leurs programmes pour le RISC-V ISA.