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
Copy file name to clipboardExpand all lines: DifferentiationInterface/README.md
+48-46Lines changed: 48 additions & 46 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,31 +19,31 @@ An interface to various automatic differentiation (AD) backends in Julia.
19
19
20
20
This package provides a unified syntax to differentiate functions, including:
21
21
22
-
- First- and second-order operators (gradients, Jacobians, Hessians and more)
23
-
- In-place and out-of-place differentiation
24
-
- Preparation mechanism (e.g. to pre-allocate a cache or record a tape)
25
-
- Built-in sparsity handling
26
-
- Thorough validation on standard inputs and outputs (numbers, vectors, matrices)
27
-
- Testing and benchmarking utilities accessible to users with [DifferentiationInterfaceTest](https://github.com/JuliaDiff/DifferentiationInterface.jl/tree/main/DifferentiationInterfaceTest)
22
+
- First- and second-order operators (gradients, Jacobians, Hessians and more)
23
+
- In-place and out-of-place differentiation
24
+
- Preparation mechanism (e.g. to pre-allocate a cache or record a tape)
25
+
- Built-in sparsity handling
26
+
- Thorough validation on standard inputs and outputs (numbers, vectors, matrices)
27
+
- Testing and benchmarking utilities accessible to users with [DifferentiationInterfaceTest](https://github.com/JuliaDiff/DifferentiationInterface.jl/tree/main/DifferentiationInterfaceTest)
28
28
29
29
## Compatibility
30
30
31
31
We support the following backends defined by [ADTypes.jl](https://github.com/SciML/ADTypes.jl):
> Note that in some cases, going through DifferentiationInterface.jl might be slower or cause more errors than a direct call to the backend's API. This is especially true for Enzyme.jl, whose handling of activities and multiple arguments is not fully supported here. We are working on this challenge, and welcome any suggestions or contributions. Meanwhile, if differentiation fails or takes too long, consider using Enzyme.jl through its [native API](https://enzymead.github.io/Enzyme.jl/stable/) instead.
@@ -92,42 +92,44 @@ To improve your performance by up to several orders of magnitude compared to thi
92
92
93
93
Whenever you refer to this package or the ideas it contains, please cite:
94
94
95
-
1. our preprint [*A Common Interface for Automatic Differentiation*](https://arxiv.org/abs/2505.05542);
95
+
1. our JMLR paper [*A Common Interface for Automatic Differentiation*](https://jmlr.org/papers/v27/25-1024.html);
3. if you use sparse differentiation capabilities, our companion packages [SparseConnectivityTracer.jl](https://github.com/adrhill/SparseConnectivityTracer.jl) and [SparseMatrixColorings.jl](https://github.com/gdalle/SparseMatrixColorings.jl) which provide these capabilities (see their respective repositories for guidelines).
97
98
98
-
You can use the provided [`CITATION.cff`](https://github.com/JuliaDiff/DifferentiationInterface.jl/blob/main/CITATION.cff) file or the following BibTeX entries:
99
+
For the first two items, you can use the provided [`CITATION.cff`](https://github.com/JuliaDiff/DifferentiationInterface.jl/blob/main/CITATION.cff) file or the following BibTeX entries:
title = {AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Julia},
115
+
author = {Frank Schäfer and Mohamed Tarek and Lyndon White and Chris Rackauckas},
116
+
year = {2022},
117
+
eprint = {2109.12449},
118
+
archiveprefix = {arXiv},
119
+
primaryclass = {cs.MS},
120
+
url = {https://arxiv.org/abs/2109.12449}
119
121
}
120
122
```
121
123
122
-
If you use the software, additionally cite us using the precise [Zenodo DOI](https://zenodo.org/records/11092033) of the package version you used, or the BibTeX entry below:
124
+
If you run the actual software as part of your experiments, please cite the precise [Zenodo DOI](https://zenodo.org/records/11092033) of the package version you used, or the BibTeX entry below:
0 commit comments