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 thanAutoForwardDiff
for large problems. RequiresPolyesterForwardDiff.jl
to be installed and loaded.
Summary of Reverse Mode AD Backends
AutoZygote
: The fastest choice for non-mutating array-based (BLAS) functions.AutoEnzyme
: UsesEnzyme.jl
Reverse Mode and works for both in-place and out-of-place functions.
For sparsity detection and sparse AD take a look at sparsity detection.