Optimal Multistage Algorithm for Adjoint Computation
Abstract
We reexamine the work of Stumm and Walther on multistage algorithms for adjoint computation. We provide an optimal algorithm for this problem when there are two levels of checkpoints, in memory and on disk. Previously, optimal algorithms for adjoint computations were known only for a single level of checkpoints with no writing and reading costs; a well-known example is the binomial checkpointing algorithm of Griewank and Walther. Stumm and Walther extended that binomial checkpointing algorithm to the case of two levels of checkpoints, but they did not provide any optimality results. We bridge the gap by designing the first optimal algorithm in this context. We experimentally compare our optimal algorithm with that of Stumm and Walther to assess the difference in performance.
- Authors:
- Publication Date:
- Research Org.:
- Argonne National Lab. (ANL), Argonne, IL (United States)
- Sponsoring Org.:
- USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR); Agence Nationale de la recherche (ANR)
- OSTI Identifier:
- 1339157
- DOE Contract Number:
- AC02-06CH11357
- Resource Type:
- Journal Article
- Journal Name:
- SIAM Journal on Scientific Computing
- Additional Journal Information:
- Journal Volume: 38; Journal Issue: 3; Journal ID: ISSN 1064-8275
- Publisher:
- SIAM
- Country of Publication:
- United States
- Language:
- English
- Subject:
- 97 MATHEMATICS AND COMPUTING; Adjoint Computation; Automatic Differentiation; Checkpointing; Optimal algorithms; Program Reversal
Citation Formats
Aupy, Guillaume, Herrmann, Julien, Hovland, Paul, and Robert, Yves. Optimal Multistage Algorithm for Adjoint Computation. United States: N. p., 2016.
Web. doi:10.1137/15M1019222.
Aupy, Guillaume, Herrmann, Julien, Hovland, Paul, & Robert, Yves. Optimal Multistage Algorithm for Adjoint Computation. United States. https://doi.org/10.1137/15M1019222
Aupy, Guillaume, Herrmann, Julien, Hovland, Paul, and Robert, Yves. 2016.
"Optimal Multistage Algorithm for Adjoint Computation". United States. https://doi.org/10.1137/15M1019222.
@article{osti_1339157,
title = {Optimal Multistage Algorithm for Adjoint Computation},
author = {Aupy, Guillaume and Herrmann, Julien and Hovland, Paul and Robert, Yves},
abstractNote = {We reexamine the work of Stumm and Walther on multistage algorithms for adjoint computation. We provide an optimal algorithm for this problem when there are two levels of checkpoints, in memory and on disk. Previously, optimal algorithms for adjoint computations were known only for a single level of checkpoints with no writing and reading costs; a well-known example is the binomial checkpointing algorithm of Griewank and Walther. Stumm and Walther extended that binomial checkpointing algorithm to the case of two levels of checkpoints, but they did not provide any optimality results. We bridge the gap by designing the first optimal algorithm in this context. We experimentally compare our optimal algorithm with that of Stumm and Walther to assess the difference in performance.},
doi = {10.1137/15M1019222},
url = {https://www.osti.gov/biblio/1339157},
journal = {SIAM Journal on Scientific Computing},
issn = {1064-8275},
number = 3,
volume = 38,
place = {United States},
year = {Fri Jan 01 00:00:00 EST 2016},
month = {Fri Jan 01 00:00:00 EST 2016}
}