The open archive for STFC research publications

Full Record Details

Persistent URL http://purl.org/net/epubs/work/29778
Record Status Checked
Record Id 29778
Title Jacobian code generated by source transformation and vertex elimination is as efficient as hand coding
Abstract This paper presents the first extended set of results from EliAD, a source transformation implementation of the vertex-elimination Automatic Differentiation approach to calculating the Jacobians of functions defined by Fortran code (Griewank and Reese, Automatic Differntiation of Algorithms: theory, implementation, and application, 1991, pp 126-135). We introduce the necessary theory in terms of well known algorithms of numerical linear algebra applied to the linear, extended Jacobian system that prescribes the relationship between the derivatives of all variables in the function code. We describe the source transformation implementation of our tool EliAD and present results from 5 test cases, 4 of which are taken from the MINPACK-2 collection ( Averick et al, Report ANL/MCS-TM-150, 1992) and for which hand-coded Jacobian codes are available. On 5 computer/compiler platforms we show that the Jacobian code obtained by EliAD is as efficient ashand-coded Jacobian code. It is also between 2 to 20 times more efficient than that produced by current, state of the art, Automatic Differentiation tools even when such tools make use of sophisticated techniques such as sparse Jacobian compression. We demonstrate the effectiveness of reverse-ordered pre-elimination from the (sucessively updated) extended Jacobian system of all intermediate variables used once. Thereafter, the monotonic forward/reverse ordered eliminations of all other intermediates is shown to be very efficient. On only one test case were orderings determined by the Markowitz or related VLR heuristics found superior. A re-ordering of the statements of the Jacobian code, with the aim of reducing reads and writes of data from cache to registers, was found to have mixed effects but could be very beneficial.
Organisation CCLRC
Funding Information
Related Research Object(s):
Licence Information:
Language English (EN)
Type Details URI(s) Local file(s) Year
Report RAL Technical Reports RAL-TR-2002-029. 2003. raltr-2002029.pdf 2003