Releases: JuliaDiff/DifferentiationInterface.jl
DifferentiationInterface-v0.7.1
DifferentiationInterface DifferentiationInterface-v0.7.1
Diff since DifferentiationInterface-v0.7.0
Merged pull requests:
- docs: warn that preparation is not thread-safe (#801) (@FerreolS)
- feat: support DuplicatedNoNeed as function annotation for Enzyme (#805) (@gdalle)
- Revert "feat: support DuplicatedNoNeed as function annotation for Enzyme" (#807) (@gdalle)
- docs: make Enzyme warning more visible (#808) (@gdalle)
- feat: use Mooncake's copy utilities (#809) (@gdalle)
- fix: make (multi)basis work on CuArray (#810) (@gdalle)
- fix: take absstep into account for FiniteDiff (#812) (@gdalle)
Closed issues:
DifferentiationInterfaceTest-v0.10.0
DifferentiationInterfaceTest DifferentiationInterfaceTest-v0.10.0
Diff since DifferentiationInterfaceTest-v0.9.6
Breaking changes
- The
Scenariotype and its constructors have been modified - Default sets of scenarios have been removed from the public API
See the changelog for details
Merged pull requests:
- fix: erase cache contexts before building function in Symbolics (#760) (@gdalle)
- fix: store sparsity pattern for symbolic backends (#764) (@gdalle)
- clarify doc for differentiate_with (#767) (@yebai)
- perf: remove Mooncake warmup during preparation (#772) (@gdalle)
- Fix typo in Scenario docstring (#773) (@penelopeysm)
- perf: optimize multibasis for sparse differentiation (#777) (@gdalle)
- CompatHelper: add new compat entry for GPUArraysCore in [weakdeps] at version 0.2 for package DifferentiationInterface, (keep existing compat) (#778) (@github-actions[bot])
- compintell --> chalk-lab (#781) (@yebai)
- perf: allocate Enzyme shadow memory during preparation (#782) (@gdalle)
- chore: apply JuliaFormatter v2 (#784) (@gdalle)
- feat!: specify preparation arguments in DIT
Scenario(#786) (@gdalle) - chore: add changelogs (#787) (@gdalle)
- feat: error hints for Enzyme (#788) (@gdalle)
- refactor: remove automatic code generation in DI (#789) (@gdalle)
- chore: add extra deps compats (#790) (@gdalle)
- chore: update citation with new Arxiv preprint (#795) (@gdalle)
- refactor!: remove scenario lists from public API (#796) (@gdalle)
- docs!: remove mention of
default_scenariosintest_differentiation(#798) (@gdalle)
Closed issues:
- Better error messages for wrong preparation (#350)
- Better preparation for Enzyme (#481)
- Better Mooncake preparation (#518)
- Make it possible to overload
basisandindicesto iterate over non-arrays (#566) - Dagger support (#567)
- Setting ForwardDiff chunk size can error for sparse AD (#593)
- Fix performance for ForwardDiff-over-ReverseDiff (#603)
- Add allocation benchmarks on StaticArrays (#616)
- Use native Enzyme gradient in reverse mode (#711)
sparsity_patternmethod is not defined forAutoSymbolics(#763)- Assertion error with
FastDifferentiationandModelPredictiveControl(#765) - Enzyme slower than FiniteDiff with
Cache(#766) - Specific preparation values for
DifferentiationInterfaceTest.Scenarios (#771) - Performance asymptotics for sparsity detection (#774)
- Avoid
OneElementfor basis creation by adding aGPUArraysextension (#776) - Segfault with OrdinaryDiffEq and Enzyme (#779)
- Performance Regression from SparseDiffTools: Specialized sparse matrix decompression for structured matrices (#780)
- GC corruption with Enzyme cache modification (#785)
- Remove scenario lists from DIT interface (#793)
- Better document
prep_argsinDIT.Scenario(#794)
DifferentiationInterface-v0.7.0
DifferentiationInterface DifferentiationInterface-v0.7.0
Diff since DifferentiationInterface-v0.6.54
Breaking changes
- Preparation is now strict by default: if the argument types at execution differ from those at preparation, an error will be thrown. You can recover the old behavior by setting
strict=Val(false)in the preparation functions.
Merged pull requests:
- feat!: specify preparation arguments in DIT
Scenario(#786) (@gdalle) - chore: update citation with new Arxiv preprint (#795) (@gdalle)
- refactor!: remove scenario lists from public API (#796) (@gdalle)
- docs!: remove mention of
default_scenariosintest_differentiation(#798) (@gdalle) - fix!: make strict preparation the default (#799) (@gdalle)
Closed issues:
- Make it possible to overload
basisandindicesto iterate over non-arrays (#566) - Dagger support (#567)
- Setting ForwardDiff chunk size can error for sparse AD (#593)
- Add allocation benchmarks on StaticArrays (#616)
- Specific preparation values for
DifferentiationInterfaceTest.Scenarios (#771) - Remove scenario lists from DIT interface (#793)
- Better document
prep_argsinDIT.Scenario(#794)
DifferentiationInterface-v0.6.54
DifferentiationInterface DifferentiationInterface-v0.6.54
Diff since DifferentiationInterface-v0.6.53
Merged pull requests:
- chore: add changelogs (#787) (@gdalle)
- feat: error hints for Enzyme (#788) (@gdalle)
- refactor: remove automatic code generation in DI (#789) (@gdalle)
- chore: add extra deps compats (#790) (@gdalle)
Closed issues:
DifferentiationInterface-v0.6.53
DifferentiationInterface DifferentiationInterface-v0.6.53
Diff since DifferentiationInterface-v0.6.52
Merged pull requests:
- CompatHelper: add new compat entry for GPUArraysCore in [weakdeps] at version 0.2 for package DifferentiationInterface, (keep existing compat) (#778) (@github-actions[bot])
- compintell --> chalk-lab (#781) (@yebai)
- perf: allocate Enzyme shadow memory during preparation (#782) (@gdalle)
- chore: apply JuliaFormatter v2 (#784) (@gdalle)
Closed issues:
DifferentiationInterface-v0.6.52
DifferentiationInterface DifferentiationInterface-v0.6.52
Diff since DifferentiationInterface-v0.6.51
Merged pull requests:
Closed issues:
- Avoid
OneElementfor basis creation by adding aGPUArraysextension (#776)
DifferentiationInterface-v0.6.51
DifferentiationInterface DifferentiationInterface-v0.6.51
Diff since DifferentiationInterface-v0.6.50
Merged pull requests:
- clarify doc for differentiate_with (#767) (@yebai)
- perf: remove Mooncake warmup during preparation (#772) (@gdalle)
- Fix typo in Scenario docstring (#773) (@penelopeysm)
Closed issues:
DifferentiationInterface-v0.6.50
DifferentiationInterface DifferentiationInterface-v0.6.50
Diff since DifferentiationInterface-v0.6.49
Merged pull requests:
- fix: erase cache contexts before building function in Symbolics (#760) (@gdalle)
- fix: store sparsity pattern for symbolic backends (#764) (@gdalle)
Closed issues:
sparsity_patternmethod is not defined forAutoSymbolics(#763)
DifferentiationInterfaceTest-v0.9.6
DifferentiationInterfaceTest DifferentiationInterfaceTest-v0.9.6
Diff since DifferentiationInterfaceTest-v0.9.5
Merged pull requests:
- feat: fast prep modification for in-place FiniteDiff (#734) (@gdalle)
- fix: support
Cachein sparsity detection with SparseConnectivityTracer (#739) (@gdalle) - fix: check ForwardDiff tag manually to exclude contexts from it (#740) (@gdalle)
- perf: preallocate
Cacheduring preparation for ForwardDiff (#741) (@gdalle) - docs: improve and automate docstrings (#742) (@gdalle)
- perf: HVP with in-place gradient + inner preparation (#743) (@gdalle)
- chore: correct version number (#744) (@gdalle)
- feat: test type consistency between preparation and execution (#745) (@gdalle)
- fix: clarify dispatch for preparation (#746) (@gdalle)
- feat: support nested tuples of arrays as
Caches (#748) (@gdalle) - feat: add new
ConstantOrCachecontext (#749) (@gdalle) - Remove 1 backtick in excess (#752) (@franckgaga)
- fix: handle constant
ConstantOrCachewith Enzyme and SCT (#753) (@gdalle) - compat: allow ForwardDiff v1.0 (#755) (@gdalle)
- compat: allow ForwardDiff v1.0 in DIT (#756) (@gdalle)
- perf: use common subexpression elimination in AutoSymbolics (#759) (@baggepinnen)
Closed issues:
- Preparation for second order (#86)
- Resizing preparation results (#519)
- Add
Cacheas another type of context (#551) - Function annotation doesn't work for second-order Enzyme (#592)
- Fast preparation modification for FiniteDiff backend (#731)
- Mooncake Jacobian preperation fails when everything is a static array. (#736)
TracerSparsityDetector+ in-place RHS cache fails (#737)- using prep for out of place method? (#738)
- Support more complex caches (#747)
value_and_gradientwith Enzyme forward-mode returns a different type (#754)Symbolics.build_funcitonnow supports common-subexpression elimination (#758)
DifferentiationInterface-v0.6.49
DifferentiationInterface DifferentiationInterface-v0.6.49
Diff since DifferentiationInterface-v0.6.48
Merged pull requests:
- compat: allow ForwardDiff v1.0 (#755) (@gdalle)
- compat: allow ForwardDiff v1.0 in DIT (#756) (@gdalle)
- perf: use common subexpression elimination in AutoSymbolics (#759) (@baggepinnen)
Closed issues: