Some numerical experiments with variable-storage quasi-Newton algorithms
Mathematical Programming: Series A and B
Recipes for adjoint code construction
ACM Transactions on Mathematical Software (TOMS)
Circumventing Storage Limitations in Variational Data Assimilation Studies
SIAM Journal on Scientific Computing
Evaluating derivatives: principles and techniques of algorithmic differentiation
Evaluating derivatives: principles and techniques of algorithmic differentiation
Recomputations in reverse mode AD
Automatic differentiation of algorithms
Future Generation Computer Systems
Journal of Discrete Algorithms
Generating efficient derivative code with TAF
Future Generation Computer Systems
Coupling tangent-linear and adjoint models
ICCSA'03 Proceedings of the 2003 international conference on Computational science and its applications: PartII
Accelerating data-intensive science with Gordon and Dash
Proceedings of the 2010 TeraGrid Conference
Automatic generation of parallel code for Hessian computations
IWOMP'05/IWOMP'06 Proceedings of the 2005 and 2006 international conference on OpenMP shared memory parallel programming
A parallel Jacobian-free Newton-Krylov solver for a coupled sea ice-ocean model
Journal of Computational Physics
Hi-index | 0.00 |
We describe computational aspects of automatic differentiation applied to global ocean circulation modeling and state estimation. The task of minimizing a cost function measuring the ocean simulation versus observation misfit is achieved through efficient calculation of the cost gradient w.r.t. a set of controls via the adjoint technique. The adjoint code of the parallel MIT general circulation model is generated using TAMC or its successor TAF. To achieve a tractable problem in both CPU and memory requirements, in the light of control flow reversal, the adjoint code relies heavily on the balancing of storing versus recomputation via the checkpointing method. Further savings are achieved by exploiting self-adjointness of part of the computation. To retain scalability of domain decomposition-based parallelism, hand-written adjoint routines are provided. These complement routines of the parallel support package to perform corresponding operations in reverse mode. The unique feature of the TAF tool which enables the dumping of the adjoint state and restart the adjoint integration is exploited to overcome batch execution limitations on HPC machines for large-scale ocean and climate simulations. Strategies to test the correctness of the adjoint-generated gradient are presented. The size of a typical adjoint application is illustrated for the case of the global ocean state estimation problem undertaken by the SIO-JPL-MIT Consortium ''Estimating the Circulation and Climate of the Ocean'' (ECCO). Results are given by way of example.