Reversal Strategies for Adjoint Algorithms

Laurent Hascoët
(INRIA, BP93, 06902 Sophia-Antipolis, France)


Book chapter. Essays in memory of Gilles Kahn, 2009 (18 pages)

Abstract: Adjoint Algorithms are a powerful way to obtain the gradients that are needed in Scientific Computing. Automatic Differentiation can build Adjoint Algorithms automatically by source transformation of the direct algorithm. The specific structure of Adjoint Algorithms strongly relies on reversal of the sequence of computations made by the direct algorithm. This reversal problem is at the same time difficult and interesting. This paper makes a survey of the reversal strategies employed in recent tools and describes some of the more abstract formalizations used to justify these strategies.

Keywords: Automatic Differentiation, reverse mode, adjoint algorithm, program transformation, checkpointing

Full text (pdf)

@incollection{HascoetGK09,
  author = {Hasco\"et, L.},
  title = {Reversal Strategies for Adjoint Algorithms},
  booktitle = {From Semantics to Computer Science. Essays in memory of Gilles Kahn},
  publisher = {Cambridge University Press},
  pages = "487--503",
  year = 2009
}