Skip to content

v7.4: Fast Tensor Contractions

Choose a tag to compare

@ashvardanian ashvardanian released this 04 Apr 23:26
· 162 commits to main since this release
  • Faster tensor contractions
  • Faster GEMM "packers" with SIMD
  • New SVE+SDOT kernels for i8
  • MSVC build stability on Arm

Minor

  • Add: WASM elementwise ops & spatial mini-float kernels (81b8c44)
  • Add: WASM type-casting kernels (e09df31)
  • Add: SVE+SDOT ops for 8-bit integers (913fc6b)

Patch

  • Fix: Misplaced NEON loads/stores in Sierra (05e3045)
  • Fix: Avoid unconsitional np symbols (9dffb68)
  • Make: Resolve probe locations for NPM consumers (c602f45)
  • Docs: Refined "What's Inside" (28f35cd)
  • Docs: Mini-float kernel selection strategy (04e6598)
  • Improve: Accelerate PyTests, reduce Decimal use (2417248)
  • Make: Move .pyi for PyLance (688ec2d)
  • Fix: Inconsistent SME function qualifiers (5b4148a)
  • Improve: Smaller test inputs under QEMU (ee36bf2)
  • Improve: Vectorize GEMM "packers" (86127a4)
  • Make: Longer timeouts for QEMU in CI (a9cc732)
  • Fix: vec_t store helper args order (eecbcac)
  • Fix: Negative stride tensor reductions (3ea81be)
  • Improve: Recursive stride collapsing and axis-lane fast paths for N-D reductions (cf8eaf6)
  • Improve: Faster reductions in strided tensors (61651ed)
  • Improve: Wider NEON curved, mesh, & probability F16 kernels (1c17678)
  • Fix: Harden mini-float type-casting (1911b89)
  • Make: Ship win32-arm64 NPM builds (578b7ad)
  • Make: Auto-bump JS platform-specific versions (5617f75)
  • Fix: vcombine instead of initializer lists for NEON arrays in MSVC (906c178)
  • Fix: Avoid flaky vld1_f16 for MSVC (7a987d2)