You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
§19 measured fp8 speed for the two routes that ran. §20 is the **explicit 3-route enablement audit**
1323
+
after the committed toolchain fixes (the NVRTC loader-path self-heal `cppmega_mlx/_gb10_nvrtc_env.py`
1324
+
+ the R2 cuda port), re-running the full microbench `--prod` under the fixed env as the SOLE gb10
1325
+
owner (box polled idle: 0% util, 116 GB free, no other worker). It answers the de-risk question
1326
+
directly — **X of 3 fp8 routes now REALLY run real fp8 on sm_121, and is each "fp8" number genuine
1327
+
e4m3 (not bf16 mislabeled)?**
1328
+
1329
+
**ENABLEMENT TALLY — 2 of 3 routes RUN real fp8; 1 is genuinely upstream-blocked:**
1330
+
1331
+
| route | recipe | RUNS on sm_121? | the §18 blocker now… | real fp8? (RULE #1 proof) |
1332
+
|---|---|---|---|---|
1333
+
|**R1 MXFP8**| TE `MXFP8BlockScaling`|**NO — upstream-blocked**| TE's own gate STILL raises "MXFP8 (for all gemm layouts) is not supported on 12.0+ architectures yet" | n/a — `ran=False`, recorded as the exact TE message, NEVER degraded to bf16/tensorwise |
1334
+
|**R1 tensorwise**| TE `DelayedScaling(E4M3)`|**YES**| the `libnvrtc-builtins.so.13.3` error is **GONE**| E4M3 cuBLASLt fp8 MMA; 1.57–1.83× over bf16 on identical shapes (only fp8 tensor cores deliver this), parity 0.0376 |
1335
+
|**R2 ours (cuda)**| in-house e4m3 dequant→`T.gemm`|**YES**| the "MLX Metal unavailable" error is **GONE** (cuda port pulled) | native `torch.float8_e4m3fn` operand (kernel RAISES if not e4m3), 2.0× byte-halving, parity 0.0376 |
1336
+
1337
+
**MEASURED per prod bs4 GEMM (M=16384, 20 iters, e4m3 vs bf16-cuBLAS over ALL elements; this run):**
0 commit comments