
noonghunnaandClaude Opus 4.8
fabf9ce1ea
feat(qwen): flip multi-max to fp8/e4m3 KV + weights-conditional Ampere compat
Follow-up to #594 (which flipped dual-max int8-PTH -> fp8). Mirrors it on the
4-card tier and makes the registry/compat model reflect reality:
- multi4/fp8/mtp.yml: KV default int8_per_token_head -> fp8 (+ header, mirrors
dual-max: fp8->e4m3, FlashInfer, scale=1.0, not-e5m2)
- registry kv_format: dual-max + multi-max int8_per_token_head -> fp8_e4m3
(jesse's #594 changed only the compose, leaving the registry stale) + de-stale
the status_notes (fp8 KV, 8-pack 109 ties 107, soak p50 125.5)
- compat.py C5: weights-conditional rule. fp8_e4m3 KV is allowed on Ampere
(sm>=8.6) ONLY for fp8-weights checkpoints (FlashInfer path). Non-fp8 weights
(Gemma W4A16) still route to Triton (needs SM89+) and stay correctly rejected.
No rtx-3090 profile change -> Gemma protection intact via the profile.
- test-launch-compat: assert BOTH directions (Qwen fp8-weights passes, Gemma
gemma-mtp-tp1 still fails C5) so the rule + registry stay in sync.
- DTYPE_MATRIX: cite vLLM's fp8-KV blog (scale=1.0 = near-lossless lower bound;
Qwen3.5-27B matches baseline AUC @1M) + document the weights-conditional rule.
Validated: dual-max + multi-max validate-variant PASS with fp8_e4m3 on 2x/4x
3090; gemma-mtp-tp1 still rejected. 11 compat/registry guards green.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01EfF565T9eSLaqGzidyJ1Pm
2026-07-06 14:55:01 +00:00
..
2026-07-05 03:23:49 +00:00
2026-07-05 17:12:10 +00:00
2026-07-05 09:55:54 +00:00
2026-06-13 18:53:54 +05:00
2026-07-05 09:55:54 +00:00
2026-07-01 05:58:19 +05:00
2026-06-05 11:27:17 +00:00
2026-05-29 07:59:42 +05:00
2026-06-18 17:45:45 +00:00
2026-07-03 03:50:14 +00:00
2026-05-31 22:13:52 +05:00
2026-05-30 21:10:49 +05:00
2026-07-05 06:41:07 +00:00
2026-07-05 23:20:06 +00:00
2026-07-02 07:58:13 +00:00
2026-06-20 23:41:47 +00:00
2026-06-24 14:07:06 +00:00
2026-06-21 04:38:46 +05:00
2026-06-01 01:21:51 +05:00
2026-07-05 05:56:27 +00:00
2026-07-04 10:35:00 +00:00
2026-06-05 14:02:38 +00:00
2026-06-06 11:30:27 +00:00
2026-06-25 09:01:46 +05:00
2026-06-18 08:43:00 +00:00
2026-06-15 06:35:39 +05:00
2026-05-18 19:29:43 +00:00
2026-06-18 18:34:21 +00:00
2026-06-06 00:46:13 +00:00
2026-07-06 14:55:01 +00:00
2026-05-30 21:10:49 +05:00
2026-06-05 15:26:29 +00:00
2026-06-21 20:03:56 +00:00
2026-05-29 07:59:42 +05:00
2026-06-10 00:47:10 +00:00
2026-07-02 07:58:13 +00:00
2026-07-03 17:44:17 -07:00
2026-06-05 06:36:15 +00:00
2026-07-05 00:08:03 +00:00
2026-05-31 22:13:52 +05:00
2026-06-14 00:21:35 +05:00
2026-07-02 12:31:35 +00:00
2026-07-05 06:16:59 +00:00
2026-06-18 08:43:00 +00:00
2026-06-05 15:26:29 +00:00
2026-06-06 00:46:13 +00:00
2026-07-02 23:24:28 +00:00
2026-06-18 01:10:01 +05:00
2026-06-13 19:11:35 +05:00
2026-06-18 05:57:19 +05:00
2026-07-04 15:25:36 +00:00
2026-05-30 17:52:09 +05:00
2026-07-02 07:58:13 +00:00
2026-06-14 04:17:04 +05:00
2026-06-29 23:54:53 +00:00
2026-05-23 08:24:58 +05:00
2026-06-06 00:46:13 +00:00
2026-06-18 08:43:00 +00:00
2026-05-31 22:13:52 +05:00
2026-06-04 05:37:16 +00:00
2026-05-26 15:58:08 +00:00
2026-07-04 22:22:54 +00:00
2026-06-15 06:35:43 +05:00