Jülich : Architecture modulaire de supercalculateur

La co-conception entre six instituts scientifiques, Intel et Megware a permis d'aboutir à un prototype pleinement fonctionnel et économe en énergie.

En bref :

  • Le Jülich Supercomputing Centre (JSC), l'un des principaux centres de recherche sur le calcul intensif (HPC) en Europe, redéfinit l'avenir du supercalculateur dans le cadre d'un projet financé par l'Union européenne (UE).

  • Trois modules de traitement utilisent des processeurs Intel® Xeon® Scalable. L'un des modules utilise la technologie Intel® Optane™ comme alternative à la DRAM et comme unité de stockage SSD ultra rapide, des processeurs graphiques spécialisés et des cartes d'accélération programmables FPGA Intel®, qui peuvent être programmées individuellement par application.

author-image

Par

Des instituts de recherche comme le Jülich Supercomputing Centre (JSC), l'un des principaux centres de recherche sur le calcul intensif (HPC) en Europe, redéfinissent l'avenir du supercalculateur dans le cadre d'un projet financé par l'Union européenne (UE). La solution de calcul intensif, qui est actuellement en cours de développement, fait partie du projet de R&D collaboratif DEEP-EST (Dynamical Exascale Entry Platform - Extreme Scale Technologies), financé par l'UE. Avec un budget de 15 millions d'euros (17,6 M USD), DEEP-EST développe et construit un prototype entièrement fonctionnel et économe en énergie de l'architecture modulaire de supercalculateur (MSA, Modular Supercomputing Architecture).

L'architecture modulaire de supercalculateur (MSA)

Le système DEEP-EST MSA se compose de trois modules de traitement : le module de cluster à usage général (CM, Cluster Module), le module Extreme Scale Booster (ESB) ainsi que le module d'analytique des données (DAM, Data Analytics Module). Tous les modules utilisent des processeurs Intel® Xeon® Scalable. Le DAM utilise la nouvelle technologie Intel® Optane™ comme alternative DRAM et comme SSD ultra-rapide. De plus, le DAM utilise des processeurs graphiques spécialisés et des cartes d'accélération programmables FPGA Intel®, qui peuvent être programmées individuellement par application. Tous les composants ont été combinés de manière efficace par Megware, le partenaire spécialisé en calcul intensif d'Intel.

En résumé, le principal avantage du DAM est de fournir de très grandes quantités de mémoire et de puissance de traitement, ciblées exactement sur les parties correspondantes des applications concernées. En particulier, les applications d'analytique des données puissantes (HPDA : High Performance Data Analytics, Analytique des données haute performance) et d'apprentissage machine (machine learning ou ML) utilisent de grandes baies de mémoire qui, contrairement aux applications de calcul intensif traditionnelles, sont traitées de manière aléatoire et non linéaire. Avec l'approche modulaire, qui relie tous les composants par une fédération de réseau, il est inutile d'équiper tous les nœuds de beaucoup de RAM et de modules d'accélération comme les processeurs graphiques et les FPGA. De cette manière, la consommation d'énergie et les coûts sont réduits. Alors qu'une architecture monolithique traditionnelle traite tous les scénarios d'application possibles sur le même matériel cible, un supercalculateur modulaire utilisera des nœuds et des modules assignés individuellement avec des compétences spécifiques (exactement comme le DAM pour HPDA) et des charges de travail pour l'apprentissage machine.

Analyse des exigences grâce à une approche globale de co-conception

Le projet DEEP-EST a débuté à la mi-2017 par une analyse complète des besoins et des examens technologiques. À ce jour, le module de cluster ainsi que le module d'analytique des données ont été finalisés et mis en service. Avant la mi-2020, l'Extreme Scale Booster suivra.

La recherche et le développement dans le domaine du calcul intensif relève d'un travail d'équipe. DEEP-EST réunit 16 partenaires au sein de l'UE sous la direction du projet mené par le Jülich Supercomputing Centre. Parmi eux se trouvent six instituts scientifiques qui couvrent la partie applicative du projet ainsi que, à côté d'Intel, l'expert en supercalculateurs Megware, qui construit les modules matériels actuels. Parmi les autres partenaires figurent des noms connus comme Astron, le CERN à Genève, l'université d'Édimbourg, le Barcelona Supercomputing Center (BSC) et le Leibniz-Rechenzentrum (LRZ).

Une base solide pour la réussite informatique : le module de cluster général

Le module de cluster constitue la base de toute l'architecture modulaire de supercalculateur. Lors de la conception du module, les développeurs avaient l'intention de fournir une puissance de calcul fiable pour des charges de travail aussi diverses que possible. Chaque application doit pouvoir obtenir des résultats suffisamment bons sans avoir besoin d'être spécialement adaptée ou optimisée. La performance maximale par thread était particulièrement importante pour les calculs en virgule flottante et en nombres entiers car ils sont fortement utilisés par toutes les applications, quelle que soit la qualité de leur parallélisation.

