360 likes | 419 Vues
22 Octobre 2001. Projet d’Assimilation par Logiciel Multiméthode Comment structurer et gérer un projet de calcul à hautes performances Andrea Piacentini et le groupe - CERFACS. Le contexte.
E N D
22 Octobre 2001 Projet d’Assimilation par Logiciel Multiméthode Comment structurer et gérer un projet de calcul àhautes performances Andrea Piacentini et le groupe - CERFACS
Le contexte La mission de MERCATOR consiste à développer et progressivement mettre en place dans les prochaines années une capacité opérationnelle d'analyse et prévision de l'océan global. Il s'agit d'être capable de décrire et prévoir l'état de l'océan à tout instant (en temps réel), dans tout son volume (de la surface jusqu'au fond et tout autour du globe) et aux différentes échelles qui le caractérisent (des grandes échelles planétaires aux phénomènes tourbillonnaires).
Le contexte Implémentation temps-réel
Le contexte • Etape 1 : Janvier 2001 : exploitation du premier prototype Mercator (PSY1). • Le prototype PSY1 • inaugure la filière "routine temps réel" de MERCATOR avec un premier bulletin le 17 janvier 2001, et un rythme d'exploitation hebdomadaire tout au long de l'année, • modèle de l'Atlantique Nord et Tropical de moyenne résolution (1/3°) assimilant les données altimétriques et in situ, • acquiert en routine temps réel toutes les observations océaniques disponibles et assure donc sur la base de ces observations un monitoring de l'océan global • Analyse et prévision à moyenne résolution (1/3°) sur l'Atlantique Nord et Tropical • Acquisition des Observations sur l'Océan Global
Le contexte • Etape 2 : Janvier 2002 : exploitation du deuxième prototype Mercator (PSY2). • Le prototype PSY2 • inaugure la filière "haute résolution" de MERCATOR dans les mers européennes, • met en œuvre en routine temps réel un modèle de l'Atlantique Nord et de la Méditerranée à haute résolution (1/15°) assimilant les données altimétriques et in situ, et élabore donc sur cette base des analyses et des prévisions de l'état tridimensionnel de l'océan dans ces régions. • acquiert en routine temps réel les observations altimétriques et In Situ sur l'Océan Global, et les combine pour générer une analyse tridimensionnelle. • Analyse et prévision à haute résolution (1/15°) sur l'Atlantique Nord et la Méditerranée • Analyse à base d'Observations sur l'Océan Global
Le contexte • Etape 3 : Janvier 2003 : exploitation du troisième prototype Mercator (PSY3). • Le prototype PSY3 • inaugure la filière "GODAE" de MERCATOR, • met en œuvre en routine temps réel un modèle de l'Atlantique Nord et de la Méditerranée à haute résolution (1/15°) assimilant les données altimétriques et in situ, • met en œuvre en routine temps réel un modèle de l'Océan Global à moyenne résolution (1/4°) assimilant les données altimétriques et in situ, et élabore donc sur cette base des analyses et des prévisions de l'état tridimensionnel de l'océan dans ces régions. • Analyse et prévision à haute résolution (1/15°) sur l'Atlantique Nord et la Méditerranée • Analyse et prévision à moyenne résolution (1/4°) sur l'Océan Global
Le contexte • Les "gens de la mer" • Quel courant fera-t-il demain ? • Les "gens de science" • Comment fonctionne la "machine océan" ? • Tourbillons dans l'Atlantique nord-est(Crédits SHOM) • La prévision de la houle permet de dimensionner les digues pour minimiser l'agitation de la mer dans un port.(Crédits ACRI) • Les "gens du climat" • Que nous réserve la saison prochaine ? • Les "gens du côtier" • D'où viennent ces eaux qui baignent nos côtes ?
L’assimilation Corriger la prévision précédente à l’aide des observations avant d’effectuer la prévision suivante. Détermination de la meilleure condition initiale pour la prévision. Méthodes 3D Correction de l’état du système à chaque observation. Observations Prévision Analyse temps Prochaine C.I. Méthodes 4D Correction de la condition initiale pour déterminer la trajectoire optimale sur la fenêtre d’assimilation. temps
L’assimilation y = H(x) xb ébauche H opérateur d’observation xti+1 = M(xti) M modèle d’évolution MINIMISER J = || x – xb ||P-1 + ||H(x)-y0||R-1 P et R statistiques d’erreur temps Analyse (condition initiale optimale) xa
L’assimilation Le besoin de MERCATOR: le découplage
La genèse Le CERFACS (Centre Européen de Recherche et Formation Avancee en Calcul Scientifique - http://www.cerfacs.fr) est parmi les principaux laboratoires de recherche et de formation au monde travaillant sur des problèmes de calcul scientifique de grande dimension. Créée en 1990, l’équipe "Climate Modelling and Global Change" (http://www.cerfacs.fr/globc)est aujourd’hui mondialement reconnue, dans les domaines de la modélisation du climat, de la prévision saisonnière et de l’assimilation de données. Parmi ses principales réalisations figure le coupleur OASIS utilisédans les principaux centres de recherche climatique pour le couplage océan - atmosphère La solution: confier le développement d’un coupleur ad hoc au CERFACS
La genèse ROJET D' SSIMILATION PAR OGICIEL ULTI-METHODES Ainsi est né
Les phases • Nomenclature projet CNES : • phase 0 : définition • phase A : étude de faisabilité • revue de fin de phase A : décision de faisabilité • phase B : prototypage • revue(s) de phase B : adéquation des prototypes • phase C : réalisation définitive • phase D : exploitation (pré-)opérationnelle Exploitation expérimentale des prototypes
Phase 0 • En 1996 • Définition du cahier de charges de PALM • Contraintes : • Flexibilité • Performances • Calendrier MERCATOR
Phase A • En 1997 • 2 volets : • faisabilité théorique : • modularité des applications • réutilisation des composantes • échanges entre composantes • faisabilité technique : • revue des possibilités • dimensionnement du problème • simulation des performances, évaluation du surcoût (2.5%)
Fin de Phase A • Revue de projet à l’issue de la phase A : • production de documents et présentation au groupe de revue • FEPS : Fiches d’Évaluation des Problèmes Soulevés • d-revue : réponses au FEPS et compléments d’information • A la fin de la revue : • premier site web avec tous les documents produits et les résultats du simulateur de performances • article sur le formalisme PALM (Lagarde, Piacentini, Thual; A new representation of data-assimilation methods: The PALM flow-charting approach; Q.J.R.M.S 2001, 127, pp. 189-207) • Définition complète du coupleur PALM
Les critères conception modularité des applications portabilité du logiciel PALM implémentation conception parallélisme communications à hautes performances implémentation Flexibilité Performances
Modularité • Formalisme « flux de données » • décomposition en unités • échanges d'objets • enchaînement d'unités
Modularité • Formalisme « flux de données » • Séparation physique / algorithme • indépendance unités / algorithme interchangeabilité réutilisation • décomposition en unités • échanges d'objets • enchaînement d'unités • interfaces « end points » dans les unités • information complémentaire dans la description de l'algorithme • séparation entre physique et algèbre
Modularité • Formalisme « flux de données » • Séparation physique / algorithme • indépendance unités / algorithme interchangeabilité réutilisation • décomposition en unités • échanges d'objets • enchaînement d'unités • interfaces « end points » dans les unités • information complémentaire dans la description de l'algorithme • Même code avec plusieurs rôles • Indépendance de codage entre unités • approche MPMD = Multiple Programs Multiple Data • c.a.d.les unités sont implémentees comme codes exécutables • séparation entre physique et algèbre
Modularité • Formalisme « flux de données » • Séparation physique / algorithme • indépendance unités / algorithme interchangeabilité réutilisation • décomposition en unités • échanges d'objets • enchaînement d'unités • interfaces « end points » dans les unités • information complémentaire dans la description de l'algorithme • Même code avec plusieurs rôles • Indépendance de codage entre unités • approche MPMD = Multiple Programs Multiple Data • c.a.d.les unités sont implémentees comme codes exécutables • Boite à outils d'algèbre • opérations algébriques de base • solveurs d'équations linéaires • solveurs de problèmes de valeurs propres et de décomposition en valeurs singulières • minimiseurs • routines de statistiques • procédures de tests utiles en assimilation de donnes • procédures définies par l'utilisateur • séparation entre physique et algèbre
Parallélisme Deux niveaux de parallélisme Branches de calcul Unités distribuées Optimisation : ensemble d'unités qui partagent un espace mémoire commun (dans un contexte SPMD)
Implémentation • Portabilité • Interfaces avec codes Fortran (77 et 90), C, C++ • PALM écrit avec des langages standard (C, F90) • Contexte UNIX • Mécanismes de communication standard (MPI, MPI2) • Appel à bibliothèques d'algèbre largement diffusées
Implémentation • Communications à hautes performances • Accès au mécanismes hardware • cross bar pour Fujitsu VPP • Sx-gmem pour NEC Sx • via implémentations propriétaires de MPI • via couches optimisées (layered implementation de PALM)
Phase B • De 1998 à 2001 • Stratégie de prototypage : • MPI2 non disponible : prototype SPMD (MPI1), version définitive MPMD • lisibilité : prototype F90, version définitive C • algèbre : basée sur des librairies largement diffusées • applications test : • thèse de Thierry Lagarde (nouvelles méthodes parallèles) • thèse de Sébastien Massart (assimilation en chimie atmosphérique) • thèse de Patrick Vidard (contrôle de l’erreur modèle) • Prototype SYstème MERCATOR • stages
Le prototype en Phase B • Couplage dynamique: lancement et terminaison run-time des composantes émulés en SPMD • Monitorage postmortem (film) • Enchaînement dynamique des composantes avec exécutions conditionnelles. Plusieurs séquences de contrôle s’exécutant en parallèle • Paradigme parallèle SPMD • Communications entre tous les processus, directes si possible (im) • Interface « end points »; échanges asynchrones • Echanges d’objets distribués; jusqu’à 7 dim plus le temps • Boîte à outils algébrique
La gestion en Phase B • Gestion technique : • une norme de codage F90, F77, C, Tcl • entêtes • commentaires • noms des variables auto-explicatifs • un outil de génération automatique de documentation : ProDOC à partir des commentaires à la norme PALM produit du LaTeX, du postscript et du html; 4 niveaux de verbosité • gestion des sources sous CVS • tests et benchs sur le plus grand nombre possible de machines
La gestion en Phase B ? • Gestion des ressources : • répartition des tâches • prise en compte des motivations • prise en compte des compétences • prise en compte de la disponibilité • durée des contrats
La gestion en Phase B • transmission de l’information • réunions périodiques avec compte rendu • site web avec intranet • technical notes • le phasage et le calendrier • outil tpass de suivi des tâches
La gestion en Phase B • Gestion des collaborations : • répartition des tâches • problèmes“politiques” • protocole d’accord • suivi et visites
La gestion en Phase B • Gestion de la diffusion et de l’assistance utilisateurs : • politique de diffusion • releasing • site web publique • documentation • tutorials et formation • mailing lists (palm, palmhelp) • F.A.Q. • retour d’expérience et bugs
La gestion en Phase B • Gestion de la recherche associée : • à travers les applications • thèse de Thierry Lagarde (nouvelles méthodes parallèles) • thèse de Sébastien Massart (assimilation en chimie atmosphérique) • thèse de Patrick Vidard (contrôle de l’erreur modèle) • activités en assimilation de données de l’équipe Global Change • à travers le développement • stage de Charles Martin sur les descripteurs d’objets distribués et sur l’implémentation de l’algèbre parallèle • stage de Jean Tshimanga sur le choix de minimiseurs adaptés aux problèmes d’assimilation de données océanique
Phase C • Depuis juillet 2001 • transition progressive des ressources du développement du prototype à celui de la version définitive • tirer profit de l’expérience acquise avec le prototype • redéfinition et redistribution des tâches • nouvelle documentation • politique de diffusion à rediscuter • garantir l’évolutivité et la maintenance du code • garantir la permanence du groupe de travail • implication plus importante dans la recherche associée
Pour plus d’informations http://www.cerfacs.fr/~palm