Minimal Repetition Dynamic Checkpointing Algorithm for Unsteady Adjoint Calculation
Author(s)Wang, Qiqi; Moin, Parviz; Iaccarino, Gianluca
MetadataShow full item record
Adjoint equations of differential equations have seen widespread applications in optimization, inverse problems, and uncertainty quantification. A major challenge in solving adjoint equations for time dependent systems has been the need to use the solution of the original system in the adjoint calculation and the associated memory requirement. In applications where storing the entire solution history is impractical, checkpointing methods have frequently been used. However, traditional checkpointing algorithms such as revolve require a priori knowledge of the number of time steps, making these methods incompatible with adaptive time stepping. We propose a dynamic checkpointing algorithm applicable when the number of time steps is a priori unknown. Our algorithm maintains a specified number of checkpoints on the fly as time integration proceeds for an arbitrary number of time steps. The resulting checkpoints at any snapshot during the time integration have the optimal repetition number. The efficiency of our algorithm is demonstrated both analytically and experimentally in solving adjoint equations. This algorithm also has significant advantage in automatic differentiation when the length of execution is variable.
DepartmentMassachusetts Institute of Technology. Department of Aeronautics and Astronautics
SIAM Journal on Scientific Computing
Society for Industrial and Applied Mathematics
Wang, Qiqi, Parviz Moin, and Gianluca Iaccarino. “Minimal Repetition Dynamic Checkpointing Algorithm for Unsteady Adjoint Calculation.” SIAM Journal on Scientific Computing 31 (2009): 2549. © 2009 Society for Industrial and Applied Mathematics.
Final published version