In 1991, CERFACS started the development of a software interface to couple existing ocean and atmosphere numerical General Circulation Models. Today, different versions of the OASIS3-MCT coupler are used by at least 65 modelling groups all around the world to couple more than 80 applications on different computing platforms1. OASIS3-MCT sustained development is ensured by a collaboration between CERFACS and the Centre National de la Recherche Scientifique (CNRS) and its maintainance and user support is regularly reinforced with additional resources coming from European and national projects.
The current OASIS3-MCT internally uses MCT, the Model
Coupling Toolkit2 (Larson et al 2005)
(Jacob et al 2005), developed by the Argonne National Laboratory in the USA. MCT implements fully parallel remapping, as a parallel matrix vector
multiplication, and parallel distributed exchanges of the coupling
fields, based on pre-computed remapping weights and addresses.
Its design philosophy, based on flexibility and minimal invasiveness,
is close to the OASIS3-MCT approach.
MCT has proven parallel performance and is, most notably, the
underlying coupling software used in National Center for Atmospheric
Research Community Earth System Model (NCAR CESM).
OASIS3-MCT is a portable set of Fortran 77, Fortran 90 and C routines. Low-intrusiveness, portability and flexibility are OASIS3-MCT key design concepts. After compilation OASIS3-MCT is a coupling library to be linked to the component models, and which main function is to interpolate and exchange the coupling fields to form a coupled system. OASIS3-MCT supports coupling of 2D logically-rectangular fields but 3D fields and 1D fields expressed on unstructured grids are also supported using a one dimension degeneration of the structures. Thanks to MCT, all transformations, including remapping, are performed in parallel on the set of source or target component processes and all coupling exchanges are now executed in parallel directly between the component processes via Message Passing Interface (MPI). OASIS3-MCT also supports file I/O using NetCDF and has python and C language bindings.
The developments realised in the different versions of OASIS3-MCT are described in Appendix B. To communicate with another component, or to perform I/O actions, a component model needs to include few specific calls to OASIS3-MCT Application Programming Interface (API). The namcouple configuration file is also largely unchanged, although several options are either added, deprecated, not used or not supported.
Results obtained with IS-ENES2 coupling technology benchmarks show that OASIS3-MCT performs as well as, and even better at very high number of cores, than other coupling technologies, at least for up to O(10000) cores. It is therefore very likely that OASIS3-MCT will provide an efficient and easy-to-use coupling solution for many climate modelling groups in the few years to come.