Add vLLM 0.20 per-TP FlashAttention profile smoke

This commit is contained in:
2026-07-16 21:00:27 +08:00
parent 13f0713bf2
commit e9a4be6153
7 changed files with 371 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
# 实验 EXP-SIMFID-Q30-P020同栈 per-TP operator profile 能否恢复 Frontier ranking
> **状态:** 运行中(用户已批准 5-step campaign
## Claim 与决策
- **Parent claim** Frontier 在 Qwen3-30B-A3B 的 TP×MNS surface 上出现 25.63% selection regret原因可能不是 simulator scheduler 本身,而是 execution profile 与真实 serving stack 不一致。
- **目的:** 区分 profile provenance mismatch 与 simulator composition/schema mismatch。
- **Competing hypotheses** H1换成与真实 serving 相同的 per-TP operator profiles 后profile-only ranking 达到 regret ≤5% 且 Kendall τ-b ≥0.8H2即使 operator profile 同栈Frontier 的 operator composition 或 mixed-state abstraction 仍无法保持 ranking。
- **事前预测:** 若 H1 成立,新 profile-only top set 应从旧结果的 TP4 移到真实 top family TP2且不需要 end-to-end scalar calibration若 H2 成立operator microbench 单项可对齐,但组成后的 config rank 仍错,残差应随 phase、batch state 或 TP action 系统变化。
- **判定规则:** `P-020` profile-only regret ≤5% 且 τ-b ≥0.8 → 支持 H1否则进入 stage/action-conditioned residual 分解,禁止用本 surface 的 E2E measurement 拟合 scale。
## Setup
- **自变量:** execution profile root`P-old`(历史 profile`P-020`(本实验冻结 profile`P-cal` 历史 per-TP scalar calibration 只作上界参照。
- **控制变量:** Frontier simulator code/commit、trace fixtures、KV capacity、SLO、12-cell config surface、random seed 与 analysis code保持完全相同。
- **System context** Qwen3-30B-A3BBF16 weights/activations/KVcommunity vLLM 0.20.0dash0 8×NVIDIA H20TP∈{1,2,4}DP=PP=EP=1MBT=8192MNS∈{8,16,32,64}prefix caching、chunked prefill 与 async scheduling均启用。
- **真实 runtime contract** engine log 已确认 TP1/2/4 均为 FlashAttention 3 attention + FlashInfer CUTLASS unquantized MoETP2/4 使用 FlashInfer TRT-LLM all-reduce。旧 profile log 明确为 vLLM 0.11.1attention backend 为 FlashInfer。
- **Workload 或 trace** 历史 ground truth `chat_w20260311_1000`source 600 s window、replay time scale 0.1、input 08192、fixed output 128、prefix cache on。当前本地 recovered artifact 无法重建 exact source requests本次只替换 frozen simulator profile不重跑或改写 ground truth。
- **Baselines** old profile-onlynew `P-020` profile-onlyhistorical frozen per-TP calibrated。
- **Metrics** real/sim capacity per GPU、selected top set、worst selected-config regret、Kendall τ-b、informative-pair direction、逐 TP operator-time ratio、profile coverage/extrapolation ratio。
## 预期产物与 review
- **预期数据:** TP1/2/4 attention、KV-cache update、linear、MoE、collective raw profiles冻结 manifest/sha25612-cell simulation outputs三 baseline comparison table。
- **Figure prototype** `mock-profile-ablation.png`x 为 12 configsy 为 normalized capacityseries 为 real、old profile-only、new profile-only、calibrated。图中数值明确标为 mock不进入结论。
- **人工 review** 已批准。用户明确要求推进 5 个步骤,并要求 smoke 通过后直接完整运行。
- **Review 意见:** 不能把 TPMNS 耦合拆成互不相关问题profile 只冻结 execution counterfactual 的证据,最终仍以完整 config ranking 判断。
## 复现信息
- **Code** AITuner 当前 branch `codex/fidelity-prefix-pilot-20260714`Frontier canonical commit `d9cfeb6d8791fbf2f295dd9744c56a666171776e`vLLM commit/tag `88d34c6409e9fb3c7b8ca0c04756f061d2099eb1` / `0.20.0`
- **Environment** `/tmp/wjh/venvs/vllm-0.20.0-cu129-profiler-v1`hardware/driver/package freeze 写入每个 profile artifact。
- **产物路径:** remote `/home/admin/cpfs/wjh/frontier_qwen30_vllm020_profiles/`; local harvest `runs/frontier-qwen30-vllm020-profile-v1/fleet-artifacts/`
- **已知 deviation** 历史 real ground truth 来自 dash1本次 profile 按用户要求在 dash0 生成。driver 也已从历史 570.133.20 漂移到 dash0 当前 580.95.05。结果只能归因于“profile stack alignment 在当前 dash0 上的效果”,不能声称严格复现旧 dash1 execution latency。
## 结果
- **观察事实:** 待完整 profile 与 simulation。
- **异常:** Frontier 原生 attention profiler 只实现 `FLASHINFER`/`NO_OP`,不能调用真实 serving 的 `FLASH_ATTN`;其 MoE wrapper声明并硬编码 vLLM 0.10.x API。vLLM 0.20.0 自带的 attention benchmark可调用实际 FlashAttention backend但 mixed prefill+decode 在 FA3 中是一个 fused varlen call而 Frontier schema将其拆成 `attn_prefill``attn_decode` 两项。
- **Interpretation 与剩余 alternatives** 这既是 profiler compatibility gap也是潜在 representational gap。先用真实 kernel smoke 判断能否无损物化 Frontier profile不能无损时同时保留 fused total 与 schema projection避免误把 projection error 当 kernel error。
- **Claim update** unchanged。
- **下一步:** 通过 vLLM 0.20 exact-kernel smoke冻结 trace-derived shape support完整 TP1/2/4 profilingprofile-only rerun。