Eigen-AD: Algorithmic Differentiation of the Eigen Library
Patrick Peltzer, Johannes Lotz, Uwe Naumann

TL;DR
Eigen-AD introduces enhancements for applying Algorithmic Differentiation to the Eigen linear algebra library, including performance optimizations and symbolic derivative calculations, validated through benchmarks with the dco/c++ tool.
Contribution
It provides a modular approach to integrate symbolic derivatives and optimize AD performance in Eigen using add-on modules, advancing AD application in linear algebra.
Findings
Significant performance improvements demonstrated in benchmarks
Enhanced handling of expression templates for better efficiency
Successful integration of symbolic derivatives for core Eigen operations
Abstract
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) tool dco/c++ as 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, dco/c++ is…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
