Publication: Generative Programming for Automatic Differentiation
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About
Impress

Generative Programming for Automatic Differentiation

- incollection -
 

Author(s)
Marco Nehmeier

Published in
Recent Advances in Algorithmic Differentiation

Editor(s)
Shaun Forth, Paul Hovland, Eric Phipps, Jean Utke, Andrea Walther

Year
2012

Publisher
Springer

Abstract
In this paper we present a concept for a C ++ implementation of forward automatic differentiation of an arbitrary order using expression templates and template metaprogramming. In contrast to other expression template implementations, the expression tree in our implementation has only symbolic characteristics. The run-time code is then generated from the tree structure using template metaprogramming functions to apply the rules of symbolic differentiation onto the single operations at compile-time. This generic approach has the advantage that the template metaprogramming functions are replaceable which offers the opportunity to easily generate different specialized algorithms. We tested the functionality, correctness and performance of a prototype in different case studies for floating point as well as interval data types and compared it against other implementations.

Cross-References
Forth2012RAi

AD Theory and Techniques
Code Optimization

BibTeX
@INCOLLECTION{
         Nehmeier2012GPf,
       title = "Generative Programming for Automatic Differentiation",
       doi = "10.1007/978-3-642-30023-3_24",
       author = "Marco Nehmeier",
       abstract = "In this paper we present a concept for a C ++ implementation of forward automatic
         differentiation of an arbitrary order using expression templates and template metaprogramming. In
         contrast to other expression template implementations, the expression tree in our implementation has
         only symbolic characteristics. The run-time code is then generated from the tree structure using
         template metaprogramming functions to apply the rules of symbolic differentiation onto the single
         operations at compile-time. This generic approach has the advantage that the template
         metaprogramming functions are replaceable which offers the opportunity to easily generate different
         specialized algorithms. We tested the functionality, correctness and performance of a prototype in
         different case studies for floating point as well as interval data types and compared it against
         other implementations.",
       pages = "261--271",
       crossref = "Forth2012RAi",
       booktitle = "Recent Advances in Algorithmic Differentiation",
       series = "Lecture Notes in Computational Science and Engineering",
       publisher = "Springer",
       address = "Berlin",
       volume = "87",
       editor = "Shaun Forth and Paul Hovland and Eric Phipps and Jean Utke and Andrea Walther",
       isbn = "978-3-540-68935-5",
       issn = "1439-7358",
       year = "2012",
       ad_theotech = "Code Optimization"
}


back
  

Contact:
autodiff.org
Username:
Password:
(lost password)