Performance Issues for Vertex Elimination Methods in Computing Jacobians Using Automatic Differentiation

  • Authors:
  • Mohamed Tadjouddine;Shaun A. Forth;J. D. Pryce;J. K. Reid

  • Affiliations:
  • -;-;-;-

  • Venue:
  • ICCS '02 Proceedings of the International Conference on Computational Science-Part II
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

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), 126-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.