Les applications météorologiques et climatiques comptent parmi les plus importantes pour le calcul haute performance, servant souvent de raisons d'être et charges de travail phares pour les supercalculateurs les plus puissants du monde. Mais la modélisation météorologique et climatique de nouvelle génération reste extrêmement difficile, à la fois en raison de l’énormité de la tâche et du code difficile à faire évoluer qui a été développé pour faire face à cette tâche au cours de nombreuses années.
Startup basée à Boulder TempoQuest s'efforce d'assumer une partie de ce fardeau, en portant la majeure partie de l'un des codes météorologiques les plus importants – le modèle de recherche et de prévision météorologiques (WRF) – sur des GPU. Fil HPC s'est récemment entretenu avec Christian Tanasescu, COO et CTO de TempoQuest, à propos de leur nouveau modèle météorologique.
Le besoin de vitesse du WRF
Le modèle WRF actuel, a déclaré Tanasescu, est le produit de plusieurs décennies de développement dirigé par le Centre national de recherche atmosphérique (NCAR) et la National Oceanic and Atmospheric Administration (NOAA).
"Il s'est développé au fil du temps, atteignant aujourd'hui un niveau de maturité qui en fait l'un des codes les plus utilisés, en particulier pour les modèles régionaux", a-t-il déclaré, ajoutant que les grands pays ont tendance à avoir leurs propres modèles mondiaux. "Mais lorsqu'il s'agit d'utilisations commerciales – comme les énergies renouvelables, l'agriculture, l'aviation, la logistique, les véhicules sans pilote… Ce dont ils ont besoin, ce sont des prévisions à très, très haute résolution, précises et hyper-locales. Vous ne les obtenez pas du gouvernement, des laboratoires nationaux."
Le WRF répond à bon nombre de ces besoins, avec des dizaines de milliers d'utilisateurs dans plus de 160 pays. Mais il y a un problème : en tant que recueil immensément complexe de code basé sur Fortran, WRF n'a pas suivi les dernières et meilleures accélérations matérielles et est principalement exécuté sur des systèmes basés sur CPU.
Tanasescu a déclaré que de nombreux efforts ont été déployés pour accélérer les modèles WRF dans des organisations comme le NCAR et la NOAA – mais a ajouté que ces efforts se sont concentrés sur l'accélération de certaines parties des modèles météorologiques. "Parce que vous mélangez les données entre les CPU et les GPU et que vous exécutez essentiellement une partie du travail sur le CPU, cela signifie qu'il fonctionne en mode hybride", a-t-il déclaré. "Et le mode hybride n'est pas le plus efficace."
Entrez TempoQuest. Tanasescu a déclaré que lui et ses collègues avaient remarqué il y a quelques années le mouvement vers les accélérateurs et voyaient une opportunité dans l'espace des modèles météorologiques et climatiques. Aujourd'hui, TempoQuest entre sur un marché dominé par les organisations gouvernementales et les applications open source en tant qu'éditeur de logiciels indépendant (ISV) qui « s'efforce d'adapter les modèles développés dans les laboratoires nationaux aux superordinateurs les plus puissants du moment ».
GPU WRF, alias AceCAST
Après un effort de développement de plusieurs années, l'équipe TempoQuest a produit ce qu'elle appelle « GPU WRF » lorsqu'elle s'adresse à la communauté scientifique ou « AceCAST » lorsqu'elle s'adresse aux clients commerciaux. TempoQuest a refactorisé le noyau dynamique du WRF, ainsi que d’autres éléments clés du modèle, pour créer une nouvelle application accélérée qui s’exécute « entièrement sur GPU – exclusivement sur GPU", a déclaré Tanasescu. "C'est probablement le seul code météorologique et climatique qui a atteint ce niveau de portage sur GPU."
Au cours du développement, l'équipe du TempoQuest a utilisé une étude NCAR qui a identifié les éléments les plus utilisés de la structure du WRF, qui repose largement sur un ensemble de schémas physiques et d'options au sein de ces schémas physiques.
"Sur la base de cette étude, nous avons donné la priorité à la physique à porter sur GPU", a déclaré Tanasescu. "Nous avons porté les trois principales options pour chaque schéma majeur – ou quatre, dans certains cas ; avec cet ensemble d'options de schéma physique prises en charge, nous pouvons exécuter plus de 85 % de la plupart des prévisions météorologiques utilisées aujourd'hui."
Bien que cela signifie que AceCAST est un sous-ensemble de WRF – et non un port complet – Tanasescu affirme que pour ces 85 % de prévisions, le modèle tient largement la route. « À peu près », a-t-il déclaré, le AceCAST est environ 10 à 16 fois plus rapide que le WRF sur une base nœud à nœud, ce qui maintient le coût des ressources constant par rapport à un système à quatre GPU. Autour du côté 10× de cette gamme, les processeurs Epyc « Milan » d’AMD ; du côté 16×, les processeurs Intel.
Tanasescu a fourni un graphique illustrant cet effet, montrant les temps d'exécution sur Microsoft Azure pour AceCAST sur une instance GPU individuelle (en particulier, un ND A100 v4 exemple, qui comprend huit GPU Nvidia A100) par rapport au WRF sur les instances basées sur le processeur d'Azure (en particulier, les instances basées sur AMD Epyc HBv3 instances) en multiple de deux, quatre et huit.

