Skip to content

[Bench][SM70] Record Qwen3.8 QPN8 quality/performance A/B - #375

Merged
yangzhuxinyzx merged 19 commits into
mainfrom
codex/v100-qwen38-nvfp4-decode-quality-audit-20260828-025709
Aug 28, 2026
Merged

yangzhuxinyzx merged 19 commits into
mainfrom
codex/v100-qwen38-nvfp4-decode-quality-audit-20260828-025709

Conversation

@yangzhuxinyzx

@yangzhuxinyzx yangzhuxinyzx commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Purpose

  • Add repeatable --engine-arg KEY=VALUE overrides to the SM70 GSM8K driver
    for matched resident-model A/B runs.
  • Prefer boxed answers and correctly parse signed/comma-separated integers while
    rejecting non-integral decimals.
  • Record the Qwen3.8 online-QPN8 quality/performance A/B on the current policy.

Audit decision

  • The runtime QPN8 policy is unchanged: it remains default-on for the exact
    SM70/TP4/B1/no-MTP contract, with an explicit environment opt-out for
    diagnosis.
  • Matched GSM8K result: 96/96 correct with QPN8 both off and on.
  • Mean steady decode improves from 67.627 to 79.105 tok/s (+16.97%); median
    improves from 67.640 to 79.369 tok/s (+17.34%).
  • Aggregate repeated-4-gram mean is nearly unchanged (0.0394 versus 0.0410).
    One correct but substantially longer/repetitive output is documented for
    continued long-output monitoring.
  • Token-hash identity and projection relative-L2 are recorded as diagnostics,
    not used alone to reject a task-accurate sampled-inference speedup.
  • Repairs [Bench][SM70] Repair #375 without disabling QPN8 #376 and [Core][SM70] Keep Qwen3.8 QPN8 default-on after #375 A/B #379 removed the attempted default-off runtime changes and
    rebuilt the accepted content from the latest audited main.

Test Plan

  • Run the focused benchmark parser/argument and adjacent online-QPN8 tests.
  • Run changed-file and repository-wide pre-commit gates.
  • Lock the final head and compare the Git tree before merging.

Test Result

  • 27 focused tests passed.
  • One native CUDA-extension test was deselected because the clean source
    checkout has no compiled vllm._C QPN8 operator.
  • Changed-file pre-commit passed.
  • Full GitHub pre-commit passed on the repaired tree and is rerunning on the
    final [Bench][SM70] Record Qwen3.8 QPN8 quality/performance A/B #375 merge head.
  • All repair commits are DCO signed.

Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
@yangzhuxinyzx
yangzhuxinyzx force-pushed the codex/v100-qwen38-nvfp4-decode-quality-audit-20260828-025709 branch from d263747 to f651eb8 Compare August 28, 2026 03:54
@yangzhuxinyzx

Copy link
Copy Markdown
Contributor Author

审计结论:当前不合并,保持 Draft/Open。该 PR 会把已有 82.274 tok/s 性能证据的在线 QPN8 改为默认关闭,但 PR 自身明确说明匹配的 TP4/no-MTP 多种子任务质量 A/B 尚未完成;2.44%-2.75% 权重相对 L2 不能直接等价为任务质量回退。按照项目约定,已有性能提升默认开启,允许非 greedy 数值差异,是否回退应由聚合输出质量、无效/截断/重复率和同口径吞吐共同决定。建议先完成 PR 描述中的模型级 A/B;若发现任务质量回退,再优先修复/缩窄到形状或层级保护,而不是先全局关掉快路。

Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
@yangzhuxinyzx

Copy link
Copy Markdown
Contributor Author

已按审计结论创建修复 PR #376:保留本 PR 的 engine 参数透传与 boxed-answer GSM8K 解析,同时同步最新 main,并撤回缺少匹配模型级 A/B 支持的默认关闭 QPN8 改动。#376 门禁通过后会先合并回本分支,再按最新头提交重新审计并合并 #375

Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
…n-latest-main-20260828-1205

[Bench][SM70] Repair #375 without disabling QPN8
@yangzhuxinyzx