Une autre exigence pour le module de cluster était qu'il puisse fonctionner avec tous les environnements et piles de développement de logiciels couramment utilisés dans le domaine du calcul intensif. Alors que le calcul intensif se concentre généralement sur un nombre limité de modèles de programmation et d'API comme MPI, OpenMP, OpenCL et CUDA, les applications d'analyse de données reposent désormais sur une grande variété de langages de programmation et d'infrastructures. Ceux-ci vont de Python à R, Caffe, TensorFlow Keras et Theano en passant par Apache Spark. Bien que le module d'analytique des données supporte l'essentiel des tâches d'analyse, les développeurs s'attendent à ce que le code HPDA soit développé sur le module de cluster.

La spécification actuelle pour les nœuds 50 CM utilise deux processeurs Intel® Xeon® Gold 6146 contenant 12 cœurs chacun, fonctionnant à 3,2 GHz avec 24,75 Mo de cache L3. Une RAM DDR4 de 192 Go associée à des SSD Intel® NVMe PCIe3 offre plus qu'assez de mémoire pour toutes les tâches de traitement.

Chaque nœud de cluster peut écrire sur les SSD connectés via quatre liens PCIe de génération 3, chacun offrant un débit d'environ 1,0 Go/s. De cette manière, les applications réparties sur plusieurs nœuds peuvent bénéficier de gains de vitesse presque linéaires pour les opérations E/S. Dans le système prototype, Megware a réalisé dix nœuds chacun dans un châssis de six HU. Compte tenu de l'espace disponible pour le refroidissement, la distribution d'énergie et les commutateurs InfiniBand, jusqu'à 50 nœuds pourront être installés dans un rack entièrement rempli et efficacement refroidi à l'eau chaude.

Un spécialiste du machine Learning : le module d'analytique des données (DAM)

La tâche principale du DAM est d'effectuer des tâches d'analyse des données le plus rapidement possible, ce qui le rend idéal pour le machine learning, l'intelligence artificielle et les charges de travail pour l'apprentissage en profondeur (deep learning). Bien qu'il s'agisse d'un module spécialisé, les concepteurs ont principalement utilisé des produits prêts à l'emploi comme des graphiques et des cartes FPGA sans composants coûteux développés sur mesure. La technologie Intel Optane est un composant essentiel : les unités SSD connectées au PCIe fournissent un stockage de masse rapide, et chaque nœud possède jusqu'à 3 To de mémoire persistante Intel® Optane™ (PMem) ainsi que 384 Go de RAM DDR4. La PMem Intel® Optane™ peut être utilisée selon deux modes : comme mémoire persistante, rapide et adressable par octet (AppDirect) ; ou comme une extension volatile et transparente de la DRAM installée, fournissant aux applications jusqu'à 3 To de mémoire vive avec des performances proches de celles d'une DRAM. La PMem Intel® Optane™ offre une latence extrêmement faible et un très bon rapport prix/capacités, ce qui répond parfaitement aux exigences du domaine du calcul intensif et du HPDA.

En outre, chaque nœud peut utiliser deux disques durs SSD Intel® Optane™ de 1,5 To pour centre de données. Ils sont configurés soit comme une partition utilisateur temporaire, un point de contrôle/mémoire de redémarrage ou comme un système de fichiers parallèles BeeOND (BeeGFS à la demande), selon l'application.

