Algorithmic Differentiation for Domain Specific Languages
Max Sagebaum, Nicolas R. Gauger

TL;DR
This paper introduces a novel operator overloading approach for Algorithmic Differentiation (AD) tailored for Domain Specific Languages (DSLs), enabling optimized derivatives and improved performance by integrating DSL types into the AD process.
Contribution
The paper presents a new method that embeds DSL types into AD tools, allowing for compiler optimizations like SIMD and reducing memory usage, which improves derivative computation efficiency.
Findings
Enhanced performance demonstrated through initial results
Ability to optimize for SIMD operations within DSLs
Reduced memory requirements for AD processes
Abstract
Algorithmic Differentiation (AD) can be used to automate the generation of derivatives in arbitrary software projects. This will generate maintainable derivatives, that are always consistent with the computation of the software. If a domain specific language (DSL) is used in a software the state of the art approach is to differentiate the DSL library with the same AD tool. The drawback of this solution is the reduced performance since the compiler is no longer able to optimize the e.g. SIMD operations. The new approach in this paper integrates the types and operations of the DSL into the AD tool. It will be an operator overloading tool that is generated from an abstract definition of a DSL. This approach enables the compiler to optimize again e.g. for SIMD operation since all calculations are still performed with the original data types. This will also reduce the required memory for AD…
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.
Taxonomy
TopicsModel-Driven Software Engineering Techniques · Formal Methods in Verification · Logic, programming, and type systems
