Performance Issues for Vertex Elimination Methods in Computing Jacobians using Automatic Differentiation. - Tadjouddine, Mohamed; Forth, Shaun A.; Pryce, John D.; Reid, John K. (Springer, 2002)
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.
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