In this work we present useful techniques and possible enhancements when applying an Algorithmic Differentiation (AD) tool to the linear algebra library Eigen using our in-house AD by overloading (AD-O) toolas a case study. After outlining performance and feasibility issues when calculating derivatives for the official Eigen release, we propose Eigen-AD, which enables different optimization options for an AD-O tool by providing add-on modules for Eigen. The range of features includes a better handling of expression templates for general performance improvements as well as implementations of symbolically derived expressions for calculating derivatives of certain core operations. The software design allows an AD-O tool to provide specializations to automatically include symbolic operations and thereby keep the look and feel of plain AD by overloading. As a showcase,is provided with such a module and its significant performance improvements are validated by benchmarks.
CITATION STYLE
Peltzer, P., Lotz, J., & Naumann, U. (2020). Eigen-ad: Algorithmic differentiation of the eigen library. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 12137 LNCS, pp. 690–704). Springer Science and Business Media Deutschland GmbH. https://doi.org/10.1007/978-3-030-50371-0_51
Mendeley helps you to discover research relevant for your work.