Yann Meurdesoif, O. Abramkina, Y. Wang, M.H. Nguyen, A. Caubel
Avec la montée du nombre de cœurs de calcul, les I/O deviennent un important goulet d’étranglement. En effet, lors du dernier exercice CMIP5, ayant généré plus 2 Po de données, plus du temps a été passé à écrire les données et à les post-traiter qu’à effectuer les simulations. A partir de 2010, afin d’aborder plus sereinement le prochain exercice CMIP6, j’ai conçu et développé la bibliothèque XIOS sur 3 principaux axes : 1) Souplesse : la description des sorties est externalisée dans un fichier XML hiérarchisé, déchargeant les modèles de cette tâche. 2) Performance : les données à écrire sont envoyées de manière totalement asynchrone à des processus dédiés, « les serveurs I/O », qui utilisent le parallélisme du système de fichiers pour accélérer les écritures et réduire drastiquement leur impact sur le temps de calcul. 3) Post-traitement « In situ » : les données sont traitées en parallèle sur tous les cœurs de calcul au cours de la simulation, plutôt que d’être relues par une chaine de post-traitement complexe s’exécutant sur un cluster spécialisé.
XIOS fournit des solutions innovantes et performantes pour sortir les I/O lors de très grosses simulations, sur plusieurs dizaines de milliers de cœurs (NEMO, DYNAMICO,…). Il apporte un gain en fiabilité à la chaine de calcul et accélère les temps de retour. Sa souplesse d’utilisation en fait un outil très apprécié des utilisateurs non spécialistes du HPC. Ces qualités l’ont fait adopter par de nombreux modèles en France et en Europe : l’ensemble des modèles du couplé de l’IPSL (7 modèles), le consortium NEMO (6 instituts en Europe), l’IFREMER (MARS3D et ROMS), l’IGE à Grenoble (MAR) et plus récemment l’ensemble des modèles de climats de Météo-France. La météo anglaise (Met’ Office) a également intégré XIOS dans ses modèles et évalue actuellement la possibilité de sortir à travers XIOS les données de larges ensembles (>10) à haute résolution (~1/4°). Ils explorent actuellement XIOS comme piste pour leur prochaine génération de modèles (projet LFRIC, similaire à DYNAMICO). Le centre de calcul de Barcelone (BSC) a récemment effectué le portage de XIOS au sein du modèle européen EC-EARTH.
Pour gérer l’ensemble des données du prochain exercice CMIP6 (14 Po seront distribuées), l’IPSL et Météo-France ont adopté un workflow commun basé sur XIOS, évitant ainsi la coûteuse phase de post-traitement avant la distribution à travers la grille de données climats ESGF.
Par sa diffusion rapide au sein la communauté climatique Européenne, XIOS a bénéficié des ressources de plusieurs grands projets Français et Européens : projets Européens IS-ENES-1 et IS-ENES-2, l’ANR CONVERGENCE, et les Centres d’Excellences ESIWACE et EoCoE. Je collabore activement avec l’IDRIS (R. Lacroix) et la Maison de la Simulation (J. Dérouillat), qui prennent part au développement, étoffant ainsi « l’équipe XIOS ». Celle-ci a mis en place un site web dédié, un gestionnaire de version, un forum utilisateur et une documentation détaillée, et organise régulièrement des formations (formation XIOS, PATC I/O PRACE). La bibliothèque poursuit en permanence son développement par ajout constant de nouvelles fonctionnalités demandées par ses utilisateurs. Son volume approche aujourd’hui les 110 000 lignes de codes.
Dans les prochaines années, XIOS va poursuivre son développement à travers les financements des projets Européens IS-ENES3 et ESIWACE2 (en soumission). Une version OpenMP de XIOS sera mise en production permettant d’accélérer encore la partie workflow. En collaboration avec le CERFACS, nous travaillerons également à intégrer des fonctionnalités de couplage au sein du workflow XIOS, de façon à unifier l’interfaçage des flux issus de nos différents modèles.
BIlan_theme3_XIOS.pdf