Providing the ARCHER community with adjoint modelling tools for high-performance oceanographic and cryospheric computation
- Start date
- 15 February, 2015
In recent years, adjoint methods have been used to gain unique insights into the ocean and cryosphere. However, the use of adjoint models on large-scale problems suitable for high-performance computing remains relatively limited due to poor access to efficient, cost-effective adjoint modelling tools. Although adjoint models are computationally expensive, requiring at least five times more CPU hours than their forward versions, adjoint sensitivity calculations are much more efficient than the alternative method of evaluating perturbed forward models [i.e. O(1) instead of O(n) function evaluations for a simple gradient calculation, with n on the order of several thousand for the applications considered here]. Furthermore, adjoint models remain the only practical means by which to construct observationally-constrained estimates of the state of the ocean (i.e. state estimates) in an internally-consistent way that also satisfies the model equations and boundary conditions. We aim to improve the UK’s adjoint modelling skill by making adjoint methods more efficient and accessible on ARCHER.
In this project, we will develop, optimise, and document a forward model test suite and an adjoint model test suite that can be used as the foundation for future numerical sensitivity experiments and state/parameter estimates. These test suites will complement the existing MITgcm verification experiments that come with the source code.
While the verification suite is designed to be run quickly and on any platform as a simple code regression check, our proposed suite will be specifically designed to test and exploit ARCHER’s large-scale parallel computational environment and will focus on adjoint applications. Since both ocean and ice models must rapidly and repeatedly solve large linear systems, part of this work will involve optimising these linear solvers using an external library (PETSc) – this will improve forward and adjoint computation equally.