Automatic Differentiation Backends
We support all backends supported by DifferentiationInterface.jl. Please refer to the backends page for more information.
Summary of Finite Differencing Backends
AutoFiniteDiff: Finite differencing usingFiniteDiff.jl, not optimal but always applicable.AutoFiniteDifferences: Finite differencing usingFiniteDifferences.jl, not optimal but always applicable.
Summary of Forward Mode AD Backends
AutoForwardDiff: The best choice for dense problems.AutoPolyesterForwardDiff: Might be faster thanAutoForwardDifffor large problems. RequiresPolyesterForwardDiff.jlto be installed and loaded.
Summary of Reverse Mode AD Backends
AutoZygote: The fastest choice for non-mutating array-based (BLAS) functions.AutoEnzyme: UsesEnzyme.jlReverse Mode and works for both in-place and out-of-place functions.
For sparsity detection and sparse AD take a look at sparsity detection.