TAPENADE 2.1 user's guide
Laurent Hascoët, Valérie Pascual
Abstract
Laurent Hascoët, Valérie Pascual
Abstract
This is the user's manual for the version 2.1 of the Automatic Differentiation tool TAPENADE. Given a source computer program that computes a differentiable mathematical function $F$, TAPENADE builds a new source program that computes some of the derivatives of $F$, specifically directional derivatives ("tangent mode") and gradients ("reverse mode"). This report summarizes the mathematical justifications of Automatic Differentiation, then describes in full detail the differentiation model that TAPENADE implements. Our goal is to give the users of TAPENADE a precise understanding of the actions and choices made while differentiating programs, so as to improve their confidence in the produced source programs. This report documents all the available options and parameterizations that the users can give to TAPENADE, and conversely all the diagnosis and requirements that TAPENADE may issue towards the users. After a brief description of TAPENADE's architecture and performances, this report describes more fully the validation and improvement techniques for differentiated codes.
OpenAlex reports 194 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
This is the user's manual for the version 2.1 of the Automatic Differentiation tool TAPENADE. Given a source computer program that computes a differentiable mathematical function $F$, TAPENADE builds a new source program that computes some of the derivatives of $F$, specifically directional derivatives ("tangent mode") and gradients ("reverse mode"). This report summarizes the mathematical justifications of Automatic Differentiation, then describes in full detail the differentiation model that TAPENADE implements. Our goal is to give the users of TAPENADE a precise understanding of the actions and choices made while differentiating programs, so as to improve their confidence in the produced source programs. This report documents all the available options and parameterizations that the users can give to TAPENADE, and conversely all the diagnosis and requirements that TAPENADE may issue towards the users. After a brief description of TAPENADE's architecture and performances, this report describes more fully the validation and improvement techniques for differentiated codes.
Key concepts: Automatic differentiation, Computer science, Function (biology), Differentiable function, Mode (computer interface), Source code, Programming language, Software engineering