A Common Interface for Automatic Differentiation
No official code found. Best implementation: JuliaDiff/DifferentiationInterface.jl (310 stars, MIT, last commit 2026-04-29).
Abstract
For scientific machine learning tasks with a lot of custom code, picking the right Automatic Differentiation (AD) system matters. Our Julia package DifferentiationInterface$.$jl provides a common frontend to a dozen AD backends, unlocking easy comparison and modular development. In particular, its built-in preparation mechanism leverages the strengths of each backend by amortizing one-time computations. This is key to enabling sophisticated features like sparsity handling without putting additional burdens on the user.