Skip to content

triton-msl 0.1.0a2 — portability verified on NVIDIA

Pre-release
Pre-release

Choose a tag to compare

@bledden bledden released this 02 Jul 14:12

First public alpha with the portability story verified on real NVIDIA silicon.

pip install triton-msl==0.1.0a2   # import triton_msl
pip install "triton>=3.6.0"       # Triton, installed separately (build from source on macOS)

Highlights

  • Portability — verified. The same unmodified @triton.jit kernels run on Apple Metal and NVIDIA (checked on a rented A40): vector-add and the fp32/ieee matmul were bit-identical across vendors; softmax matched to fp rounding (~1e-9). Develop and correctness-debug on your Mac; it's the same code that runs on CUDA. See PORTABILITY.md.
  • Correctness — the anti-silent-wrong campaign. ~75 silent-wrong bugs closed across the dot/reduce/store surfaces (plus three fuzzers); the dot and reduce paths are now correct-or-refuse by construction — general address-traced matmul stride inference, a structural reduce-combine classifier, masked-store correctness.
  • torch.compile — a persistent MSL stash makes warm GPT-2 small ~2.1 ms (~24×), faster than PyTorch's own native-MPS Inductor path; NaN-propagating reductions, CNN/BatchNorm, fused reduce+scan.
  • Performance (M4 Max) — matmul ~11–12 TFLOP/s (fp32/fp16/bf16), FlashAttention head_dim 128 at 5.1/6.3 TFLOP/s, zero-copy memory-bound ~315–347 GB/s.
  • Integrity contract — kernels we can lower run correctly; those we can't are refused loudly (MetalNonRecoverableError), never silent-wrong.

Project suite 1,968 / 0; upstream Triton test_core conformance 5,560 / 0 / 3,782 skips.

Full details: CHANGELOG.md.