Maison > Article > Périphériques technologiques > Jack Dongarra, lauréat du prix Turing : Comment l'intégration du calcul haute performance et de l'IA va bouleverser le calcul scientifique
Au cours des trois dernières décennies, le calcul haute performance (HPC) a fait des progrès rapides et joue un rôle important dans le calcul scientifique et dans d'autres domaines. Actuellement, le cloud computing et l’informatique mobile deviennent progressivement des paradigmes informatiques courants. Dans le même temps, l’impact perturbateur des méthodes d’IA telles que l’apprentissage profond a apporté de nouveaux défis et opportunités à l’intégration du HPC et de l’IA. Lors de la 10e Conférence nationale sur le traitement des médias sociaux (SMP 2022), Jack Dongarra, lauréat du prix Turing, a passé en revue les applications et les développements les plus importants de l'informatique haute performance de ces dernières années.
Jack Dongarra, expert en calcul haute performance, lauréat du Turing Award 2021, directeur de l'Innovative Computing Laboratory de l'Université du Tennessee, USA. Ses contributions pionnières aux algorithmes numériques et aux bibliothèques ont permis aux logiciels de calcul haute performance de suivre le rythme des améliorations exponentielles du matériel pendant plus de quatre décennies. Ses nombreuses réalisations académiques incluent le prix SIAM/ACM Computational Science and Engineering 2019 pour lequel il a été récompensé et le prix IEEE Computing Pioneer Award 2020 pour son leadership dans les logiciels mathématiques de haute performance. Il est membre de l'AAAS, de l'ACM, de l'IEEE et du SIAM, membre étranger de la Royal Society et membre de la National Academy of Engineering.
Actuellement, les méthodes de calcul haute performance (HPC) sont largement utilisées dans la simulation de la recherche scientifique, et la simulation est également connu sous le nom de science. Le « troisième pôle » de la recherche. Historiquement, la recherche scientifique et la recherche en ingénierie ont généralement adopté un paradigme basé sur la théorie et l'expérimentation. Cependant, ces deux méthodes présentent de nombreuses limites inhérentes. Par exemple, il est généralement très difficile de construire des souffleries à grande échelle, le coût des tests de moteurs d'avion et des collisions d'oiseaux sera très élevé, et l'attente pour observer le changement climatique sera très coûteuse. les expériences sur les drogues et les armes seront très longues et lentes, etc. De plus, nous ne pouvons parfois pas étudier expérimentalement certains problèmes, comme l’étude du mouvement des galaxies et le développement de nouveaux médicaments. Par conséquent, les chercheurs utilisent progressivement des méthodes de calcul scientifique pour effectuer des simulations et étudier ces questions. Cette méthode s'appuie généralement sur des lois physiques et des méthodes de calcul numériques connues, et simule les phénomènes physiques correspondants grâce à des systèmes informatiques performants.
Ces supercalculateurs ont un parallélisme très élevé et utilisent généralement une mémoire distribuée et le paradigme de programmation "MPI+Open-MP". Le déplacement de données entre différentes parties d'un système HPC est très coûteux par rapport aux calculs en virgule flottante sur les données. Les supercalculateurs existants prennent en charge les calculs en virgule flottante avec différentes précisions, notamment des largeurs de 64, 32, 16 et 8 bits.
Actuellement, les supercalculateurs les plus rapides peuvent fournir une puissance de calcul de niveau Exaflop/s (1018). C'est une valeur très énorme. Si tout le monde effectue un calcul de multiplication et d'addition en une seconde, alors il faudra quatre ans à tout le monde pour terminer le calcul qu'un superordinateur peut effectuer en une seconde. Dans le même temps, pour maintenir le fonctionnement d’un tel supercalculateur, des dizaines de millions de dollars en factures d’électricité doivent être dépensés chaque année.
D'après l'évolution des performances des supercalculateurs TOP500 mondiaux au cours des trente dernières années, nous pouvons constater que les performances des supercalculateurs ont presque maintenu un taux de croissance exponentiel. Fait intéressant, les performances du MacBook utilisé aujourd'hui sont plus puissantes que celles du supercalculateur le plus avancé au monde de 1993, fabriqué au laboratoire national de Los Alamos et principalement utilisé pour la conception d'armes nucléaires. Les données de juin de cette année montrent que parmi les 10 meilleurs supercalculateurs au monde, 5 viennent des États-Unis, 2 de Chine (situés à Wuxi et Guangzhou) et les 3 restants viennent de Finlande, du Japon et de France.
Le HPC et le ML ont des caractéristiques similaires mais différentes. HPC nécessite beaucoup de calculs numériques. Il entre généralement des données très limitées et génère une grande quantité de données après un très grand nombre de calculs numériques. Le traitement des données haute performance (HPDA) dans le domaine du ML nécessite généralement la saisie d'une grande quantité de données, mais génère des quantités de données relativement faibles. La précision des données utilisée par les deux est également très différente. Dans les scénarios de calcul haute performance tels que les simulations scientifiques, des données à virgule flottante de 64 bits sont généralement utilisées, tandis que dans les scénarios d'apprentissage automatique, des données à virgule flottante de 16 bits sont utilisées.
L'IA joue un rôle très important dans de nombreux aspects de la recherche scientifique : l'IA peut aider à la découverte scientifique dans différents domaines, améliorer les performances de l'architecture informatique et gérer et gérer à la périphérie Traitez de grandes quantités de données. Par conséquent, dans le domaine du calcul scientifique, des technologies telles que l’apprentissage automatique sont appliquées à de nombreuses disciplines telles que la climatologie, la biologie, la pharmacie, l’épidémiologie, la science des matériaux, la cosmologie et même la physique des hautes énergies pour fournir des modèles améliorés et des méthodes de simulation plus avancées. Par exemple, l’apprentissage profond est utilisé pour aider au développement de médicaments, prédire les épidémies et classer les tumeurs sur la base de l’imagerie médicale, etc.
La simulation de recherche scientifique et l'informatique IA peuvent être combinées très efficacement car toutes deux nécessitent des modèles et des données. En règle générale, la simulation utilise des modèles (mathématiques) pour générer des données, et l'analyse (IA) utilise des données pour générer des modèles. Les modèles obtenus à l'aide de méthodes analytiques peuvent être utilisés dans des simulations avec d'autres modèles ; les données générées par les simulations peuvent être utilisées dans l'analyse avec des données provenant d'autres sources. Cela forme un cercle vertueux de promotion mutuelle.
En plus de se compléter dans des domaines d'application spécifiques, le HPC et l'IA ont de nombreuses connexions dans les domaines des méthodes de développement de base, des logiciels et de l'infrastructure logicielle et de l'architecture matérielle de l'IA. Dans le même temps, les deux sont plus largement connectés. Par exemple, l'IA peut être utilisée pour guider les simulations, ajuster plus rapidement les paramètres des applications de simulation, fournir des fonctions de noyau informatique personnalisées et combiner le contenu HPC traditionnel et informatique neuromorphique, etc. L’IA&ML a une influence disruptive, comme on le dit souvent : « AL&ML ne remplacera pas les scientifiques, mais les scientifiques qui utilisent les outils AI&ML remplaceront ceux qui n’utilisent pas ces outils. »
Les futurs systèmes HPC seront personnalisables. Actuellement, le HPC dispose principalement de deux types de processeurs, CPU et GPU. À l'avenir, davantage d'unités différentes seront utilisées, telles que FPGA, accélérateur ML, puce ASIC, etc. De plus en plus de processeurs utilisant des structures et des paradigmes différents seront ajoutés aux systèmes informatiques HPC, tels que le traitement neuromorphique, l'informatique quantique et l'informatique optique, qui pourraient jouer un rôle de plus en plus important. Lors de la construction de nouveaux systèmes HPC, les utilisateurs pourront utiliser les modules et fonctions correspondants selon leurs besoins.
Le matériel HPC évolue constamment, y compris les machines informatiques scalaires, les machines informatiques vectorielles, les systèmes distribués, les accélérateurs, les machines informatiques à précision mixte, etc. Trois changements majeurs s’opèrent actuellement dans le domaine informatique : le calcul haute performance, le deep learning, ainsi que l’edge computing et l’intelligence artificielle. Les algorithmes et les logiciels devraient continuer à évoluer avec le matériel. Comme indiqué dans l'article de Leiserson et al., après la loi de Moore, il reste encore beaucoup à faire pour améliorer les performances finales des systèmes HPC grâce aux algorithmes, à l'architecture logicielle et matérielle.
Réponse 1 : Le GPU fournit aux ordinateurs de puissantes capacités de calcul numérique. Par exemple, 98 % de la puissance de calcul des supercalculateurs provient des GPU. Et le déplacement des données entre le CPU et le GPU prend beaucoup de temps. Afin de réduire les déplacements coûteux de données, le GPU et le CPU peuvent être rapprochés l'un de l'autre, en utilisant des méthodes de conception de puces telles que les Chiplets ou des voies de mise en œuvre plus pratiques. De plus, la méthode consistant à rapprocher directement les données et les unités de traitement correspondantes sera également très utile pour résoudre le problème des coûts élevés de transport des données.
Question 2 : Nous avons observé un phénomène selon lequel de nombreux algorithmes d'apprentissage automatique actuels peuvent évoluer avec le matériel et s'influencer mutuellement. Par exemple, Nvidia et d'autres sociétés ont spécialement conçu une architecture dédiée pour le modèle Transformer, qui présente actuellement les meilleures performances dans le domaine ML, rendant le Transformer plus facile à utiliser. Avez-vous observé un tel phénomène et quels sont vos commentaires ?
Réponse 2 : C'est un très bon exemple de la façon dont la conception matérielle et d'autres aspects se renforcent mutuellement. Actuellement, de nombreux chercheurs en matériel informatique accordent une attention particulière aux changements survenus dans le secteur et portent des jugements sur les tendances. La co-conception d'applications avec du matériel peut améliorer considérablement les performances et vendre davantage de matériel. Je suis d'accord avec cette affirmation de "co-évolution des algorithmes et du matériel".
Question 3 : Vous avez souligné que l'avenir du calcul haute performance sera un hybride hétérogène. L'intégration de ces pièces sera un problème très difficile et pourrait même conduire à une dégradation des performances. Si nous utilisons uniquement le GPU, cela peut entraîner de meilleures performances. Qu'en penses-tu?
Réponse 3 : Actuellement, le CPU et le GPU sont très faiblement couplés dans les ordinateurs hautes performances, et les données doivent être transférées du CPU au GPU pour le calcul. À l’avenir, la tendance à utiliser différents matériels pour les coupler se poursuivra. Par exemple, l’utilisation de matériel spécialisé pour les calculs ML peut encore améliorer le GPU. En chargeant des algorithmes liés au ML sur l'accélérateur correspondant, les détails de l'algorithme sont exécutés sur l'accélérateur et les résultats du calcul sont transmis au processeur correspondant. À l’avenir, des accélérateurs quantiques enfichables pourront également être mis en œuvre pour exécuter les algorithmes quantiques correspondants, etc.
Question 4 : Le HPC coûte très cher, notamment pour les chercheurs et les petites et moyennes entreprises. Existe-t-il des méthodes telles que le cloud computing qui peuvent rendre le HPC abordable pour les enseignants, les étudiants et les petites et moyennes entreprises engagées dans la recherche ?
Réponse 4 : Aux États-Unis, l'utilisation du HPC nécessite de soumettre une demande pertinente au service concerné, décrivant le problème étudié et la quantité de calcul nécessaire. S’il est approuvé, il n’y a pas lieu de s’inquiéter du coût de l’utilisation du HPC. Une étude a été menée aux États-Unis pour déterminer si tous les HPC devaient être convertis en systèmes basés sur le cloud. Les résultats montrent que Les solutions basées sur le cloud sont 2 à 3 fois plus chères que l'utilisation directe de systèmes HPC. Il est important de noter les hypothèses économiques derrière cela : le HPC est utilisé par suffisamment de personnes, et les problèmes à résoudre nécessitent parfois l'utilisation de l'intégralité du système HPC. Dans ce cas, il est préférable de disposer d’un HPC dédié plutôt que d’acheter des services cloud. C’est la situation actuelle observée aux États-Unis et en Europe.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!