Performance Issues for Vertex Elimination Methods in Computing Jacobians using Automatic Differentiation.

Date published

2002

Free to read from

Supervisor/s

Journal Title

Journal ISSN

Volume Title

Publisher

Springer-Verlag

Department

Type

Postprint

ISSN

Format

Citation

Mohamed Tadjouddine, Shaun A. Forth, John D. Pryce & John K. Reid, Performance Issues for Vertex Elimination Methods in Computing Jacobians using Automatic Differentiation. Proceedings of the Second International Conference in Computational Science, Vol 2330, Lecture Notes in Computer Science, Springer-Verlag, Berlin, 2002.

Abstract

In this paper, we present first results from EliAD, a new automatic differentiation tool. EliAD uses the Elimination approach for Automatic Differentation first advocated by Griewank and Reese (Automatic Differentiation of Algorithms, SIAM, 1991 p126-135). EliAD implements this technique via source-transformation, writing new Fortran code for the Jacobians of functions defined by existing Fortran code. Our results are from applying EliAD to the Roe flux routine commonly used in computational fluid dynamics. We show that we can produce code that calculates the associated flux Jacobian approaching or in excess of twice the speed of current state-of-the-art automatic differentiation tools. However, in order to do so we must take into account the architecture on which we are running our code. In particular, on processors that do not support out-of-order execution, we must reorder our derivative code so that values may be reused while in arithmetic registers in order that the floating point arithmetic pipeline may be kept full.

Description

Presented at The 2002 International Conference on Computational Science ICCS 2002 Special Session on Automatic Differentiation and Applications Amsterdam, The Netherlands, April 21-24, 2002

Software Description

Software Language

Github

Keywords

DOI

Rights

The original publication is available at www.springerlink.com

Relationships

Relationships

Resources

Funder/s