The following technical report is available from
http://aib.informatik.rwth-aachen.de:
Symbolic vs. Algorithmic Differentiation of GSL Integration Routines
Niloofar Safiran and Uwe Naumann
AIB 2015-14
Forward and reverse modes of algorithmic differentiation (AD) transform
implementations of multivariate vector functions as computer programs
into tangent and adjoint code, respectively. The adjoint mode is of
particular interest in large-scale functions due to the independence of
its computational cost on the number of free variables. The additional
memory requirement for the computation of derivatives of the output with
respect to parameters by a fully algorithmic method (derived by AD) can
quickly become prohibitive for large values of n. This can be reduced
significantly by the symbolic approach to differentiation of the
underlying integration routine. Vectorizing gsl routines for integration
and applying symbolic adjoint on them has considerably less memory
requirement with nearly the same runtime overhead and in most cases
faster convergence in comparison with algorithmic adjoint.