Skip to content

v0.1.2

Choose a tag to compare

@grantkl grantkl released this 07 Mar 16:21
· 4 commits to main since this release
3e19be0

What's New

  • +25 GPU wins (102 → 127) via reduction threshold tuning (4M → 256K elements)
  • Opt-in fast-math for transcendentals: set_config(fast_math=True) uses Metal fast:: intrinsics
  • Benchmark reliability fix — default workers changed from 3 → 1, eliminating GPU contention noise

Benchmark Highlights (vs NumPy, 1M float32)

Operation v0.1.1 v0.1.2
searchsorted 18.8x 32.5x
sin(a) 1.92x 2.41x
randn(a) 3.23x 3.69x
mod(a, b) 5.73x 7.57x
sort(a) 1.46x 1.57x

All Changes

  • Lower _GPU_REDUCTION_THRESHOLD from 4M to 256K elements
  • Add fast_math config option with Metal fast:: kernel variants
  • Add f64/c128 guards to reduction dispatch paths
  • Replace hardcoded thresholds in logic_ops with constants
  • Fix benchmark worker default (3 → 1) to prevent GPU contention
  • Update README benchmarks with stable serial-run numbers

Full Changelog: v0.1.1...v0.1.2

What's Changed

  • Release v0.1.2: GPU threshold tuning, fast-math, benchmark fixes by @grantkl in #7

Full Changelog: v0.1.1...v0.1.2