beandeau>
Développement d'un mini calculateur de table
Claire Dupont  1@  , Jeremy Laforet  1  
1 : Biomécanique et Bioingénierie
Université de Technologie de Compiègne, Centre National de la Recherche Scientifique

L'architecture des grands calculateurs s'est complexifiée ces dernières années. Ces machines massivement parallèles avec plusieurs centaines ou milliers de nœuds sont devenues hybrides, chaque processeur d'un nœud possédant des dizaines de cœurs de calcul CPU (Central Processing Unit) mais aussi désormais un ou plusieurs GPU (Graphics Processing Unit). L'association de CPUs et GPUs permet de réduire le temps de calcul mais ce gain en temps de calcul n'est observé que si les codes ont été développés et structurés pour fonctionner sur ces architectures. Ces architectures imposent des contraintes notablement différentes des ordinateurs de bureaux classiques, où les codes sont programmés pour tourner sur un seul fil d'exécution. Pour optimiser les codes sur les architectures hybrides, il faut savoir répartir les calculs entre les CPUs et les GPUs, les deux demandant des approches algorithmiques différentes pour tirer parti de leurs spécificités. Afin d'apprendre aux étudiants à programmer sur de telles architectures, d'optimiser les codes développés dans notre laboratoire avant d'utiliser les grands calculateurs dont les allocations d'heures de calcul sont contraintes par un dépôt de projet, nous avons développé un mini calculateur portable, facilement utilisable par les membres de notre laboratoire.

Bien que l'utilisation des Single Board Computers (SBC) ait montré un fort intérêt pour la formation et la transformation des codes existant par les chercheurs (Ariza et Baez, 2022), il n'existe pas de cluster de ce type orienté vers le calcul scientifique avec une architecture hybride pouvant servir de modèle à un super-calculateur. Seuls de rares cas ne considérant que des CPUs sont présents dans la littérature (Krpić et al, 2022, Warade et al, 2022), malgré l'augmentation de la puissance de calcul et du nombre de cœurs, s'adjoignant de GPUs puissants. Nous avons donc développé un minicalculateur composé 16 cartes Radxa ROCK 5A relié à la carte manager, une carte Radxa ROCK 5B, par l'intermédiaire d'un switch gigabit ethernet assurant aussi l'alimentation des cartes en POE (Netgear GS524UP). Un boitier en PLA et des supports pour les cartes ont été imprimés en 3D. Le boitier est fixé sur le switch. Le refroidissement du système est assuré par 4 ventilateurs (BeQuiet! 80mm). Ses dimensions (390mm x 270mm x 145mm) ainsi que sa prise électrique unique le rendent facilement transportable et utilisable. Ce minicalulateur a 128 Cœurs CPU, 256 Go de RAM, 9.6 TFLOPs GPU, 96 TOPs NPU, 1To de stockage partagé.

A l'aide d'une prise connectée, la consommation électrique du système complet a été estimée à 72W dont 56W uniquement pour le switch. La puissance de notre mini-calculateur est de 647 GFlops. Elle a été déterminée en utilisant le benchmarck High-Performance Linpack (HPL), qui résout un système d'équations linéaires uniformément aléatoire. La consommation est alors montée à 238 W au maximum, soit environ 3.55 GFlops par watt en ignorant la consommation du switch.

Le système a été utilisé une première fois pour un TP de découverte du calcul parallèle lors de l'école d'hiver Sustainable Biomedical Engineering and e-Health (Compiègne, Janvier 2025) avec un focus sur la sensibilisation aux aspects consommation énergétique.

 

Bibliographie

J. A. Ariza and H. Baez. Understanding the role of single-board computers in engineering and computer science education : A systematic literature review. Computer Applications in Engineering Education, 30(1) :304–329, 2022.

Z. Krpić, L. Loina, and T. Galba. Evaluating Performance of SBC Clusters for HPC Workloads. In 2022 International Conference on Smart Systems and Technologies (SST), pages 173–178, Oct. 2022.

M. Warade, J.-G. Schneider, and K. Lee. Measuring the Energy and Performance of Scientific Workflows on Low-Power Clusters. Electronics, 11(11) :1801, June 2022.



  • Poster
Chargement... Chargement...