DuoLingo-AutoDiff: In-Database Automatic Differentiation with MLIR
Forward and reverse mode automatic differentiation evaluate the gradient of a model function efficiently by caching the results of partial derivatives. Just-in-time compilation improves the runtime of automatic differentiation by eliminating function calls and storing partial derivatives in virtual registers. This paper discusses the first open-source implementation of automatic differentiation with MLIR and LingoDB. The evaluation compares optimizations applied to forward and reverse modes. It showed that sub-expressions, that appear frequently within the calculation, will be reused after MLIR performs its optimization. Additionally, reverse mode outperforms forward mode due to less generated code.
Authors
- Maximilian E. Schüle (ORCID: https://orcid.org/0000-0003-1546-269X)
- Clemens Ruck (ORCID: https://orcid.org/0000-0002-8471-8700)
- Kevin Gutjahr
Institutions
- University of Bamberg (DE)
Publication Details
- Published
- 2025-06-22
- DOI
- https://doi.org/10.1145/3735654.3735943
- Primary Topic
- Algorithms and Data Compression
- Type
- article
- Field-Weighted Citation Impact
- 0.00