Interpretative Adjoints for Numerical Simulation Codes using MPI

Michel Schanen
Uwe Naumann
(RWTH Aachen, Germany)
Laurent Hascoët
(INRIA Sophia-Antipolis, France)
Jean Utke
(Argonne National Laboratory, USA)


Proceedings of the 10th International Conference on Computational Science, ICCS'2010, May 31-June 2, 2010, Amsterdam, The Netherlands (10 pages)

Abstract: An essential performance and correctness factor in numerical simulation and optimization is access to exact derivative information. Adjoint derivative models are particularly useful if a function’s number of inputs far exceeds the number of outputs. The propagation of adjoints requires the data flow to be reversed, implying the reversal of all communication in programs that use message-passing. This paper presents recent advances made in developing the adjoint MPI library AMPI. The described proof of concept aims to serve as the basis for coupling other overloading AD tools with AMPI. We illustrate its use in the context of a specific overloading tool for algorithmic differentiation (AD) for C++ programs. A simplified but representative application problem is discussed as a case study.

Keywords: MPI, automatic differentiation, overloading, reverse mode

Full text (pdf)

@inproceedings{SNHU2010,
  author = {Schanen, M. and Naumann, U. and Hasco{\"e}t, L. and Utke, J.},
  title = "Interpretative Adjoints for Numerical Simulation Codes using MPI",
  booktitle = "Proceedings of the 10th International Conference
               on Computational Science, ICCS'2010",
  location = "Amsterdam, The Netherlands",
  year = "2010"
}