Optimal Checkpointing for Adjoint Multistage Time-Stepping Schemes

06/25/2021
by   Hong Zhang, et al.
0

We consider checkpointing strategies that minimize the number of recomputations needed when performing discrete adjoint computations using multistage time-stepping schemes, which requires computing several substeps within one complete time step. In this case we propose two algorithms that can generate optimal checkpointing schedules under weak assumptions. The first is an extension of the seminal Revolve algorithm adapted to multistage schemes. The second algorithm, named CAMS, is developed based on dynamic programming, and it requires the least number of recomputations when compared with other algorithms. The CAMS algorithm is made publicly available in a library with bindings to C and Python. Numerical results illustrate that the proposed algorithms can deliver up to two times the speedup compared with that of classical Revolve. Moreover, we discuss a tailored implementation of an adjoint computation that is arguably better suited for mature scientific computing libraries by avoiding the central control assumed by the original checkpointing strategy. The proposed algorithms have been adopted by the PETSc TSAdjoint library. Their performance has been demonstrated with a large-scale PDE-constrained optimization problem on a leadership-class supercomputer.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/07/2023

Point in polygon calculation using vector geometric methods with application to geospatial data

In this work, we designed algorithms for the point in polygon problem ba...
research
04/25/2021

Efficient Binary Decision Diagram Manipulation in External Memory

We follow up on the idea of Lars Arge to rephrase the Reduce and Apply a...
research
12/15/2022

Rollout Algorithms and Approximate Dynamic Programming for Bayesian Optimization and Sequential Estimation

We provide a unifying approximate dynamic programming framework that app...
research
08/29/2019

Adaptive Partition-based SDDP Algorithms for Multistage Stochastic Linear Programming

In this paper, we extend the adaptive partition-based approach for solvi...
research
08/07/2021

Optimal parameters for numerical solvers of PDEs

In this paper we introduce a procedure for identifying optimal methods i...
research
08/14/2019

Systematization of Knowledge and Implementation: Short Identity-Based Signatures

Identity-Based signature schemes are gaining a lot of popularity every d...
research
08/13/2019

Multi-objective scheduling on two dedicated processors

We study a multi-objective scheduling problem on two dedicated processor...

Please sign up or login with your details

Forgot password? Click here to reset