AD of UDEs - how to set it up?

Are you comparing against some baseline approach that isn’t considered slow? How much time does that approach take?

In my experience Zygote can be extremely slow: `Zygote.gradient` is 54000 TIMES slower than `jax.gradient`. I ran into this once and never used Zygote since. ForwardDiff seems to be the fastest, easiest to use and most stable. Just browsing this forum I see people having trouble with Enzyme, for example (usually crashes and unintuitive behavior), but I don’t think I’ve ever seen anyone struggle with ForwardDiff: it usually just works, and it’s often surprisingly fast.

EDIT recent examples of people having issues with Enzyme:

1 Like