Skip to Main content Skip to Navigation
Preprints, Working Papers, ...

Automatic generation of parallel and coherent code using the YAO variational data assimilation framework

Abstract : Variational data assimilation consists in estimating key control parameters of a numerical model in order to minimize the misfit between the model values and the actual observations. The YAO framework is a code generator based on a modular graph decomposition of the model; it is dedicated for helping data assimilation experiment achievement. YAO is particularly suited for generating adjoint codes of numerical models, which is the basis for variational assimilation experiments. In this paper, we first present an algorithm which allows to check the consistency of the sequence of calculations defined by the user. We then present how the YAO modular graph structure enables automatic and efficient parallelization of the generated code using OpenMP on shared memory architectures. The YAO modular graph permits to completely avoid the data race conditions (write/write conflicts). The performance tests performed on both simple and complex actual applications chosen in the geophysical domain have shown a good speedup on a multicore CPU.
Complete list of metadatas

https://hal.sorbonne-universite.fr/hal-00783328
Contributor : Luigi Nardi <>
Submitted on : Thursday, January 31, 2013 - 10:09:11 PM
Last modification on : Wednesday, January 13, 2021 - 11:12:04 AM
Long-term archiving on: : Wednesday, May 1, 2013 - 3:59:11 AM

File

LuigiNardiJournal2013.pdf
Files produced by the author(s)

Identifiers

Citation

Luigi Nardi, Fouad Badran, Pierre Fortin, Julien Brajard, Sylvie Thiria. Automatic generation of parallel and coherent code using the YAO variational data assimilation framework. 2013. ⟨hal-00783328v1⟩

Share

Metrics

Record views

385

Files downloads

163