Source-transformation Differentiation of a C++-like Ice Sheet model

Abstract : Algorithmic Differentiation (AD) has become one of the most powerful tools to improve our understanding of the Earth System. If AD has been used by the ocean and atmospheric circulation modeling community for almost 20 years, it is relatively new in the ice sheet modeling community. The Ice Sheet System Model (ISSM) is a C++, object-oriented, massively parallelized, new generation ice sheet model that recently implemented AD to improve its data assimilation capabilities. ISSM currently relies on Object Overloading through ADOL-C and AMPI. However, experience shows that Object Overloading AD on ISSM is significantly more memory intensive compared to the primal code. We want to investigate other AD approaches to improve the performance of the AD adjoint. Yet, to our knowledge, there is no source-to-source AD tool that supports C++. To overcome this problem, we have developed a prototype of ISSM entirely in C, called Boreas, in order to test source-to-source transformation and compare the performance of these two approaches to AD. Boreas is a clone of ISSM, the main difference with ISSM is that all the objects are converted to C-structures and some function names have been adapted in order to be unique, but the code architectures are identical. The programming style of Boreas is a first attempt at defining a programming style of (or a sub-language of) C++ that source-transformation AD could handle. We present here the first results of Source-Transformation AD of Boread with the AD tool Tapenade.
Type de document :
Communication dans un congrès
AD2016 - 7th International Conference on Algorithmic Differentiation, Sep 2016, Oxford, United Kingdom. AD2016 - 7th International Conference on Algorithmic Differentiation, pp.4, 2016, 〈http://www.autodiff.org/ad16/〉
Liste complète des métadonnées

Littérature citée [4 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01413381
Contributeur : Laurent Hascoet <>
Soumis le : vendredi 9 décembre 2016 - 16:49:01
Dernière modification le : jeudi 11 janvier 2018 - 16:36:44
Document(s) archivé(s) le : mardi 28 mars 2017 - 00:47:53

Fichier

AD2016HascoetMorlighem.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-01413381, version 1

Collections

Citation

Laurent Hascoët, Mathieu Morlighem. Source-transformation Differentiation of a C++-like Ice Sheet model. AD2016 - 7th International Conference on Algorithmic Differentiation, Sep 2016, Oxford, United Kingdom. AD2016 - 7th International Conference on Algorithmic Differentiation, pp.4, 2016, 〈http://www.autodiff.org/ad16/〉. 〈hal-01413381〉

Partager

Métriques

Consultations de la notice

341

Téléchargements de fichiers

56