8000 Releases · QuantumKitHub/TensorOperations.jl · GitHub
[go: up one dir, main page]

Skip to content

Releases: QuantumKitHub/TensorOperations.jl

v5.5.0

28 Jan 15:59
ff410ee

Choose a tag to compare

TensorOperations v5.5.0

Diff since v5.4.0

We are excited to announce TensorOperations v5.5.0, which consists of two main new features.

Firstly, automatic differentiation support now includes both Mooncake.jl and Enzyme.jl, on top of the already existing Zygote.jl support.
We hope that by providing native rules for our methods we can retain both runtime performance, as well as manage the compile time costs that are often associated with some of these AD frameworks.

Secondly, we added some additional functionality to better facilitate working with stack-like allocators.
This not only simplifies the internal implementation of the Bumper.jl support we already had, but also allows us to include a new BufferAllocator strategy.
Similar to how Bumper.jl works, this allocator can be used to avoid having to repeatedly allocate, especially when performing tensor contractions in a loop.
However, unlike Bumper.jl, this buffer does not require a maximal size, and can automatically adapt its size for the workflow, hopefully leading to a more convenient user experience.

Merged pull requests:

  • Rules with Mooncake (#240) (@kshyatt)
  • Bump minimum supported version to 1.10 (lts) (#241) (@kshyatt)
  • Add Enzyme rules (#243) (@kshyatt)
  • Split pullbacks into separate files (#244) (@kshyatt)
  • Kron typo fixed (#245) (@ebelnikola)
  • Try enabling the complex tests for Mooncake (#246) (@kshyatt)
  • CompatHelper: bump compat for Mooncake in [extras] to 0.5, (keep existing compat) (#247) (@github-actions[bot])
  • Turn on one last Mooncake test (#249) (@kshyatt)
  • Don't run Enyzme tests on mac CI (#250) (@kshyatt)
  • [Feature] buffer- and stack-based allocator strategies (#251) (@lkdvos)

Closed issues:

  • Solving linear equations involving tensors (#27)
  • Best way to tensor reshaping (#46)
  • Method errors with Flux.jl and Knet.jl (#47)
  • How can I perform star contraction? (#50)
  • Feature Request: Add "axes" option in tensor contract (#74)
  • Using a constant rhs in @tensor (#111)
  • Literals get contracted as if they were symbols (#113)
  • TensorOperations.jl does not seem to support 32-bit Julia? (#123)
  • np.einsum_path vs TensorOperations (#156)
  • tensortrace not working on Arrays of Symbolic Expressions from Symbolics.jl. (#163)
  • Discussion : ussing nonlinearity and normalization in the operations (#187)
  • Try using Mooncake with existing rules and piping through to MatrixAlgebraKit (#237)
  • Symmetric matrix and their multiplications. (feature request) (#239)

v5.4.0

05 Jan 20:16
f646b83

Choose a tag to compare

TensorOperations v5.4.0

Diff since v5.3.1

This minor release contains a number of compat version updates, especially for cuTENSOR and CUDA.
Additionally, the automatic differentiation support has been improved to better support second order derivatives, along with a number 10BC0 of performance improvements.

Merged pull requests:

  • Bump dependency compat and try using TO on newer CUDA/cuTENSOR (#223) (@kshyatt)
  • Add warning to docs about mixing contraction order specification styles (#229) (@lkdvos)
  • Bump actions/checkout from 5 to 6 (#232) (@dependabot[bot])
  • Add support for higher-order derivatives (#233) (@yitan1)
  • CompatHelper: bump compat for DynamicPolynomials in [extras] to 0.6, (keep existing compat) (#234) (@github-actions[bot])
  • Avoid computing derivatives with respect to non-differentiable α, β (#236) (@lkdvos)
  • Some AD cleanup (#238) (@Jutho)

Closed issues:

  • document similar_from_indices? (#89)
  • ERROR: MethodError: no method matching Strided.UnsafeStridedView(::Hermitian{Float64,Array{Float64,2}}) (#102)
  • Calling ncon with a view throws MethodError (#119)
  • How can @tensor macro be used in variable length systems? (#125)
  • Add doesn't broadcast (#214)
  • Support for second-order differentiation (grad of grad) (#227)
  • Contraction order with parentheses + ncon style (#228)
  • Bug for CuArray matrix multiplication (#230)
  • Performance issue in Zygote AD for TensorOperations.@tensor on CUDA: costly CPU copies in rrule (#235)

v5.3.1

25 Sep 11:16
f37d338

Choose a tag to compare

TensorOperations v5.3.1

Diff since v5.3.0

Merged pull requests:

  • Bump actions/checkout from 4 to 5 (#221) (@dependabot[bot])
  • Update URLs and support buildkite GPU testing (#222) (@kshyatt)
  • Qualify constructor of CUDAAllocator in cuTENSOR extension (#224) (@giordano)
  • [Fix] include alpha when determining the scalartype of a linear combination (#225) (@lkdvos)

Closed issues:

v5.3.0

29 Jul 01:31
abbd9ba

Choose a tag to compare

TensorOperations v5.3.0

Diff since v5.2.1

This minor version release includes some small fixes, but most importantly changes the precompilation from being opt-out to opt-in. This is mostly because it can take a substantial amount of time, and some users have ran into issues where the precompilation hangs indefinitely, especially on certain cluster architectures.

Merged pull requests:

v5.2.1

28 Jul 12:07
71191a6

Choose a tag to compare

TensorOperations v5.2.1

Diff since v5.2.0

Merged pull requests:

  • [Fix] makeblascontractable should return blascontractable objects. (#210) (@lkdvos)
  • Clean up cuTENSOR plan memory (#212) (@lkdvos)

Closed issues:

  • Enable to perform this operation (#209)
  • Potential memory leak for cuTENSOR contractions with minimal example (#211)

v5.2.0

03 Apr 13:06
390aed8

Choose a tag to compare

TensorOperations v5.2.0

Diff since v5.1.4

v5.2.0 attempts to improve the overall user experience by including some precompilation for the main methods of this package. For now, this is limited to Array{Float64} or Array{ComplexF64} to not overburden the precompilation time, and we'll be monitoring the implications and adjust accordingly if necessary.

Merged pull requests:

Closed issues:

  • Incorrect result when using input tensor to store result of contraction involving sum (#192)

v5.1.4

27 Feb 16:29
68e0eda

Choose a tag to compare

TensorOperations v5.1.4

Diff since v5.1.3

Merged pull requests:

Closed issues:

  • Debugging bus errors triggered from TensorOperations CUDA calls (#201)

v5.1.3

15 Nov 13:03
d6a508b

Choose a tag to compare

TensorOperations v5.1.3

Diff since v5.1.2

Merged pull requests:

v5.1.2

30 Oct 00:38
dd55aa8

Choose a tag to compare

TensorOperations v5.1.2

Diff since v5.1.1

Fixes a missing allocator in tensorfree!which led to memory leaks in the ManualAllocatorstrategy

Merged pull requests:

  • fix missing allocator in tensorfree (#197) (@Jutho)

Closed issues:

  • Einsum Expression works in numpy but not TensorOperations (#195)

v5.1.1

27 Oct 20:57

Choose a tag to compare

TensorOperations v5.1.1

Diff since v5.1.0

  • fix excessive compilation times for large rank arrays
0