Thèse soutenue

Formalisation et automatisation de YAO, générateur de code pour l’assimilation variationnelle de données

FR  |  
EN
Auteur / Autrice : Luigi Nardi
Direction : Fouad BadranSylvie Thiria
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 08/03/2011
Etablissement(s) : Paris, CNAM
Ecole(s) doctorale(s) : École doctorale Informatique, télécommunications et électronique de Paris
Partenaire(s) de recherche : Laboratoire : Centre d'études et de recherche en informatique et communications (Paris) - Laboratoire d'océanographie et du climat : expérimentations et approches numériques (Paris ; 2005-....)
Jury : Président / Présidente : Christophe Picouleau
Examinateurs / Examinatrices : Fouad Badran, Sylvie Thiria, Christophe Picouleau, Frédéric Chevallier, Patrick Siarry, Cédric Bastoul, Isabelle Herlin, Cyril Moulin
Rapporteurs / Rapporteuses : Frédéric Chevallier, Patrick Siarry

Résumé

FR  |  
EN

L’assimilation variationnelle de données 4D-Var est une technique très utilisée en géophysique, notamment en météorologie et océanographie. Elle consiste à estimer des paramètres d’un modèle numérique direct, en minimisant une fonction de coût mesurant l’écart entre les sorties du modèle et les mesures observées. La minimisation, qui est basée sur une méthode de gradient, nécessite le calcul du modèle adjoint (produit de la transposée de la matrice jacobienne avec le vecteur dérivé de la fonction de coût aux points d’observation). Lors de la mise en œuvre de l’AD 4D-Var, il faut faire face à des problèmes d’implémentation informatique complexes, notamment concernant le modèle adjoint, la parallélisation du code et la gestion efficace de la mémoire. Afin d’aider au développement d’applications d’AD 4D-Var, le logiciel YAO qui a été développé au LOCEAN, propose de modéliser le modèle direct sous la forme d’un graphe de flot de calcul appelé graphe modulaire. Les modules représentent des unités de calcul et les arcs décrivent les transferts des données entre ces modules. YAO est doté de directives de description qui permettent à un utilisateur de décrire son modèle direct, ce qui lui permet de générer ensuite le graphe modulaire associé à ce modèle. Deux algorithmes, le premier de type propagation sur le graphe et le second de type rétropropagation sur le graphe permettent, respectivement, de calculer les sorties du modèle direct ainsi que celles de son modèle adjoint. YAO génère alors le code du modèle direct et de son adjoint. En plus, il permet d’implémenter divers scénarios pour la mise en œuvre de sessions d’assimilation.Au cours de cette thèse, un travail de recherche en informatique a été entrepris dans le cadre du logiciel YAO. Nous avons d’abord formalisé d’une manière plus générale les spécifications deYAO. Par la suite, des algorithmes permettant l’automatisation de certaines tâches importantes ont été proposés tels que la génération automatique d’un parcours “optimal” de l’ordre des calculs et la parallélisation automatique en mémoire partagée du code généré en utilisant des directives OpenMP. L’objectif à moyen terme, des résultats de cette thèse, est d’établir les bases permettant de faire évoluer YAO vers une plateforme générale et opérationnelle pour l’assimilation de données 4D-Var, capable de traiter des applications réelles et de grandes tailles.