Skip to content

Commit

Permalink
Add more engines supporting ChainRules to the docs (#676)
Browse files Browse the repository at this point in the history
* Add more engines supporting ChainRules to the docs

* Add Tracker too

* Update docs/src/index.md
  • Loading branch information
oxinabox authored May 17, 2024
1 parent d35f217 commit fa530b9
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,14 @@ It also `unthunk`s every tangent.

[ReversePropagation.jl](https://github.com/dpsanders/ReversePropagation.jl) is a reverse-mode AD that supports using `rrule`s for scalar functions, but not calling back into AD and opting out of rules.

[TaylorDiff.jl](https://github.com/JuliaDiff/TaylorDiff.jl) is a forward taylor mode AD.

### Packages supporting importing rules from ChainRules.
Several packages do not automatically load rules from ChainRules by default, but support importing rules that were defined using it, e.g. with a macro.

[ReverseDiff.jl](https://github.com/JuliaDiff/ReverseDiff.jl) is a reverse-mode AD that supports using `rrule`s, but not calling back into AD and opting out of rules. It requires opting in to each rule using a macro.
[ReverseDiff.jl](https://github.com/JuliaDiff/ReverseDiff.jl) is a reverse-mode AD that supports using `rrule`s, but not calling back into AD and opting out of rules.
[Tracker.jl](https://github.com/FluxML/Tracker.jl) is a reverse mode AD that supports importing `rrules`
[Enzyme.jl](https://github.com/EnzymeAD/Enzyme.jl) is a forward and reverse mode AD and supports import of `frule`s and `rrule`s.

[Tapir.jl](https://github.com/withbayes/Tapir.jl/) is a reverse-mode add that supports importing a restricted subset of rules defined using `rrule`. Specifically, rules for functions whose inputs have tangent type `Float64` or `NoTangent`.

Expand Down

0 comments on commit fa530b9

Please sign in to comment.