Copy link
Copy Markdown
Contributor Author

已通过 #376 在最新 main 上完成修复:去掉无匹配模型级 A/B 支撑的 QPN8 默认关闭改动,保留已审计通过的 benchmark 参数覆盖与答案解析增强。当前锁定源码树为 31da3a72960d468a78a9ce63bac63a1af59ed68f;待本分支新 head 的完整门禁结束后合并 main。

@yangzhuxinyzx yangzhuxinyzx changed the title [Bugfix][SM70] Keep Qwen3.8 dense QPN8 opt-in [Bench][SM70] Harden Qwen3.8 GSM8K audit driver Aug 28, 2026
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
@yangzhuxinyzx yangzhuxinyzx changed the title [Bench][SM70] Harden Qwen3.8 GSM8K audit driver [Bugfix][SM70] Keep Qwen3.8 online QPN8 opt-in Aug 28, 2026
@yangzhuxinyzx

Copy link
Copy Markdown
Contributor Author

更新审计结论:前述“缺少匹配模型级 A/B”的阻塞条件已消除,本评论取代早先的临时结论。

  • 固定同一执行 SHA、TP4/PP1、V2、no-MTP、FP16 activation/KV、FlashAttention-V100/FlashQLA、graph、32 题 x 3 种子,仅切换 online QPN8 及其依赖的 GDN BA split。
  • boxed-first 重评后 off/on 均为 96/96,无 invalid、截断、替换字符或 NUL,192 个请求全部自然 stop。
  • online QPN8 平均稳态 decode 从 67.627 升到 79.105 tok/s(+16.97%),中位数从 67.640 升到 79.369 tok/s(+17.34%)。
  • 但只有 8/96 对 token hash 一致,平均绝对输出长度差 133.52 tokens;一条仍答对的歧义题的推理循环从 1653 tokens/0.199 重复率放大到 3626 tokens/0.507。
  • 结合 48 层六类稠密投影相对原 FP16 的 2.44%-2.75% L2 误差,96 样本无任务正确率回退不足以证明精度等价。

因此最终决策是保留该快路及其性能收益,但改为显式 opt-in,不再默认破坏只量化 routed experts 的发布 checkpoint 精度合同。分支已同步最新 main,包含 PR #373 的压缩 QSA 物理页清零修复;定向套件 46 passed、5 skipped、1 deselected。PR 继续保持 Draft,等待当前 head CI。

Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
Signed-off-by: yangzhuxinyzx <153831768+yangzhuxinyzx@users.noreply.github.com>
@yangzhuxinyzx

Copy link
Copy Markdown
Contributor Author

合并前锁定发现 5cb8dca 又引入 QPN8 默认关闭。新证据本身显示两臂 GSM8K 均为 96/96,而 QPN8 平均解码提升 16.97%,总体重复率几乎不变;按项目策略不因 token hash 或权重 L2 单独关闭加速。已在 Draft #379 从最新 main 重建:保留 benchmark 与 A/B 记录、保持 QPN8 默认开启,待完整门禁后合并回来。

…n-latest-main-v2-20260828-1228

[Core][SM70] Keep Qwen3.8 QPN8 default-on after #375 A/B
@yangzhuxinyzx yangzhuxinyzx changed the title [Bugfix][SM70] Keep Qwen3.8 online QPN8 opt-in [Bench][SM70] Record Qwen3.8 QPN8 quality/performance A/B Aug 28, 2026
@yangzhuxinyzx
yangzhuxinyzx marked this pull request as ready for review August 28, 2026 04:41
@yangzhuxinyzx

Copy link
Copy Markdown
Contributor Author

最终审计完成:锁定 head 6bdb63e、源码树 64bc3837b47f90ad89d0674878a6311c87fed06d;27 个聚焦测试、changed-file pre-commit 和最终完整 GitHub pre-commit 均通过。最终内容仅为 GSM8K A/B 工具、测试和质量/性能记录,QPN8 运行时继续默认开启。现合并 main。

@yangzhuxinyzx
yangzhuxinyzx merged commit b410e59 into main Aug 28, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant