3rd European Workshop on Automatic Differentiation

http://www.amorg.co.uk/AD/EuroADWorkshops/OxfordJune06

Thursday June 1st, 2006

Oxford University Computing Laboratory
Wolfson Building

Parks Road

Oxford

UK

 

Andreas Kowarz (TU Dresden)

Tape optimization using Activity-Tracking variables

Abstract:  Speed and efficiency of Automatic Differentiation based on internal function representations is strongly related with the size of the created tapes. To optimize the tape size only those variables should be declared of an active data type that influence dependent variables. Therefore, the knowledge about the internals of the function to be differentiated is important. Although, the optimization of the tape size is mostly wanted, in practice the optimal data type mapping is often expensive to achieve or the necessary knowledge is not available.

Activity-Tracking variables are an approach to achieve tape optimizations using only a very limited set of information to be provided by the user. Besides the redefinition of all variables of basic data type, e.g. double, to the new data type, only independent and dependent variables must be marked. By default, all variables of the new data type are in an inactive state, i.e., operations involving these variables are not taped. Marking a variable as independent also means to set it to an active state. This activity information is then propagated through the function code. As a result only those operations are taped that involve variables of active state.

This talk is meant as an introduction to the idea but we will also present some first results and experiences from our work in progress.

Slides: KowarzJune06.pdf