Toward Adjoinable MPI
Jean Utke
Laurent Hascoët
Patrick Heimbach
Chris Hill
Paul Hovland
Uwe Naumann
Proceedings of 10th IEEE International Workshop on Parallel and Distributed Scientific
and Engineering, PDSEC'09, May 25-29, 2009, Rome, Italy (8 pages)
Abstract:
Automatic differentiation is the primary means of obtaining
analytic derivatives from a numerical model given as a
computer program. Therefore, it is an essential productivity
tool in numerous computational science and engineering
domains. Computing gradients with the adjoint (also called
reverse) mode via source transformation is a particularly
beneficial but also challenging use of
automatic differentiation.
To date only ad hoc solutions for adjoint differentiation
of MPI programs have been available, forcing automatic
differentiation tool users to reason about
parallel communication
dataflow and dependencies and manually develop adjoint
communication code. Using the communication graph
as a model we characterize the principal problems of
adjoining the most frequently used communication idioms.
We propose solutions to cover these idioms and consider the
consequences for the MPI implementation, the MPI user and
MPI-aware program analysis. The MIT general circulation
model serves as a use case to illustrate the viability of our
approach.
Keywords:
MPI, automatic differentiation, source transformation, reverse mode
Full text (pdf)
@inproceedings{Utke2009TAM,
author = {Utke, J. and Hasco{\"e}t, L. and Heimbach, P. and Hill, C.
and Hovland, P. and Naumann, U.},
title = "Toward Adjoinable MPI",
booktitle = "Proceedings of the 10th IEEE International Workshop on Parallel
and Distributed Scientific and Engineering, PDSEC'09",
location = "Rome, Italy",
year = "2009"
}