|
|
The Adjoint Data-Flow Analyses: Formalization, Properties, and Applications-
incollection
- | |
|
Area General |
Author(s)
Laurent Hascoët
, Mauricio Araya-Polo
|
Published in Automatic Differentiation: Applications, Theory, and Implementations
|
Editor(s) H. M. Bücker, G. Corliss, P. Hovland, U. Naumann, B. Norris |
Year 2005 |
Publisher Springer |
Abstract Automatic Differentiation (ad) is a program transformation that yields derivatives. Building efficient derivative programs requires complex and specific static analysis algorithms to reduce run time and memory usage. Focusing on the reverse mode of ad, which computes adjoint programs, we specify jointly the central static analyses that are required to generate an efficient adjoint code. We use a set-based formalization from classical data-flow analysis to specify Adjoint Liveness, Adjoint Write, and To Be Recorded analyses, and their mutual influences, taking into account the specific structure of adjoint programs. We give illustrations on examples taken from real numerical programs, that we differentiate with our ad tool TAPENADE, which implements these analyses. |
Cross-References Bucker2005ADA |
AD Tools TAPENADE |
AD Theory and Techniques Data Flow Analysis, Adjoint |
BibTeX
@INCOLLECTION{
Hascoet2005TAD,
title = "The Adjoint Data-Flow Analyses: {F}ormalization, Properties, and Applications",
editor = "H. M. B{\"u}cker and G. Corliss and P. Hovland and U. Naumann and B.
Norris",
booktitle = "Automatic Differentiation: {A}pplications, Theory, and Implementations",
series = "Lecture Notes in Computational Science and Engineering",
publisher = "Springer",
ad_area = "General",
ad_tools = "TAPENADE",
ad_theotech = "Data Flow Analysis, Adjoint",
year = "2005",
author = "Laurent Hasco{\"e}t and Mauricio Araya-Polo",
abstract = "Automatic Differentiation (AD) is a program transformation that yields derivatives.
Building efficient derivative programs requires complex and specific static analysis algorithms to
reduce run time and memory usage. Focusing on the reverse mode of AD, which computes adjoint
programs, we specify jointly the central static analyses that are required to generate an efficient
adjoint code. We use a set-based formalization from classical data-flow analysis to specify Adjoint
Liveness, Adjoint Write, and To Be Recorded analyses, and their mutual influences, taking into
account the specific structure of adjoint programs. We give illustrations on examples taken from
real numerical programs, that we differentiate with our AD tool TAPENADE, which implements these
analyses.",
crossref = "Bucker2005ADA",
pages = "135--146",
doi = "10.1007/3-540-28438-9_12"
}
| |
back
|
|