Le DAM se compose de 16 nœuds, chacun contenant deux Processeurs Intel® Xeon® Platinum 8260M (chacun avec 24 cœurs, une fréquence d'horloge de 2,4 GHz et un cache L3 de 35,75 Mo) ainsi qu'une structure de cluster de 40 GbE pour la connexion. Une interconnexion EXTOLL de 100 Gbps avec des cartes d'extension Tourmalet PCIe3 vient compléter le matériel. Le DAM a été spécialement conçu pour exécuter les codes HPDA comme le clustering non assisté (DBSCAN ou KMeans), le clustering assisté avec des machines à vecteurs de support (SVM, Support Vector Machines) ou des forêts d'arbres décisionnels et, bien sûr, le deep learning. Un exemple pratique de ce type d'application est la charge de travail de co-conception pour l'analyse d'images de la KU Leuven et de l'Université d'Islande.

Domaines de mémoire homogènes pour des performances de machine learning optimales

Les applications de calcul intensif lisent et traitent généralement les données de manière séquentielle sous forme de grands tableaux. Cependant, les applications de machine learning et d'analytique des données accèdent à la mémoire de manière aléatoire. Davantage d'opérations sont exécutées sur de petites unités de données et des types de données plus petits sont utilisés. En raison de ces besoins spécifiques, qui ne sont pas satisfaits par les architectures de calcul intensif traditionnelles, le DAM, qui comprend des FPGA pouvant parfaitement y répondre, est devenu extrêmement important. Un système de cluster évolutif comme le DAM est une solution économe en énergie pour les applications parallèles, puisque la capacité de mémoire requise par une charge de travail peut être fournie en allouant un nombre correspondant de nœuds.

Pour les tâches relatives au HPDA et au machine Learning, le débit d'E/S est beaucoup plus important que dans les simulations traditionnelles. Néanmoins, une forte performance de calcul des nombres entiers est nécessaire pour profiter des optimisations intégrées dans de nombreux algorithmes de machine learning, par exemple dans la charge de travail de co-conception du partenaire KU Leuven. La conception du DAM permet aux applications gourmandes en mémoire dans le domaine de la bio-informatique et du machine learning de fonctionner efficacement. Le processus de modélisation des applications HPDA, qui prend beaucoup de temps, réutilise souvent de grands ensembles de données. Avec une mémoire persistante comme Intel® Optane™, ces ensembles de données, auxquels on accède encore et encore, peuvent être fournis beaucoup plus rapidement qu'avec les technologies de stockage traditionnelles ou de mémoire volatile.

Les cartes d'accélération programmables FPGA Intel® D5005 (PCIe3 x16) utilisées dans le DAM sont entièrement programmables et constituent le moyen le plus simple d'utiliser les structures de machine learning existantes. Les développeurs peuvent choisir parmi une grande variété de bibliothèques et d'infrastructures déjà optimisées pour les cartes d'accélération programmables FPGA Intel®. Le fait de disposer d'un grand nombre de logiciels existants et testés peut accélérer la mise en œuvre des charges de travail sur le DAM. Le besoin d'adaptations personnalisées et de développement de code est réduit au minimum. Toutefois, les utilisateurs peuvent toujours créer un code personnalisé si nécessaire, par exemple si l'application n'est pas encore couverte par un logiciel existant. Les choix commencent par des langages de programmation de haut niveau comme OpenCL et Data Parallel C++ (dans le cadre de la technologie Intel® oneAPI) mais peuvent également inclure un langage très orienté matériel comme VHDL. De plus, les cartes d'accélération programmables FPGA Intel® s'appuient sur Intel® Acceleration Stack pour le processeur Intel® Xeon®. Les FPGA fournissent des interfaces matérielles et des API optimisées et simplifiées, ce qui permet aux développeurs de gagner du temps et de se concentrer sur la valeur ajoutée unique de leur solution. Les charges de travail utilisées pour tester l'architecture modulaire de supercalculateur font déjà appel aux deux approches : les infrastructures existantes et les logiciels personnalisés.

Résultats à ce jour et prochaines étapes

Bien que le projet soit toujours en cours, l'expérience acquise montre déjà un grand potentiel pour de futures applications et pour d'autres instituts de recherche institutionnels et privés ou commerciaux. Les partenaires du projet s'attendent à une augmentation significative des performances pour les charges de travail appropriées, par rapport aux systèmes monolithiques. Cela est vrai pour les charges de travail qui profitent de calculs exécutés sur des modules spécialisés. Tous les partenaires impliqués auront un accès complet à toutes les mesures et aux résultats des tests afin que chaque institution puisse mettre à l'épreuve et affiner les variations individuelles de l'architecture. Le résultat final devrait être des progiciels pré-construits qui contiennent déjà la majorité des personnalisations pour des charges de travail spécifiques et qui peuvent être déployés encore plus rapidement.

Le JSC alignera ses futurs achats sur le concept DEEPEST. Déjà à la mi-2020, l'installation d'un module Booster est prévue pour le système de production JUWELS. Même la plateforme de test actuelle DEEP-EST a convaincu les utilisateurs de son adéquation pour une très bonne conception de plan universel. Alors que les scientifiques des universités et instituts partenaires concernés évaluent encore la plateforme, le large éventail d'applications et leur validité montrent que l'architecture modulaire de supercalculateur est sur la bonne voie pour un brillant avenir dans le domaine du calcul intensif.

Soutenir efficacement de nombreux domaines d'application scientifique

Soutenir efficacement le plus grand nombre possible de domaines d'application scientifique est l'une des principales exigences de l'architecture modulaire de supercalculateur. Plusieurs partenaires clés utilisent déjà le prototype au Jülich Supercomputing Centre pour des projets de référence :

Radioastronomie, Astron
Partout dans le monde, de grands réseaux d'antennes observent l'univers par le biais des ondes radio. Les données reçues par les différentes antennes doivent être agrégées et analysées. Le traitement a lieu dans une opération séquentielle. Deux de ces étapes sont particulièrement exigeantes en termes de traitement : la combinaison des données (Correlator) et le calcul de l'image (Imager). Correlator et Imager ont été portés sur plusieurs plateformes (processeur graphique, processeur Intel® Xeon®, DSP et FPGA). Avec le prototype MSA, les chercheurs peuvent évaluer la meilleure plateforme pour chaque tâche et l'approche la plus efficace sur le plan énergétique.

Météo spatiale, Katholieke Universiteit Leuven
Le soleil est une sphère de plasma géante, un réservoir de molécules si chaudes que les électrons sont séparés des noyaux des atomes. Ces particules chargées électriquement sont piégées dans les puissants champs magnétiques de notre étoile. Les champs magnétiques s'étendent progressivement dans le système solaire, transportant le plasma vers l'extérieur. Lorsqu'ils deviennent trop forts à la surface du soleil, ils peuvent produire des éruptions magnétiques géantes, appelées éruptions. Les champs magnétiques et les éruptions de plasma peuvent provoquer des perturbations dans les appareils électroniques et nuire aux satellites. Avec son nouveau modèle de simulation, l'Université de Louvain tente de prédire les effets de l'activité solaire sur notre planète. Un code de machine learning fonctionnant sur le DAM est utilisé pour relier le soleil et la terre. Un code de calcul intensif traditionnel qui fonctionne sur les autres modules est ensuite utilisé pour étudier l'environnement du plasma terrestre.

Neuroscience, Université norvégienne des sciences de la vie, Ås
Le logiciel NEST est utilisé pour simuler des modèles de réseaux neuronaux représentant des réseaux au niveau de neurones et de synapses simplifiés qui interagissent par des pics, des impulsions électriques stéréotypées. Ces simulations sont utiles pour un large éventail de sujets de recherche allant des nouveaux paradigmes d'apprentissage pour la neurorobotique aux modèles d'animaux et même éventuellement au cerveau humain. NEST en soi exploite très bien les capacités des architectures de supercalculateurs conventionnels, mais laisse aux scientifiques d'énormes quantités de données de sortie nécessitant un traitement et une analyse plus poussés. Avec la MSA, les données générées par NEST sur le module de calcul peuvent être introduites directement dans l'outil d'analyse statistique Elephant. Fonctionnant sur le DAM, il extrait les signaux pertinents des données brutes pendant qu'une grande simulation cérébrale est en cours.

Physique des hautes énergies, CERN Genève
Le Grand collisionneur de hadrons du CERN est le plus grand et le plus puissant accélérateur de particules du monde. Les particules sont accélérées jusqu'à une vitesse proche de celle de la lumière, puis entrent en collision, générant ainsi d'énormes quantités de données. Les événements de collision sont reconstitués à l'aide de données provenant de détecteurs géants. Le DAM aide à attribuer les énergies respectives à toutes les particules nouvellement créées et à reconstituer la collision en combinant tous les points de données individuels. C'est une tâche qui convient parfaitement au DAM, car il peut traiter de grandes quantités de données sans longue configuration ni pré-formatage.

Analytique des données en sciences de la terre, Université d'Islande
La télédétection, par exemple via des capteurs satellitaires ou le LiDAR (Light Detection and Ranging) basé sur le laser, est utilisée dans de nombreux domaines. L'une d'entre eux est la science de la terre, lorsque la terre doit être observée par rapport à la couverture terrestre afin d'étudier, par exemple, les changements environnementaux. Le machine learning est utilisé pour automatiser la classification de la couverture terrestre à partir d'images satellites et pour regrouper les nuages de points LiDAR afin de séparer les objets. La formation des réseaux neuronaux et des machines à vecteurs de support bénéficie des accélérateurs rapides et efficaces en énergie et de l'énorme mémoire du DAM.

Points forts de la solution

  • Combinaison de technologies permettant d'accélérer les simulations scientifiques complexes, l'analyse des données et les applications de machine learning
  • Applications et charges de travail hétérogènes pouvant s'exécuter sur des ressources de calcul et de mémoire précisément adaptées
  • Processeurs Intel® Xeon® Platinum 8260M avec instructions VNNI et carte d'accélération programmable FPGA Intel® D5005 pour l'analyse des données ET l'inférence de machine learning
  • Mémoire persistante Intel® Optane™ capable d'agir comme extension de la RAM ou comme tampon de données persistantes ultra-rapide ainsi que les SSD Intel® Optane™ pour un stockage rapide des données
  • Possibilité de connecter rapidement des modules de système supplémentaires, par exemple des plateformes spécialisées d'intelligence artificielle
  • Utilisation complète de tout le spectre des outils Intel® (compilateur, analyse, structures d'apprentissage machine) et des bibliothèques (Intel® Math Kernel Library, Intel® Data Analytics Acceleration Library)
  • Solution prête à l'emploi avec une réduction drastique du temps et de la consommation d'énergie