Runtime pour WRF sur des instances basées sur CPU (en multiples de 2, 4 et 8) par rapport à AceCAST sur une seule instance basée sur GPU sur Microsoft Azure. Image gracieuseté de TempoQuest.
Si vous maintenez les performances constantes, a déclaré Tanasescu, le coût d'exécution du processeur WRF est environ trois fois plus élevé. Alternativement, en maintenant la durée d'exécution et le coût constants, les utilisateurs pourraient augmenter la résolution avec AceCAST ; Les modèles WRF « avancés » fonctionnent généralement à une résolution de 3 km, a déclaré Tanasescu, tandis que le WRF peut utiliser les mêmes ressources pour fonctionner à une résolution de 1 km ou moins. "En procédant ainsi, nous avons constaté une bien meilleure corrélation avec la vérité sur le terrain", a ajouté Tanasescu.
La plupart des options physiques de AceCAST ont été portées sur OpenACC, tandis que six options « coûteuses en calcul » se trouvent dans CUDA. Tanasescu a déclaré que NCAR met à jour le WRF environ deux fois par an, ce qui permet au TempoQuest de suivre facilement le rythme. À l’heure actuelle, a-t-il déclaré, AceCAST prend en charge « essentiellement tout cluster Linux [x86] doté de GPU Nvidia » ; la société est « également sur le point de sortir sur les GPU AMD » – y compris les GPU MI250X qui alimentent le système exascale Frontier, entre autres supercalculateurs majeurs. Le AceCAST utilise un seul cœur de processeur par GPU dans le système, et uniquement pour l'initialisation des tâches et les tâches d'E/S.

Une illustration de l’utilisation des ressources du AceCAST. Image gracieuseté de TempoQuest.
Tanasescu indique que le TempoQuest prévoit également de prendre en charge les GPU Intel de la série Max (née Ponte Vecchio) pour une utilisation sur le prochain supercalculateur exascale Aurora du Laboratoire national d'Argonne. Il a déclaré que les chercheurs d'Argonne ont utilisé des exécutions d'ensemble du GPU WRF dans leurs études climatiques et a cité une collaboration antérieure avec Argonne et Nvidia dans laquelle une version du modèle a pu évoluer sur 512 nœuds (environ 3 000 GPU) sur le supercalculateur Summit du laboratoire national d'Oak Ridge. (Ce type de mise à l'échelle est extrême pour le TempoQuest, Tanasescu affirmant que la plupart des tâches du AceCAST utilisent entre quatre et 12 GPU.)

Tests de mise à l'échelle pour le CPU WRF par rapport au GPU WRF sur Summit. Image gracieuseté de TempoQuest.
La stratégie de TempoQuest
L'adoption sur le marché a été un défi pour TempoQuest. Tanasescu a déclaré qu'en tant que petite startup, le « manque de visibilité » était un problème pour eux (« Très peu de gens savent qu'une telle capacité existe ! »). Il a ajouté que des parties prenantes telles que les National Labs et la NOAA sont habituées aux applications open source, ce qui fait de la nature exclusive du AceCAST un obstacle à l'adoption, et que l'accès limité aux GPU des petits clients constitue un autre obstacle – bien que, de l'autre côté de la médaille, il a déclaré que la pression exercée sur les opérateurs système pour trouver des applications pour les supercalculateurs phares à forte densité GPU a été une aubaine.
Pour les clients commerciaux, Tanasescu a déclaré que AceCAST est proposé directement sous forme d'abonnement logiciel et via un modèle de logiciel en tant que service (SaaS) basé sur le cloud qui fonctionne sur Rescale (avec backend activé AWS et Azur). TempoQuest a également créé un flux de travail de modélisation automatisé (AMF) qui sert de « sorte de wrapper autour de AceCAST », qui gère les fonctions nécessaires ou souhaitables pour un flux de travail de prévision, mais qui ne sont pas incluses dans WRF (par exemple, le prétraitement, la génération de grille et la visualisation). Tanasescu a déclaré que les clients du secteur des énergies renouvelables du TempoQuest utilisent le AceCAST pour prévoir le profil du vent et l'irradiation solaire afin d'estimer la production d'énergie. TempoQuest travaille également avec des sociétés de satellites pour intégrer des données satellite exclusives dans des modèles météorologiques afin de prendre en charge des cas d'utilisation tels que les prévisions hyperlocales pour les lancements de ports spatiaux.
Tanasescu a ajouté que TempoQuest envisageait d'assouplir ou non son statut de source fermée, citant des discussions en cours avec les laboratoires gouvernementaux. Mais, pour l’instant, TempoQuest reste – selon les mots de Tanasescu – « le seul véritable éditeur de logiciels HPC en matière de météo et de climat ».



