Siskind, Jeffrey Mark and Pearlmutter, Barak A.
(2008)
Putting the Automatic Back into AD: Part I, What’s
Wrong (CVS: 1.1).
Technical Report.
ECE Technical Reports (Purdue e-Pubs).
Abstract
Current implementations of automatic differentiation are far from automatic. We survey the difficulties encountered when applying four existing AD systems, ADIFOR, TAPENADE, ADIC, and FADBAD++, to two simple tasks, minimax optimization and control of a simulated physical system, that involve taking derivatives of functions that themselves take derivatives of other functions. ADIC is not able to perform these tasks as it cannot transform its own generated code. Using FADBAD++, one cannot compute derivatives of different orders with unmodified code, as needed by these tasks. One must either manually duplicate code for the different derivative orders or write the code using templates to automate such code duplication. ADIFOR and TAPENADE are both able to perform these tasks only with significant intervention: modification of source code and manual editing of generated code. A companion paper presents a new AD system that handles both tasks without any manual intervention yet performs as well as or better than these existing systems.
Item Type: |
Monograph
(Technical Report)
|
Keywords: |
Nesting; multiple transformation; forward mode; ADIFOR; TAPENADE; ADIC; FADBAD++; |
Academic Unit: |
Faculty of Science and Engineering > Computer Science |
Item ID: |
8152 |
Depositing User: |
Barak Pearlmutter
|
Date Deposited: |
13 Apr 2017 14:21 |
Publisher: |
ECE Technical Reports (Purdue e-Pubs) |
URI: |
|
Use Licence: |
This item is available under a Creative Commons Attribution Non Commercial Share Alike Licence (CC BY-NC-SA). Details of this licence are available
here |
Repository Staff Only(login required)
|
Item control page |
Downloads per month over past year
Origin of downloads