triton-msl 0.1.0a2 — portability verified on NVIDIA
Pre-release
Pre-release
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.jitkernels run on Apple Metal and NVIDIA (checked on a rented A40): vector-add and the fp32/ieeematmul 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. SeePORTABILITY.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.