Publication: Parallel Reverse Mode Automatic Differentiation for OpenMP Programs with ADOL-C
Introduction
Applications
Tools
Research Groups
Workshops
Publications
   List Publications
   Advanced Search
   Info
   Add Publications
My Account
About

Parallel Reverse Mode Automatic Differentiation for OpenMP Programs with ADOL-C

- incollection -
 

Author(s)
Christian Bischof , Niels Guertler , Andreas Kowarz , Andrea Walther

Published in
Advances in Automatic Differentiation

Editor(s)
Christian H. Bischof, H. Martin Bücker, Paul D. Hovland, Uwe Naumann, J. Utke

Year
2008

Publisher
Springer

Abstract
Shared-memory multicore computing platforms are becoming commonplace, and loop parallelization with OpenMP offers an easy way for the user to harness their power. As a result, tools for automatic differentiation (ad) should be able to deal with such codes in a fashion that preserves their parallel nature also for the derivative evaluation. In this paper, we explore this issue using a plasma simulation code. Its structure, which in essence is a time stepping loop with several parallelizable inner loops, is representative of many other computations. Using this code as an example, we develop a strategy for the efficient implementation of the reverse mode of ad with trace-based ad-tools and implement it with the ADOL-C tool. The strategy combines checkpointing at the outer level with parallel trace generation and evaluation at the inner level. We discuss the extensions necessary for ADOL-C to work in a multithreaded environment and the setup necessary for the user code and present performance results on a shared-memory multiprocessor.

Cross-References
Bischof2008AiA

AD Tools
ADOL-C

AD Theory and Techniques
Parallelism

BibTeX
@INCOLLECTION{
         Bischof2008PRM,
       title = "Parallel Reverse Mode Automatic Differentiation for {OpenMP} Programs with {ADOL-C}",
       doi = "10.1007/978-3-540-68942-3_15",
       author = "Christian Bischof and Niels Guertler and Andreas Kowarz and Andrea Walther",
       abstract = "Shared-memory multicore computing platforms are becoming commonplace, and loop
         parallelization with OpenMP offers an easy way for the user to harness their power. As a result,
         tools for automatic differentiation (AD) should be able to deal with such codes in a fashion that
         preserves their parallel nature also for the derivative evaluation. In this paper, we explore this
         issue using a plasma simulation code. Its structure, which in essence is a time stepping loop with
         several parallelizable inner loops, is representative of many other computations. Using this code as
         an example, we develop a strategy for the efficient implementation of the reverse mode of AD with
         trace-based AD-tools and implement it with the ADOL-C tool. The strategy combines checkpointing at
         the outer level with parallel trace generation and evaluation at the inner level. We discuss the
         extensions necessary for ADOL-C to work in a multithreaded environment and the setup necessary for
         the user code and present performance results on a shared-memory multiprocessor.",
       crossref = "Bischof2008AiA",
       pages = "163--173",
       booktitle = "Advances in Automatic Differentiation",
       publisher = "Springer",
       editor = "Christian H. Bischof and H. Martin B{\"u}cker and Paul D. Hovland and Uwe
         Naumann and J. Utke",
       isbn = "978-3-540-68935-5",
       issn = "1439-7358",
       year = "2008",
       ad_tools = "ADOL-C",
       ad_theotech = "Parallelism"
}


back
  

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