You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At the moment, DI only supports passing additional arguments if they are Constant, that is, their value is not modified by the function.
We also need to support passing Caches, which can be mutated with active (differentiated) values.
Here's a breakdown of how this can work, backend by backend:
Finite differences: straightforward, active values are just standard floats
ForwardDiff: preallocate a corresponding cache with Dual numbers, similar to PreallocationTools.jl
Enzyme: mark the caches with (Batch)Duplicated
The text was updated successfully, but these errors were encountered:
gdalle
added
backend
Related to one or more autodiff backends
core
Related to the core utilities of the package
labels
Oct 8, 2024
At the moment, DI only supports passing additional arguments if they are
Constant
, that is, their value is not modified by the function.We also need to support passing
Cache
s, which can be mutated with active (differentiated) values.Here's a breakdown of how this can work, backend by backend:
Dual
numbers, similar to PreallocationTools.jl(Batch)Duplicated
The text was updated successfully, but these errors were encountered: