From 39766141fb9dae2dd4ef6a6e6f56568a36b4047c Mon Sep 17 00:00:00 2001 From: Gahow Wang Date: Mon, 20 Jul 2026 12:05:20 +0800 Subject: [PATCH] Decompose good/bad selection split across frozen surfaces Co-Authored-By: Claude Fable 5 --- .../frontier-split-rootcause-s0-20260720.md | 60 + .research/ongoing.md | 13 +- .../analyze_split_decomposition.py | 1444 ++++ .../q235-ablation-a1-prov/aituner.commit | 1 + .../q235-ablation-a1-prov/artifacts.sha256 | 180 + .../q235-ablation-a1-prov/frontier.commit | 1 + .../q235-ablation-a1-prov/input.sha256 | 4 + .../q235-ablation-a1/comparison.json | 799 ++ .../q235-ablation-a1/comparison.md | 24 + .../q235-fourcase-a0/comparison.json | 952 +++ .../q235-fourcase-a0/comparison.md | 24 + .../state-diagnosis-exact.json | 1587 ++++ .../q235-state-diag/state-diagnosis-exact.md | 54 + .../state-diagnosis-optrace.json | 1405 ++++ .../state-diagnosis-optrace.md | 48 + .../q235-state-diag/state-diagnosis.json | 1361 +++ .../q235-state-diag/state-diagnosis.md | 47 + .../q30-admission-diag/result.json | 173 + .../q30-admission-diag/result.md | 18 + .../q30-expansion-lo/analysis-launch.log | 2 + .../q30-expansion-lo/fixed-pd-comparison.json | 453 + .../q30-expansion-lo/fixed-pd-comparison.md | 10 + .../fixed-pd-comparison.stdout.json | 1 + .../q30-expansion-lo/fixed-pd-real-audit.json | 1298 +++ .../q30-expansion-lo/fixed-pd-real-audit.md | 12 + .../fixed-pd-real-audit.stdout.json | 1 + .../q30-expansion-lo/fixed-po-comparison.json | 326 + .../q30-expansion-lo/fixed-po-comparison.md | 8 + .../fixed-po-comparison.stdout.json | 1 + .../q30-expansion-lo/fixed-po-real-audit.json | 997 +++ .../q30-expansion-lo/fixed-po-real-audit.md | 10 + .../fixed-po-real-audit.stdout.json | 1 + .../q30-expansion-lo/trace-po-comparison.json | 326 + .../q30-expansion-lo/trace-po-comparison.md | 8 + .../trace-po-comparison.stdout.json | 1 + .../q30-expansion-lo/trace-po-real-audit.json | 997 +++ .../q30-expansion-lo/trace-po-real-audit.md | 10 + .../trace-po-real-audit.stdout.json | 1 + .../q30-fixed-hi/fixed-pd/comparison.json | 453 + .../q30-fixed-hi/fixed-pd/comparison.md | 10 + .../q30-fixed-hi/fixed-pd/real-audit.json | 1298 +++ .../q30-fixed-hi/fixed-pd/real-audit.md | 12 + .../q30-fixed-hi/fixed-po/comparison.json | 326 + .../q30-fixed-hi/fixed-po/comparison.md | 8 + .../q30-fixed-hi/fixed-po/real-audit.json | 997 +++ .../q30-fixed-hi/fixed-po/real-audit.md | 10 + .../q30-trace-pd/comparison.json | 726 ++ .../frozen-inputs/q30-trace-pd/comparison.md | 29 + .../frozen-inputs/q30-trace-pd/launch.log | 2 + .../frozen-inputs/q30-trace-pd/summary.json | 230 + .../results/decision-pair-axis.png | Bin 0 -> 127495 bytes .../results/decomposition.json | 7410 +++++++++++++++++ .../results/decomposition.md | 301 + .../results/margin-vs-residual.png | Bin 0 -> 222845 bytes 54 files changed, 24465 insertions(+), 5 deletions(-) create mode 100644 .research/experiments/frontier-split-rootcause-s0-20260720.md create mode 100644 runs/frontier-split-rootcause-v0/analyze_split_decomposition.py create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/aituner.commit create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/artifacts.sha256 create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/frontier.commit create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/input.sha256 create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/analysis-launch.log create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.stdout.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.stdout.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.stdout.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.stdout.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.stdout.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.stdout.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.json create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.md create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/launch.log create mode 100644 runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/summary.json create mode 100644 runs/frontier-split-rootcause-v0/results/decision-pair-axis.png create mode 100644 runs/frontier-split-rootcause-v0/results/decomposition.json create mode 100644 runs/frontier-split-rootcause-v0/results/decomposition.md create mode 100644 runs/frontier-split-rootcause-v0/results/margin-vs-residual.png diff --git a/.research/experiments/frontier-split-rootcause-s0-20260720.md b/.research/experiments/frontier-split-rootcause-s0-20260720.md new file mode 100644 index 0000000..10db9e3 --- /dev/null +++ b/.research/experiments/frontier-split-rootcause-s0-20260720.md @@ -0,0 +1,60 @@ +# 实验 S0:good/bad case 分裂的统一分解(margin vs differential residual) + +> **状态:** 已完成(2026-07-20;含 S0b 方向化修正与一轮 strict review 修复) +> +> 用户指令:核心要务是分析为什么部分 case 下 Frontier work、部分不 work 的 system 根因;本 card 是该诊断 campaign 的第一个 slice,仅使用 frozen artifacts,零 GPU 成本。人工 review 由用户的直接指令("只有做好这个分析我们才能推进下一步")满足。 + +## Claim 与决策 + +- **Parent claim:** ongoing.md H2——误差机制是 action-conditioned residual;本实验把它细化为"分裂从哪来"。 +- **现象(已冻结):** 同一 best-effort Frontier 栈上,Q30/Q235 的 Trace-PD 与多数 PO 面 selection 近优,而 Fixed-PD 面 14–58% regret;失败 objective 随负载档切换(Q30 低压 TPOT/E2E 全反、高压 TTFT 56–58%);A1 collective profile 修复了 Q235 Trace-PO p90 21.2%→0.3% 但对 Fixed-PD 33% 完全无效(本 card frozen-inputs/q235-ablation-a1)。 +- **Competing hypotheses:** + - **H-SCALE:** 分裂完全由「config-differential residual vs 真机 decision margin」的关系解释:good case 的 sim/real 比值跨 config 近似均匀(乘性偏移,argmin 不变),bad case 的比值跨 config 分散且超过 margin。workload shape 本身不需要出现在解释里。 + - **H-THRESH:** 绝对 service-time 高估近似均匀,但与离散机制(MNS admission cap、MoE token-bucket、graph bucket)交互后被转换为 config-differential 误差;fixed uniform workload 把所有请求同步到同一 state 轨迹,使阈值交叉对整个 cell 相干生效;trace 的长度/到达异质性把阈值效应摊平。 + - **H-STATE:** 失败由 simulator 闭环 batch state 分布漂移主导(Q235:sim decode batch 13.5 vs real 3.9 + B4→B5 profile cliff 正反馈);即使打破 workload 同步性,闭环漂移仍可翻转排序。 + - 三者关系:H-SCALE 是现象层(必要条件),H-THRESH/H-STATE 是 differential residual 的两种产生机制,可共存但可判别(见事前预测)。 +- **事前预测:** + - H-SCALE 成立 ⟺ 对每个 case×objective,failure 恰好发生在「top 邻域 log-ratio spread > log1p(真机相对 margin)」处(两侧同为 log-space 尺度),无反例。 + - H-THRESH 独有:bad case 的 differential 误差集中于阈值语义分量(first-scheduling wait、bucket 跳变段),且 sim-only 反事实(去阈值/加 jitter)恢复排序——Q30 高压 TTFT 的 admission 反事实已支持一例。 + - H-STATE 独有:差异化误差在去掉阈值分量后仍在 execution 项内(Q235 Fixed-PD 的 own-composition −20.07 vs exact-state +10.90 已支持一例)。 +- **判定规则:** S0 只裁决 H-SCALE 与「分量定位」(queue vs execution);H-THRESH/H-STATE 的干预判别属 S1+(sim-only 反事实)与 GPU 实验(需另行 review)。若 H-SCALE 出现反例(good case 有 spread>margin 仍选对,或 bad case spread5%;H-SCALE 检验=failure ⟺ 邻域 spread>log1p(margin)(review 修正:初版直接以 ln 差比较普通 relative margin,尺度不一致;修正后 70 行 verdict 不变)。 +- **分量定位:** q30-admission-diag 提供 TTFT=first-scheduling wait+prefill execution 分解;q235-state-diag 提供 own-composition vs exact-state contrast;把这些已知分量证据合并进统一表。 +- **交叉核对:** 重算的 regret 必须与各 frozen comparison.md 表一致(抽查 58.0%、33.0%、0.0%);A0 vs A1 的 Q235 对比必须复现 trace-po p90 21.2%→0.3%、fixed-pd 四项不变。 + +## 预期产物与 review + +- runs/frontier-split-rootcause-v0/analyze_split_decomposition.py(只读 frozen-inputs,确定性输出) +- runs/frontier-split-rootcause-v0/results/decomposition.{json,md}:统一表,每行 case×objective,列出 winner、regret、scale、spread(全/邻域)、margin、H-SCALE verdict、已知分量归因 +- runs/frontier-split-rootcause-v0/results/margin-vs-residual.png:x=真机 margin,y=邻域 differential residual,点色=selection 对错;H-SCALE 成立则对错点被对角线分离 +- 人工验收:编排者亲自重跑脚本、抽查交叉核对数字、亲自查看渲染图 + +## 复现信息 + +- **Code:** AITuner branch feature/sim,自 HEAD 18c0b25 起;worker/reviewer job-id 见下方「Review 与 provenance 补记」;脚本与产物随本 card 同一 commit 入库(含 frozen-inputs 本地拷贝)。 +- **Environment:** 本地 workstation,CPU-only,python3+matplotlib;不访问远端。 +- **已知 deviation:** frozen-inputs 是 cpfs 原件的本地拷贝(scp,2026-07-20);q30-expansion-lo 的低压 Fixed-PD 面已被高压面取代为 primary,本分析将两档并列为独立观测,不混合。 + +## 结果 + +- **观察事实:** + - 70 行(14 个 case surface)全部算出,无数据缺口;四组硬性交叉核对通过;连续运行产物 SHA 一致。 + - **H-SCALE 判为必要非充分**:23 个 material failure(regret>5%)全部满足「top-3 邻域 log spread > log1p(margin)」,无一例失败发生在 residual 小于 margin 处;但另有 40/70 行同样满足该条件却均非 material failure(其中仅 16 行 exact winner match,其余 24 行是小 regret 的 winner 错位——14 个 MNS 精确 tie 与 10 个 strict reversal)——无方向 spread 不携带决策信息。 + - **S0b 方向化后的机制普查**:23 个 material failure 的 winner-deciding pair 分布为 tp-axis 11、mixed 10、mns-axis 2(Q235 A0/A1 Fixed-PD 的 8 个 TPOT/E2E failure 全为 tp-axis;Q30 Fixed-PD 高低压为 tp/mixed);仅有的 2 个 mns-axis failure 是 Q235 A0/A1 Trace-PD E2E p90(regret 6.2%,勉强越过 5% 门槛)。trace 面严格反序中 tp-axis 为 0(q30 trace-pd 三轴全 0)。 + - **A1 对照的轴分解**:serving-matched collective profile 把 Q235 两个 PO 面的 tp-axis 反序从 4/4 清零(trace-po p90 regret 21.2%→0.3%),但 Fixed-PD 仅 5→4、四项 regret 一位小数不动——prefill 路径的 TP-differential 误差源=collective profile(可修),decode 耦合的 TP-differential 误差另有来源。 + - **MNS 不敏感缺陷**:14 个 winner-label mismatch 是 simulator 逐位相等的 tie,全部 mns-axis(如 q30 fixed-po 的 MNS16↔32、q235 fixed-pd 的 MNS64↔128);tie 计入后 MNS 边界误差 31 与 TP 严格反序 32 相当,但 MNS 侧 regret 小。 + - **成功的鲁棒性**:23 个 exact-winner success 中 17 个 margin-robust(margin≥1%),6 个 fragile(含 q30 trace-pd E2E p90 的 0.1% margin 与 q235 A1 fixed-po 四项)。 + - **面级 scale 对照**:prefill-only 面 geomean scale 0.96–1.37×(绝对预测基本准确),含 decode 的面 4.3–130×——绝对误差灾难集中于 decode。 +- **异常:** 无数据异常。strict review(FAIL:3 Major/1 Minor)指出 H-SCALE 尺度混用(log spread vs relative margin)、tie 轴普查缺失、card 状态过期、Q235 一致性表述过强;全部修复,修复后 70 行 verdict 逐行不变。 +- **含义:** 分裂的现象层解释是「margin 保护 + config-differential 误差」。机制层上,21/23 个 material failure 由 TP/mixed pair 决定,且所有大 regret(≥13%)failure 都发生在含 decode 的面上:其中 Q235 Fixed-PD 有 state-drift 直接证据、Q30 高压 TTFT 有 admission 反事实证据,而 **Q30 低压 TPOT/E2E 反转的机制尚未诊断**(S1 目标)。「decode 耦合的 TP-differential 误差是主要载体」是当前最强归纳,不是对全部 failure 的已证机制归因;2 个 mns-axis 边缘 failure(6.2%)在该归纳之外。trace 面成功伴随「TP 反序为零 + TP margin 宽」,但「误差小」与「margin 宽」谁是主因仍未判——这正是 H-THRESH vs H-STATE 的判别缺口。轴标签与机制不一一对应(Q30 admission 是 MNS 阈值机制但 deciding pair 为 tp/mixed,因 TP 改变到达压力)。 +- **Claim update:** H2(action-conditioned residual)supported 且被细化:residual 的决策相关分量集中在 TP 轴、由 decode 状态耦合产生;H-SCALE 降级为必要条件;H-THRESH/H-STATE 保持 competing,待 S1 判别。 +- **下一步:** S1(sim-only 反事实:Q30 低压 Fixed-PD TPOT 反转的分量定位——这是唯一无机制解释的 material failure;fixed workload jitter 判别 H-THRESH vs H-STATE);GPU 判别实验(加压 Trace-PD、jittered Fixed-PD 真机面,dash1–4)另行出 card 供 review。 + +## Review 与 provenance 补记 + +- S0 worker:codex `task-mrsn1s9c-z6ha0w`;S0b:`task-mrsnjzn6-k18x4n`(resume);strict reviewer(fresh 只读):`task-mrsocmlb-386btc`(verdict FAIL);修复轮:`task-mrsop06n-pwxo0b`(fresh writable)。编排者独立验收:脚本重跑、SHA 比对、两图目视检查。 +- 产物 SHA(修复后):decomposition.json `81ea56b2…`、decomposition.md `4d19af54…`、margin-vs-residual.png `df2110c4…`、decision-pair-axis.png `2e787301…`。 diff --git a/.research/ongoing.md b/.research/ongoing.md index c97e5ce..dcc6521 100644 --- a/.research/ongoing.md +++ b/.research/ongoing.md @@ -3,14 +3,16 @@ > 2026-07-17|写给未参与项目的读者,可直接作为 presentation 讲稿。历史过程与复现信息见 `../runs/*/` 各 experiment card、`../docs/` 各 campaign 文档。 > > **2026-07-19 update:** Qwen235 Fixed-PD 的错误排序在 exact real state composition 下已经翻正,主因是 simulator closed-loop batch state,而不是 collective。Qwen30 Fixed-PD 的 56--58% TTFT regret 也已定位:Frontier 将 decode service time 高估 4--8×,使 TP4 的 modeled concurrency 越过 MNS admission cap并产生虚假排队;去掉该等待后 Frontier 与真机都判定 TP4 topology 更快。详见 [`experiments/qwen30-fixed-pd-ttft-admission-diagnosis-20260719.md`](experiments/qwen30-fixed-pd-ttft-admission-diagnosis-20260719.md)。 +> +> **2026-07-20 update:** 对全部 14 个 frozen case surface(70 个 case×objective)做了统一的 margin-vs-residual 分解与方向化机制普查([`experiments/frontier-split-rootcause-s0-20260720.md`](experiments/frontier-split-rootcause-s0-20260720.md))。三个要点:(1) 「residual 超过 margin」是失败的必要条件但远非充分——good/bad 分裂不能用无方向误差量解释;(2) 23 个 material failure 的 winner-deciding pair 中 21 个落在 TP 轴或 mixed(其余 2 个是 6.2% regret 的边缘 mns-axis case),trace 面的 TP 反序为零;A1 measured collective 把 Qwen235 两个 prefill-only 面的 TP 反序清零(trace-PO p90 regret 21.2%→0.3%)却对 Fixed-PD 完全无效——prefill 路径的 TP 差异化误差源是 collective profile(可修),decode 耦合的 TP 差异化误差是当前所有 material failure 的载体;(3) 「Fixed-PD 失败因为高压」被否证:失败 Fixed-PD 的真机 in-flight(14.05)低于全对的 Trace-PD(38.69),且低压 Fixed-PD 同样失败、失败 objective 随负载切换。另有次要缺陷:14 个 winner 错位来自 simulator 对 MNS 逐位不敏感的精确 tie。 ## 一眼看懂 - **Topic / problem:** LLM serving 的自动、低成本配置调优(AITuner)。当前主线问题:用 simulator 给部署配置(并行度、批量上限等)排序,什么时候可信?需要补多少真机证据?算上这些成本还划算吗? - **Central claim:** simulator 要能帮助配置调优,必须先满足 scheduler transition 的 liveness/coverage,再满足「配置相关残差小于真机 decision margin」;前者决定 capacity 是否有定义,后者决定排序是否正确。(ID: C0) - **当前结论:** 早先 35 个 trace stall 不是 Frontier scheduler liveness failure:adapter 为不满 16-token 的 prefix block 错误生成了 cache identity,Frontier 又没有 fail-fast。修正为完整 block、使用真实 graph buckets/KV blocks 和 `piecewise`/`KERNEL_ONLY` profile 后,Qwen30 Trace-PD 的全部 12 个 cell 完成 129/129 request,Frontier 对 TTFT/TPOT/E2E 的 6 个 argmin 均与三次 fresh-server 真机一致;但绝对 latency 仍高估 4--511×。这只证明一个 MoE Trace-PD surface 的 selection fidelity,不能外推到 prefill-only、fixed workload 或 235B。 -- **最大 uncertainty / risk:** 这个正确选择是否依赖 Trace-PD 的 queue/margin 偶然性;Fixed-PD、Trace-P、Fixed-P 与大型 FP8 MoE 是否仍保留正确 config ranking。Q235 还缺少同栈 profile/runtime contract,不能复用旧 vLLM 0.10.2 数据。 -- **下一项 critical action:** 完成 Qwen30 其余三项 fixed/trace × PD/P surface。Fixed case 已先启动无请求 vLLM runtime-state preflight;Trace-P 的 graph-aligned Frontier 12-cell CPU surface 正在运行。Q235 先做 vLLM 0.20 TP4/TP8 compatibility gate,随后才允许新 profile。 +- **最大 uncertainty / risk:** trace 面成功的原因未判——是 decode 耦合的 TP 差异化误差在 trace 状态分布下真的变小,还是只是被宽 TP margin 掩盖。这决定「sim 剪枝可信域」的边界怎么画,也决定加压 trace 是否会失败。 +- **下一项 critical action:** 判别两个失败机制假设(离散阈值转换 vs 闭环 state 漂移):先做零 GPU 的 sim-only jitter 反事实与 Q30 低压 Fixed-PD TPOT 反转分量定位,再按结果决定 dash1–4 上的加压 Trace-PD / jittered Fixed-PD 真机判别面。 - **停止条件:** T1 出 verdict 且成本账本建立后:pass 且摊销论证成立 → 转向「sim 剪枝 + 真机终选」的 hybrid 机制设计;fail → 转入失败机制归因;两条路都无 insight 增量 → 收敛写作。 ## 核心概念 @@ -34,9 +36,10 @@ - **Supporting:** 235B prefill-only regret=0;235B fixed-shape mixed 的 top set 全中;30B 加 per-TP 校准后 regret 0.76%(但这是外部端到端 scale 给出的上界,不是原生 profile 保真度)。 - **Counterevidence:** 修正 prefix trace contract 后的 TP2/MNS16 `none`-graph run 完成但 p50 TPOT 约 96 ms,真机为约 14 ms;然而该比较尚未对齐 real vLLM 的 `FULL_AND_PIECEWISE` graph path。 - **下一项 discriminative experiment:** 补齐 `KERNEL_ONLY` graph family并以 `piecewise` 重跑相同 trace;若 full surface 仍错,graph omission 不再是可用解释。 - - **Hypothesis(机制,active):** 误差机制是 action-conditioned residual——执行状态的转移(并行拓扑、kernel family、graph mode、batch 组成)使按算子 profile 的组合预测跨配置不可复合;残差大于 margin 时排序失败。(ID: H2;supported) + - **Hypothesis(机制,active):** 误差机制是 action-conditioned residual——执行状态的转移(并行拓扑、kernel family、graph mode、batch 组成)使按算子 profile 的组合预测跨配置不可复合;残差大于 margin 时排序失败。(ID: H2;supported,已细化) - **Supporting:** 三个 TP 档的端到端校准系数为 0.72/0.47/0.35,残差确实随配置剧烈变化;235B 的批量上限交互预测错误但被 2× margin 容忍;30B prefill-only 在低负载近似对齐、饱和后按 TP 反向放大,最终 τ-b=−1。 - - **下一步:** 按 collective 通信 → batch 组成 → 调度器逐步轨迹的单变量顺序定位组合性失效点(对应 experiment card 中 A1/A2/A3 消融阶梯)。 + - **细化(2026-07-20 统一普查):** 决策相关的残差分量集中在 TP 轴且由 decode 状态耦合产生——prefill-only 面的绝对 scale 仅 0.96–1.37× 且 measured collective 即可清除其 TP 反序,而含 decode 的面 scale 4.3–130×、全部 material failure 都由 TP/mixed pair 决定。「residual>margin」只是必要条件;失败还需要残差对准 winner-deciding pair。 + - **下一步:** 判别两个 competing 机制假设——离散阈值转换(admission cap/profile cliff 把均匀高估转成差异化误差;打破 fixed workload 的同步性应恢复排序)vs 闭环 state 漂移(打破同步性也救不了)。最便宜路径:sim-only jitter 反事实 + Q30 低压 Fixed-PD TPOT 反转的分量定位(唯一无机制解释的 material failure)。 - **Subclaim:** 成本论证只有在摊销前提下成立。(ID: C3) - **Hypothesis(active):** 每个 model×硬件×runtime 的一次性对齐成本,摊销到大配置面、频繁重调(引擎版本 churn 的频率证据见 claim map)或禁止在线实验的场景后,低于重复真机调优。(ID: H3;untested——分母已实测,分子未入账) - **下一步:** 建 cost ledger(见「下一步」)。 @@ -52,7 +55,7 @@ ## Key evidence(最多 3 条) - **E1(否证「prefill-only 是充分 easy condition」,支持 H2):** 30B BF16、去掉 decode/prefix/混合 batch 后,真机最优是 TP4(8 vs 7 req/s/GPU),simulator 却把 TP4 排最差(6 vs 8):top set 无交集,regret 12.5%,τ-b=−1。产物:`../runs/frontier-phase-factorial-v0/results/final/`(dash0,12.07 H20-GPUh)。 -- **E2(margin 可掩盖残差,支持 C0/H2):** 235B FP8 的 prefill-only 与 fixed-shape mixed 都选对 top set,但 simulator 漏掉并发上限(max-num-seqs)×批 token 上限(max-num-batched-tokens)的交互棋盘格,并把 10/34 个真机 anchor 误判为不可行;真机头部 margin 有 2×,残差被容忍。产物:`../runs/frontier-multicase-sufficiency-v0/best_effort/fixed_cohort_evidence/`、`../runs/frontier-multicase-sufficiency-v1/results/t0-final/`。 +- **E2(统一机制普查:material failure 全部由 decode 耦合的 TP 差异化误差决定,支持 H2 细化):** 对 14 个 frozen surface、70 个 case×objective 的方向化分解显示:23 个 material failure 中 21 个由 TP/mixed pair 决定(仅 2 个 6.2% 边缘 mns-axis case)、trace 面 TP 反序为零;measured collective(A1)把 Qwen235 两个 prefill-only 面的 TP 反序清零(trace-PO p90 regret 21.2%→0.3%)但对 Fixed-PD 的 33% 无效;「residual>margin」仅为失败的必要条件。产物:[`../runs/frontier-split-rootcause-v0/results/`](../runs/frontier-split-rootcause-v0/results/decomposition.md)(实验 card:[`experiments/frontier-split-rootcause-s0-20260720.md`](experiments/frontier-split-rootcause-s0-20260720.md))。 - **E3(selection 与 calibration 分开):** 用完整 block projection、`piecewise` 和 graph-compatible KERNEL_ONLY profile 后,Qwen30 Trace-PD 的 12/12 sim cells 完成,6 个 mean/p90 latency objective 的 argmin 都与真机一致;但 sim/real latency ratio 仍为 4--511×。产物:[`../runs/frontier-fidelity-envelope-v1/graph-piecewise-experiment-card.md`](../runs/frontier-fidelity-envelope-v1/graph-piecewise-experiment-card.md)。 ## 下一步(最多 3 项) diff --git a/runs/frontier-split-rootcause-v0/analyze_split_decomposition.py b/runs/frontier-split-rootcause-v0/analyze_split_decomposition.py new file mode 100644 index 0000000..4e3d178 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/analyze_split_decomposition.py @@ -0,0 +1,1444 @@ +#!/usr/bin/env python3 +"""Analyze frozen good/bad Frontier selection cases by margin and residual.""" + +from __future__ import annotations + +import argparse +import json +import math +import os +import re +from dataclasses import dataclass +from pathlib import Path +from statistics import fmean +from typing import Any + + +HERE = Path(__file__).resolve().parent +DEFAULT_INPUT_ROOT = HERE / "frozen-inputs" +DEFAULT_RESULTS_ROOT = HERE / "results" + +OBJECTIVE_ORDER = { + "ttft_mean_ms": 0, + "ttft_p90_ms": 1, + "tpot_mean_ms": 2, + "tpot_p90_ms": 3, + "e2e_mean_ms": 4, + "e2e_p90_ms": 5, +} + +CONFIG_PATTERN = re.compile( + r"^tp(?P[0-9]+)(?:_ep(?P[0-9]+))?_mns(?P[0-9]+)$" +) +INVERSION_AXES = ("tp-axis", "mns-axis", "mixed") + + +@dataclass(frozen=True) +class Surface: + case: str + objective: str + values: dict[str, tuple[float, float]] + expected_configs: tuple[str, ...] + expected_sim_winner: str + expected_real_winner: str + expected_regret: float | None + sources: tuple[str, ...] + + +def load_json(path: Path) -> dict[str, Any]: + with path.open() as handle: + value = json.load(handle) + if not isinstance(value, dict): + raise ValueError(f"expected JSON object: {path}") + return value + + +def atomic_write(path: Path, text: str) -> None: + path.parent.mkdir(parents=True, exist_ok=True) + temporary = path.with_suffix(path.suffix + ".tmp") + temporary.write_text(text) + os.replace(temporary, path) + + +def positive_float(value: Any, context: str) -> float: + if not isinstance(value, (int, float)) or isinstance(value, bool): + raise ValueError(f"non-numeric value for {context}: {value!r}") + result = float(value) + if not math.isfinite(result) or result <= 0: + raise ValueError(f"non-positive or non-finite value for {context}: {value!r}") + return result + + +def normalized_objective(metric: str, statistic: str) -> str: + return f"{metric.removesuffix('_ms')}_{statistic}_ms" + + +def objective_key(objective: str) -> tuple[int, str]: + return OBJECTIVE_ORDER.get(objective, len(OBJECTIVE_ORDER)), objective + + +def config_dimensions(config: str) -> tuple[tuple[int, int | None], int]: + match = CONFIG_PATTERN.fullmatch(config) + if match is None: + raise ValueError(f"unrecognized config name: {config}") + ep = int(match.group("ep")) if match.group("ep") is not None else None + return (int(match.group("tp")), ep), int(match.group("mns")) + + +def pair_axis(left: str, right: str) -> str: + if left == right: + return "none" + left_plan, left_mns = config_dimensions(left) + right_plan, right_mns = config_dimensions(right) + plan_differs = left_plan != right_plan + mns_differs = left_mns != right_mns + if plan_differs and not mns_differs: + return "tp-axis" + if mns_differs and not plan_differs: + return "mns-axis" + if plan_differs and mns_differs: + return "mixed" + raise ValueError(f"distinct configs have identical dimensions: {left}, {right}") + + +def load_q30_trace_pd(input_root: Path) -> list[Surface]: + relative = Path("q30-trace-pd/comparison.json") + data = load_json(input_root / relative) + if data.get("schema") != "frontier-qwen30-piecewise-graph-comparison-v1": + raise ValueError(f"unexpected schema: {relative}") + configs = tuple(sorted(data["cells"])) + surfaces = [] + for source_objective, selection in sorted( + data["selection"].items(), + key=lambda item: objective_key( + normalized_objective(*item[0].split(":")) + ), + ): + metric, statistic = source_objective.split(":") + objective = normalized_objective(metric, statistic) + values = {} + for config in configs: + cell = data["cells"][config]["metrics"][metric] + values[config] = ( + positive_float(cell[f"sim_{statistic}_ms"], f"{relative}:{config}:sim"), + positive_float(cell[f"real_{statistic}_ms"], f"{relative}:{config}:real"), + ) + surfaces.append( + Surface( + case="q30 trace-pd", + objective=objective, + values=values, + expected_configs=configs, + expected_sim_winner=selection["sim_winner"], + expected_real_winner=selection["real_winner"], + expected_regret=None, + sources=(str(relative),), + ) + ) + return surfaces + + +def load_q30_case( + input_root: Path, + case: str, + comparison_relative: Path, + audit_relative: Path, +) -> list[Surface]: + comparison = load_json(input_root / comparison_relative) + audit = load_json(input_root / audit_relative) + if comparison.get("schema") != "qwen30-latency-case-frontier-real-comparison-v1": + raise ValueError(f"unexpected schema: {comparison_relative}") + if audit.get("schema") != "qwen30-latency-case-real-audit-v1": + raise ValueError(f"unexpected schema: {audit_relative}") + configs = tuple(sorted(set(comparison["cells"]) | set(audit["configs"]))) + surfaces = [] + for source_objective, selection in sorted( + comparison["selection"].items(), + key=lambda item: objective_key( + normalized_objective(*item[0].split(":")) + ), + ): + metric, statistic = source_objective.split(":") + objective = normalized_objective(metric, statistic) + values = {} + for config in configs: + if config not in comparison["cells"] or config not in audit["configs"]: + continue + sim = comparison["cells"][config]["metrics"].get(metric, {}).get(statistic) + real = ( + audit["configs"][config]["metrics"] + .get(metric, {}) + .get(f"pooled_{statistic}_ms") + ) + if sim is None or real is None: + continue + values[config] = ( + positive_float(sim, f"{comparison_relative}:{config}:sim"), + positive_float(real, f"{audit_relative}:{config}:real"), + ) + surfaces.append( + Surface( + case=case, + objective=objective, + values=values, + expected_configs=configs, + expected_sim_winner=selection["sim_winner"], + expected_real_winner=selection["real_winner"], + expected_regret=selection.get("selected_config_real_regret"), + sources=(str(comparison_relative), str(audit_relative)), + ) + ) + return surfaces + + +def load_q235_campaign( + input_root: Path, campaign: str, relative: Path +) -> list[Surface]: + data = load_json(input_root / relative) + if data.get("schema") != "qwen235-v020-simulator-real-comparison-v1": + raise ValueError(f"unexpected schema: {relative}") + surfaces = [] + for case_name in ("fixed-pd", "fixed-po", "trace-pd", "trace-po"): + case = data["cases"][case_name] + configs = tuple(sorted(set(case["sim"]) | set(case["real"]))) + for objective, selection in sorted( + case["comparison"].items(), key=lambda item: objective_key(item[0]) + ): + values = {} + for config in configs: + if config not in case["sim"] or config not in case["real"]: + continue + sim = case["sim"][config].get(objective) + real = case["real"][config].get(objective) + if sim is None or real is None: + continue + values[config] = ( + positive_float(sim, f"{relative}:{case_name}:{config}:sim"), + positive_float(real, f"{relative}:{case_name}:{config}:real"), + ) + surfaces.append( + Surface( + case=f"q235 {campaign} {case_name}", + objective=objective, + values=values, + expected_configs=configs, + expected_sim_winner=selection["sim_winner"], + expected_real_winner=selection["real_winner"], + expected_regret=selection.get("selected_real_regret"), + sources=(str(relative),), + ) + ) + return surfaces + + +def load_surfaces(input_root: Path) -> list[Surface]: + surfaces = load_q30_trace_pd(input_root) + q30_specs = ( + ( + "q30 fixed-pd high", + Path("q30-fixed-hi/fixed-pd/comparison.json"), + Path("q30-fixed-hi/fixed-pd/real-audit.json"), + ), + ( + "q30 fixed-po high", + Path("q30-fixed-hi/fixed-po/comparison.json"), + Path("q30-fixed-hi/fixed-po/real-audit.json"), + ), + ( + "q30 fixed-pd low", + Path("q30-expansion-lo/fixed-pd-comparison.json"), + Path("q30-expansion-lo/fixed-pd-real-audit.json"), + ), + ( + "q30 fixed-po low", + Path("q30-expansion-lo/fixed-po-comparison.json"), + Path("q30-expansion-lo/fixed-po-real-audit.json"), + ), + ( + "q30 trace-po low", + Path("q30-expansion-lo/trace-po-comparison.json"), + Path("q30-expansion-lo/trace-po-real-audit.json"), + ), + ) + for case, comparison, audit in q30_specs: + surfaces.extend(load_q30_case(input_root, case, comparison, audit)) + surfaces.extend( + load_q235_campaign( + input_root, "A0", Path("q235-fourcase-a0/comparison.json") + ) + ) + surfaces.extend( + load_q235_campaign( + input_root, "A1", Path("q235-ablation-a1/comparison.json") + ) + ) + return surfaces + + +def analyze_surface(surface: Surface) -> tuple[dict[str, Any], list[str]]: + anomalies = [] + paired_configs = tuple(sorted(surface.values)) + missing_configs = sorted(set(surface.expected_configs) - set(paired_configs)) + if missing_configs: + anomalies.append( + f"{surface.case} / {surface.objective}: missing paired sim+real data for " + + ", ".join(missing_configs) + ) + if len(paired_configs) < 2: + return ( + { + "case": surface.case, + "objective": surface.objective, + "sim_winner": None, + "real_winner": None, + "regret": None, + "config_uniform_scale": None, + "log_ratio_spread_all": None, + "log_ratio_spread_real_top3": None, + "real_relative_margin_best_vs_second": None, + "sim_winner_real_relative_loss": None, + "failure": None, + "h_scale_condition_spread_gt_log_margin": None, + "h_scale_verdict": "N/A", + "winner_match": None, + "winner_deciding_axis": None, + "winner_pair_m_s_percent": None, + "winner_pair_delta_s_percent": None, + "winner_pair_strict_reversal": None, + "winner_pair_relation": "N/A", + "n_inv_tp": None, + "n_inv_mns": None, + "n_inv_mixed": None, + "n_tie_tp": None, + "n_tie_mns": None, + "n_tie_mixed": None, + "fragile_success": None, + "pairwise_vs_real_winner": [], + "paired_config_count": len(paired_configs), + "expected_config_count": len(surface.expected_configs), + "real_top3_configs": [], + "missing_configs": missing_configs, + "sources": list(surface.sources), + }, + anomalies, + ) + + sim_ranking = sorted(paired_configs, key=lambda config: (surface.values[config][0], config)) + real_ranking = sorted(paired_configs, key=lambda config: (surface.values[config][1], config)) + sim_winner = sim_ranking[0] + real_winner = real_ranking[0] + real_best = surface.values[real_winner][1] + regret = surface.values[sim_winner][1] / real_best - 1.0 + margin = surface.values[real_ranking[1]][1] / real_best - 1.0 + log_ratios = { + config: math.log(surface.values[config][0] / surface.values[config][1]) + for config in paired_configs + } + spread_all = max(log_ratios.values()) - min(log_ratios.values()) + top3 = tuple(real_ranking[:3]) + top3_ratios = [log_ratios[config] for config in top3] + spread_top3 = max(top3_ratios) - min(top3_ratios) + scale = math.exp(fmean(log_ratios.values())) + failure = regret > 0.05 + residual_exceeds_log_margin = spread_top3 > math.log1p(margin) + h_scale_holds = failure == residual_exceeds_log_margin + + pairwise = [] + inversion_counts = {axis: 0 for axis in INVERSION_AXES} + sim_at_real_winner = surface.values[real_winner][0] + for config in paired_configs: + sim_value, real_value = surface.values[config] + real_pair_log = math.log(real_value / real_best) + sim_pair_log = math.log(sim_value / sim_at_real_winner) + pair_margin_percent = 100.0 * real_pair_log + delta_percent = 100.0 * (sim_pair_log - real_pair_log) + axis = pair_axis(real_winner, config) + inversion = real_value > real_best and sim_value < sim_at_real_winner + delta_inversion = ( + pair_margin_percent > 0 + and delta_percent < -pair_margin_percent + ) + if inversion != delta_inversion: + anomalies.append( + f"{surface.case} / {surface.objective} / {config}: direct inversion " + f"test disagrees with delta < -margin" + ) + if inversion: + inversion_counts[axis] += 1 + pairwise.append( + { + "config": config, + "axis_vs_real_winner": axis, + "real_pair_margin_percent": pair_margin_percent, + "signed_pairwise_delta_percent": delta_percent, + "inversion": inversion, + } + ) + + winner_pair = next(item for item in pairwise if item["config"] == sim_winner) + winner_match = sim_winner == real_winner + if winner_match: + winner_pair_relation = "match" + elif winner_pair["inversion"]: + winner_pair_relation = "reversal" + elif surface.values[sim_winner][0] == sim_at_real_winner: + winner_pair_relation = "sim-tie" + else: + winner_pair_relation = "non-reversal" + tie_counts = {axis: 0 for axis in INVERSION_AXES} + if winner_pair_relation == "sim-tie": + tie_counts[winner_pair["axis_vs_real_winner"]] += 1 + + if sim_winner != surface.expected_sim_winner: + anomalies.append( + f"{surface.case} / {surface.objective}: recomputed sim winner " + f"{sim_winner} != frozen JSON {surface.expected_sim_winner}" + ) + if real_winner != surface.expected_real_winner: + anomalies.append( + f"{surface.case} / {surface.objective}: recomputed real winner " + f"{real_winner} != frozen JSON {surface.expected_real_winner}" + ) + if surface.expected_regret is not None and not math.isclose( + regret, float(surface.expected_regret), rel_tol=1e-12, abs_tol=1e-12 + ): + anomalies.append( + f"{surface.case} / {surface.objective}: recomputed regret " + f"{regret:.12g} != frozen JSON {float(surface.expected_regret):.12g}" + ) + + return ( + { + "case": surface.case, + "objective": surface.objective, + "sim_winner": sim_winner, + "real_winner": real_winner, + "regret": regret, + "config_uniform_scale": scale, + "log_ratio_spread_all": spread_all, + "log_ratio_spread_real_top3": spread_top3, + "real_relative_margin_best_vs_second": margin, + "sim_winner_real_relative_loss": regret, + "failure": failure, + "h_scale_condition_spread_gt_log_margin": residual_exceeds_log_margin, + "h_scale_verdict": "HOLDS" if h_scale_holds else "COUNTEREXAMPLE", + "winner_match": winner_match, + "winner_deciding_axis": pair_axis(real_winner, sim_winner), + "winner_pair_m_s_percent": winner_pair["real_pair_margin_percent"], + "winner_pair_delta_s_percent": winner_pair["signed_pairwise_delta_percent"], + "winner_pair_strict_reversal": winner_pair["inversion"], + "winner_pair_relation": winner_pair_relation, + "n_inv_tp": inversion_counts["tp-axis"], + "n_inv_mns": inversion_counts["mns-axis"], + "n_inv_mixed": inversion_counts["mixed"], + "n_tie_tp": tie_counts["tp-axis"], + "n_tie_mns": tie_counts["mns-axis"], + "n_tie_mixed": tie_counts["mixed"], + "fragile_success": winner_match and margin < 0.01, + "pairwise_vs_real_winner": pairwise, + "paired_config_count": len(paired_configs), + "expected_config_count": len(surface.expected_configs), + "real_top3_configs": list(top3), + "missing_configs": missing_configs, + "sources": list(surface.sources), + }, + anomalies, + ) + + +def row_index(rows: list[dict[str, Any]]) -> dict[tuple[str, str], dict[str, Any]]: + return {(row["case"], row["objective"]): row for row in rows} + + +def cross_checks(rows: list[dict[str, Any]]) -> tuple[list[dict[str, Any]], list[str]]: + by_key = row_index(rows) + checks = [] + anomalies = [] + + def check(name: str, observed: float, expected_percent: float) -> None: + observed_percent = observed * 100.0 + passed = round(observed_percent, 1) == expected_percent + checks.append( + { + "name": name, + "observed_percent": observed_percent, + "expected_percent": expected_percent, + "passed": passed, + } + ) + if not passed: + anomalies.append( + f"hard cross-check failed: {name}: observed {observed_percent:.6f}% " + f"vs expected {expected_percent:.1f}%" + ) + + check( + "q30 high-pressure fixed-pd TTFT mean regret", + by_key[("q30 fixed-pd high", "ttft_mean_ms")]["regret"], + 58.0, + ) + check( + "q235 A0 fixed-pd TPOT mean regret", + by_key[("q235 A0 fixed-pd", "tpot_mean_ms")]["regret"], + 33.0, + ) + check( + "q235 A1 fixed-pd TPOT mean regret", + by_key[("q235 A1 fixed-pd", "tpot_mean_ms")]["regret"], + 33.0, + ) + trace_pd_rows = [row for row in rows if row["case"] == "q30 trace-pd"] + trace_passed = len(trace_pd_rows) == 6 and all( + round(row["regret"] * 100.0, 1) == 0.0 for row in trace_pd_rows + ) + checks.append( + { + "name": "q30 trace-pd all-objective regret", + "observed_percent": [row["regret"] * 100.0 for row in trace_pd_rows], + "expected_percent": [0.0] * 6, + "passed": trace_passed, + } + ) + if not trace_passed: + anomalies.append( + "hard cross-check failed: q30 trace-pd does not have six objectives all at 0.0% regret" + ) + + def check_sequence( + name: str, observed: list[float], expected_percent: list[float] + ) -> None: + observed_percent = [value * 100.0 for value in observed] + passed = [round(value, 1) for value in observed_percent] == expected_percent + checks.append( + { + "name": name, + "observed_percent": observed_percent, + "expected_percent": expected_percent, + "passed": passed, + } + ) + if not passed: + anomalies.append( + f"hard cross-check failed: {name}: observed " + f"{[round(value, 6) for value in observed_percent]} vs expected " + f"{expected_percent}" + ) + + check_sequence( + "q235 Trace-PO TTFT p90 A0 to A1 regret", + [ + by_key[("q235 A0 trace-po", "ttft_p90_ms")]["regret"], + by_key[("q235 A1 trace-po", "ttft_p90_ms")]["regret"], + ], + [21.2, 0.3], + ) + fixed_pd_objectives = ( + "tpot_mean_ms", + "tpot_p90_ms", + "e2e_mean_ms", + "e2e_p90_ms", + ) + fixed_pd_expected = [33.0, 37.2, 30.7, 34.6] + check_sequence( + "q235 Fixed-PD TPOT/E2E regrets unchanged from A0 to A1", + [ + by_key[(f"q235 {campaign} fixed-pd", objective)]["regret"] + for campaign in ("A0", "A1") + for objective in fixed_pd_objectives + ], + fixed_pd_expected + fixed_pd_expected, + ) + return checks, anomalies + + +def known_attribution(input_root: Path) -> dict[str, Any]: + q30_relative = Path("q30-admission-diag/result.json") + q235_relative = Path("q235-state-diag/state-diagnosis-exact.json") + q30 = load_json(input_root / q30_relative) + q235 = load_json(input_root / q235_relative) + if q30.get("schema") != "qwen30-fixed-pd-ttft-admission-diagnosis-v1": + raise ValueError(f"unexpected schema: {q30_relative}") + if q235.get("schema") != "qwen235-fixed-pd-state-diagnosis-v1": + raise ValueError(f"unexpected schema: {q235_relative}") + + q30_cells = [] + for config, cell in sorted(q30["cells"].items()): + q30_cells.append( + { + "config": config, + "sim_tpot_over_real": cell["tpot_overprediction_ratio"], + "sim_required_slots": cell["simulator"]["required_slots"], + "mns": cell["mns"], + "real_required_slots_upper_bound": cell["real"]["required_slots_upper_bound"], + "sim_first_scheduling_wait_ms": cell["simulator"]["first_scheduling_delay_ms"], + "sim_queue_free_ttft_ms": cell["simulator"]["queue_free_ttft_ms"], + "sim_ttft_ms": cell["simulator"]["ttft_ms"], + "real_ttft_ms": cell["real"]["ttft_ms"], + "real_waiting_max": cell["real"]["periodic_queue"]["waiting_max"], + } + ) + + q235_configs = [] + for config in sorted(q235["simulator"]): + q235_configs.append( + { + "config": config, + "sim_own_decode_batch_mean": q235["simulator"][config]["decode_batch_size"]["mean"], + "real_exact_decode_batch_mean": q235["real_iteration_state"][config]["decode_batch_size"]["mean"], + "real_token_weighted_iteration_ms": q235["real_iteration_state"][config]["decode_token_weighted_iteration_elapsed_ms"], + "exact_state_matched_sim_ms": q235["exact_state_matched"]["configs"][config]["components_ms"]["total"], + "exact_state_coverage": q235["exact_state_matched"]["configs"][config]["coverage"], + } + ) + + component_order = ( + "total", + "moe_compute", + "attention", + "tp_dp_communication", + "ep_communication", + "moe_routing", + "dense_mlp_compute", + "pipeline_communication", + "runtime_overhead", + ) + q235_components = [] + own = q235["simulator_internal_all_step_tp8_minus_tp4_ms"] + exact = q235["exact_state_matched"]["tp8_minus_tp4_ms"] + for component in component_order: + q235_components.append( + { + "component": component, + "own_composition_tp8_minus_tp4_ms": own[component], + "exact_state_tp8_minus_tp4_ms": exact[component], + } + ) + return { + "q30_admission": { + "source": str(q30_relative), + "verdict": q30["verdict"], + "cells": q30_cells, + "contrasts": q30["contrasts"], + }, + "q235_state": { + "source": str(q235_relative), + "verdict": q235["verdict"], + "configs": q235_configs, + "components": q235_components, + "contrast_decomposition": q235["contrast_decomposition"], + "reference": q235["reference"], + }, + } + + +def directional_summary(rows: list[dict[str, Any]]) -> dict[str, Any]: + case_order = list(dict.fromkeys(row["case"] for row in rows)) + by_case = [] + for case in case_order: + case_rows = [row for row in rows if row["case"] == case] + by_case.append( + { + "case": case, + "n_inv_tp": sum(row["n_inv_tp"] for row in case_rows), + "n_inv_mns": sum(row["n_inv_mns"] for row in case_rows), + "n_inv_mixed": sum(row["n_inv_mixed"] for row in case_rows), + "n_tie_tp": sum(row["n_tie_tp"] for row in case_rows), + "n_tie_mns": sum(row["n_tie_mns"] for row in case_rows), + "n_tie_mixed": sum(row["n_tie_mixed"] for row in case_rows), + } + ) + fragile = [ + { + "case": row["case"], + "objective": row["objective"], + "real_relative_margin_percent": 100.0 + * row["real_relative_margin_best_vs_second"], + } + for row in rows + if row["fragile_success"] + ] + material_failures = [ + { + "case": row["case"], + "objective": row["objective"], + "winner_deciding_axis": row["winner_deciding_axis"], + "winner_pair_m_s_percent": row["winner_pair_m_s_percent"], + "winner_pair_delta_s_percent": row["winner_pair_delta_s_percent"], + "regret": row["regret"], + } + for row in rows + if row["failure"] + ] + boundary_winner_ties = [ + { + "case": row["case"], + "objective": row["objective"], + "real_winner": row["real_winner"], + "sim_winner": row["sim_winner"], + "winner_deciding_axis": row["winner_deciding_axis"], + } + for row in rows + if row["winner_pair_relation"] == "sim-tie" + ] + return { + "axis_inversions_total": { + "tp-axis": sum(row["n_inv_tp"] for row in rows), + "mns-axis": sum(row["n_inv_mns"] for row in rows), + "mixed": sum(row["n_inv_mixed"] for row in rows), + }, + "axis_inversions_by_case": by_case, + "axis_ties_total": { + "tp-axis": sum(row["n_tie_tp"] for row in rows), + "mns-axis": sum(row["n_tie_mns"] for row in rows), + "mixed": sum(row["n_tie_mixed"] for row in rows), + }, + "strict_winner_reversal_count": sum( + row["winner_pair_relation"] == "reversal" for row in rows + ), + "sim_tie_winner_mismatch_count": sum( + row["winner_pair_relation"] == "sim-tie" for row in rows + ), + "boundary_winner_ties": boundary_winner_ties, + "material_failures": material_failures, + "margin_robust_success_count": sum( + row["winner_match"] and not row["fragile_success"] for row in rows + ), + "fragile_success_count": len(fragile), + "fragile_successes": fragile, + } + + +def analyze(input_root: Path) -> dict[str, Any]: + surfaces = load_surfaces(input_root) + rows = [] + anomalies = [] + for surface in surfaces: + row, row_anomalies = analyze_surface(surface) + rows.append(row) + anomalies.extend(row_anomalies) + checks, check_anomalies = cross_checks(rows) + anomalies.extend(check_anomalies) + counterexamples = [ + {"case": row["case"], "objective": row["objective"]} + for row in rows + if row["h_scale_verdict"] == "COUNTEREXAMPLE" + ] + data_gaps = [ + { + "case": row["case"], + "objective": row["objective"], + "missing_configs": row["missing_configs"], + } + for row in rows + if row["missing_configs"] or row["h_scale_verdict"] == "N/A" + ] + directional = directional_summary(rows) + return { + "schema": "frontier-split-rootcause-decomposition-v2", + "definitions": { + "objective_direction": "all objectives are minimized", + "config_uniform_scale": "geomean_c(sim_c / real_c) over paired configs", + "log_ratio_spread_all": "max_c(log(sim_c / real_c)) - min_c(log(sim_c / real_c))", + "log_ratio_spread_real_top3": "log-ratio spread over the three configs with lowest real objective values", + "real_relative_margin_best_vs_second": "real_second / real_best - 1", + "regret": "real_sim_winner / real_best - 1, recomputed from per-config values", + "failure": "regret > 0.05", + "h_scale_verdict": "HOLDS iff failure equals (top-3 log-ratio spread > log1p(real relative margin))", + "signed_pairwise_delta_percent": "100 * (log(sim_c / sim_w) - log(real_c / real_w)); negative favors c relative to real", + "real_pair_margin_percent": "100 * log(real_c / real_w)", + "pair_inversion": "real_c > real_w and sim_c < sim_w, equivalently delta_c < -m_c", + "winner_pair_tie": "sim_s == sim_w with real_s > real_w; a decision-boundary winner-label mismatch, not a strict inversion", + "winner_deciding_axis": "axis difference between real winner w and sim winner s; none for a winner match", + "fragile_success": "winner match and real best-vs-second relative margin < 0.01", + }, + "summary": { + "row_count": len(rows), + "case_count": len({row["case"] for row in rows}), + "failure_count": sum(row["failure"] is True for row in rows), + "winner_mismatch_count": sum(row["winner_match"] is False for row in rows), + "h_scale_counterexample_count": len(counterexamples), + "h_scale_counterexamples": counterexamples, + "data_gap_count": len(data_gaps), + }, + "directional_summary": directional, + "rows": rows, + "cross_checks": checks, + "data_gaps": data_gaps, + "anomalies": anomalies, + "known_attribution": known_attribution(input_root), + } + + +def percent(value: float | None, digits: int = 1) -> str: + if value is None: + return "N/A" + return f"{value * 100.0:.{digits}f}%" + + +def multiple(value: float | None) -> str: + if value is None: + return "N/A" + return f"{value:.3f}x" + + +def percent_points(value: float | None, signed: bool = False) -> str: + if value is None: + return "N/A" + sign = "+" if signed else "" + return f"{value:{sign}.1f}%" + + +def markdown(result: dict[str, Any]) -> str: + summary = result["summary"] + lines = [ + "# Frontier good/bad split decomposition", + "", + "All 70 rows are recomputed from frozen per-config JSON values. Lower is better for every objective. " + "`scale` is the geometric mean of `sim/real`; spreads are shown as `100 ×` log-space width, while `real margin` is the ordinary relative difference `100 × (real_second / real_best - 1)`. " + "H-SCALE compares the log-space spread with `log1p(real margin)`, not directly with the ordinary relative margin. " + "The real top-3 neighborhood is selected independently for every row. Directional `m_s` and `delta_s` are already expressed in log-percentage points.", + "", + f"- Rows / case surfaces: {summary['row_count']} / {summary['case_count']}.", + f"- Failures (`regret > 5%`): {summary['failure_count']}.", + f"- Exact winner mismatches: {summary['winner_mismatch_count']}.", + f"- H-SCALE counterexamples: {summary['h_scale_counterexample_count']}.", + "", + "## Unified decomposition", + "", + "| case | objective | sim winner | real winner | regret | scale | spread all | spread real top-3 | real margin (relative) | sim-winner real loss | failure | H-SCALE | deciding axis | m_s | delta_s | n_inv_tp | n_inv_mns | n_inv_mixed | fragile success |", + "|---|---|---|---|---:|---:|---:|---:|---:|---:|---|---|---|---:|---:|---:|---:|---:|---|", + ] + for row in result["rows"]: + lines.append( + "| {case} | {objective} | {sim} | {real} | {regret} | {scale} | " + "{spread_all} | {spread_top3} | {margin} | {loss} | {failure} | {verdict} | " + "{axis} | {pair_margin} | {delta} | {n_tp} | {n_mns} | {n_mixed} | {fragile} |".format( + case=row["case"], + objective=row["objective"], + sim=row["sim_winner"] or "N/A", + real=row["real_winner"] or "N/A", + regret=percent(row["regret"]), + scale=multiple(row["config_uniform_scale"]), + spread_all=percent(row["log_ratio_spread_all"]), + spread_top3=percent(row["log_ratio_spread_real_top3"]), + margin=percent(row["real_relative_margin_best_vs_second"]), + loss=percent(row["sim_winner_real_relative_loss"]), + failure=( + "yes" if row["failure"] is True else "no" if row["failure"] is False else "N/A" + ), + verdict=row["h_scale_verdict"], + axis=row["winner_deciding_axis"] or "N/A", + pair_margin=percent_points(row["winner_pair_m_s_percent"]), + delta=percent_points(row["winner_pair_delta_s_percent"], signed=True), + n_tp=row["n_inv_tp"] if row["n_inv_tp"] is not None else "N/A", + n_mns=row["n_inv_mns"] if row["n_inv_mns"] is not None else "N/A", + n_mixed=( + row["n_inv_mixed"] if row["n_inv_mixed"] is not None else "N/A" + ), + fragile=( + "yes" + if row["fragile_success"] is True + else "no" + if row["fragile_success"] is False + else "N/A" + ), + ) + ) + + lines.extend( + [ + "", + "## H-SCALE verdict", + "", + ] + ) + if summary["h_scale_counterexample_count"] == 0: + lines.append( + "H-SCALE holds on every available row: failure occurs exactly when the real-top-3 differential residual exceeds `log1p` of the real best-vs-second relative margin." + ) + else: + failure_counterexamples = sum( + row["failure"] is True and row["h_scale_verdict"] == "COUNTEREXAMPLE" + for row in result["rows"] + ) + nonfailure_counterexamples = summary["h_scale_counterexample_count"] - failure_counterexamples + lines.extend( + [ + "H-SCALE is not sufficient as stated; the following rows are counterexamples to the biconditional:", + "", + f"All {nonfailure_counterexamples} observed counterexamples are non-failures with spread > `log1p(margin)`; " + f"there are {failure_counterexamples} failures with spread <= `log1p(margin)`. Thus the threshold is necessary for the observed failures but not sufficient to predict them.", + "", + "| case | objective | failure | spread real top-3 | real margin | counterexample type |", + "|---|---|---|---:|---:|---|", + ] + ) + for row in result["rows"]: + if row["h_scale_verdict"] != "COUNTEREXAMPLE": + continue + kind = ( + "failure with spread <= log1p(margin)" + if row["failure"] + else "non-failure with spread > log1p(margin)" + ) + lines.append( + f"| {row['case']} | {row['objective']} | " + f"{'yes' if row['failure'] else 'no'} | " + f"{percent(row['log_ratio_spread_real_top3'])} | " + f"{percent(row['real_relative_margin_best_vs_second'])} | {kind} |" + ) + + directional = result["directional_summary"] + lines.extend( + [ + "", + "## S0b directional conclusions", + "", + "Directional pair statistics remove the S0 range statistic's ambiguity by measuring every config against the real winner. " + "Strict inversions use the frozen-value test `real_c > real_w and sim_c < sim_w`; simulator ties are not counted as inversions.", + "", + "### (a) Which config axis decides each material failure?", + "", + "| case | objective | real winner → sim winner | deciding axis | m_s | delta_s | -delta_s | regret |", + "|---|---|---|---|---:|---:|---:|---:|", + ] + ) + for row in result["rows"]: + if not row["failure"]: + continue + lines.append( + f"| {row['case']} | {row['objective']} | {row['real_winner']} → " + f"{row['sim_winner']} | {row['winner_deciding_axis']} | " + f"{percent_points(row['winner_pair_m_s_percent'])} | " + f"{percent_points(row['winner_pair_delta_s_percent'], signed=True)} | " + f"{percent_points(-row['winner_pair_delta_s_percent'])} | " + f"{percent(row['regret'])} |" + ) + + lines.extend( + [ + "", + "### (b) Where do TP-axis and MNS-axis inversions and boundary ties concentrate?", + "", + "`n_inv_*` counts sum strict `(real winner, c)` pair inversions across all objectives in each case; a row can contain more than one inverted pair. " + "`n_tie_*` counts cover exact simulator ties only for the simulator-selected winner versus the real winner. Ties remain decision-boundary winner-label mismatches, not strict reversals.", + "", + "| case | n_inv_tp | n_inv_mns | n_inv_mixed | n_tie_tp | n_tie_mns | n_tie_mixed |", + "|---|---:|---:|---:|---:|---:|---:|", + ] + ) + for item in directional["axis_inversions_by_case"]: + lines.append( + f"| {item['case']} | {item['n_inv_tp']} | {item['n_inv_mns']} | " + f"{item['n_inv_mixed']} | {item['n_tie_tp']} | {item['n_tie_mns']} | " + f"{item['n_tie_mixed']} |" + ) + totals = directional["axis_inversions_total"] + tie_totals = directional["axis_ties_total"] + lines.append( + f"| **total** | **{totals['tp-axis']}** | **{totals['mns-axis']}** | " + f"**{totals['mixed']}** | **{tie_totals['tp-axis']}** | " + f"**{tie_totals['mns-axis']}** | **{tie_totals['mixed']}** |" + ) + + def concentrated(axis_key: str) -> str: + ranked = sorted( + ( + (item[axis_key], item["case"]) + for item in directional["axis_inversions_by_case"] + if item[axis_key] > 0 + ), + key=lambda item: (-item[0], item[1]), + ) + return ", ".join(f"{case} ({count})" for count, case in ranked[:5]) + + by_key = row_index(result["rows"]) + q30_ttft_axes = [ + by_key[("q30 fixed-pd high", objective)]["winner_deciding_axis"] + for objective in ("ttft_mean_ms", "ttft_p90_ms") + ] + q235_fixed_pd_failures = [ + row + for row in result["rows"] + if row["case"] in ("q235 A0 fixed-pd", "q235 A1 fixed-pd") + and row["failure"] + ] + q235_fixed_pd_axes = { + row["winner_deciding_axis"] for row in q235_fixed_pd_failures + } + q235_consistency = ( + "The eight Q235 A0/A1 Fixed-PD failures are all tp-axis. This does not conflict with the A0/MNS64 state-drift diagnosis, but does not constitute additional state-drift evidence for A1/MNS128." + if len(q235_fixed_pd_failures) == 8 and q235_fixed_pd_axes == {"tp-axis"} + else "The Q235 A0/A1 Fixed-PD failures do not match the expected eight tp-axis cases; no state-drift compatibility claim is made." + ) + lines.extend( + [ + "", + f"- Among strict inversions, TP-axis cases are most concentrated in: {concentrated('n_inv_tp')}.", + f"- Among strict inversions, MNS-axis cases are most concentrated in: {concentrated('n_inv_mns')}.", + f"- {q235_consistency}", + f"- Q30 admission evidence does not map one-to-one to an MNS-axis deciding pair: high-pressure Fixed-PD TTFT mean is **{q30_ttft_axes[0]}** and p90 is **{q30_ttft_axes[1]}**. " + "This is an axis/mechanism mismatch, not a direct causal contradiction: changing TP changes offered arrival pressure, while the diagnosed nonlinear event is crossing the MNS admission cap. It rules out the simpler claim that an MNS-threshold mechanism must appear as an mns-axis winner pair.", + f"- All {directional['sim_tie_winner_mismatch_count']} exact simulator winner ties are mns-axis. Including these boundary errors gives MNS **{totals['mns-axis']} + {tie_totals['mns-axis']} = {totals['mns-axis'] + tie_totals['mns-axis']}**, comparable to TP's **{totals['tp-axis']}** strict inversions.", + "", + "The exact ties below show that Frontier is completely insensitive to MNS changes within the corresponding case/objective cell:", + "", + "| case | objective | real winner ↔ simulator-selected tied winner (MNS pair) |", + "|---|---|---|", + ] + ) + for item in directional["boundary_winner_ties"]: + lines.append( + f"| {item['case']} | {item['objective']} | {item['real_winner']} ↔ " + f"{item['sim_winner']} |" + ) + + lines.extend( + [ + "", + "### (c) How many exact-winner successes are margin-robust?", + "", + f"Among exact winner matches, **{directional['margin_robust_success_count']}** are margin-robust (`margin >= 1%`) and " + f"**{directional['fragile_success_count']}** are fragile (`margin < 1%`). " + f"Separately, {directional['sim_tie_winner_mismatch_count']} winner-label mismatches come from exact simulator ties and sit on the decision boundary rather than being strict inversions.", + "", + "| fragile-success case | objective | real margin |", + "|---|---|---:|", + ] + ) + for item in directional["fragile_successes"]: + lines.append( + f"| {item['case']} | {item['objective']} | " + f"{item['real_relative_margin_percent']:.1f}% |" + ) + + lines.extend( + [ + "", + "## Cross-checks", + "", + "| check | observed | frozen expectation | result |", + "|---|---:|---:|---|", + ] + ) + for check in result["cross_checks"]: + observed = check["observed_percent"] + expected = check["expected_percent"] + if isinstance(observed, list): + observed_text = ", ".join(f"{value:.1f}%" for value in observed) + expected_text = ", ".join(f"{value:.1f}%" for value in expected) + else: + observed_text = f"{observed:.1f}%" + expected_text = f"{expected:.1f}%" + lines.append( + f"| {check['name']} | {observed_text} | {expected_text} | " + f"{'PASS' if check['passed'] else 'FAIL'} |" + ) + + lines.extend(["", "## Data gaps", ""]) + if result["data_gaps"]: + for gap in result["data_gaps"]: + missing = ", ".join(gap["missing_configs"]) or "insufficient paired configs" + lines.append(f"- {gap['case']} / {gap['objective']}: N/A because {missing}.") + else: + lines.append("No per-config sim/real pairing gaps were found in the requested surfaces.") + + lines.extend(["", "## 异常", ""]) + if result["anomalies"]: + lines.extend(f"- {item}" for item in result["anomalies"]) + else: + lines.append("- 无。重算 winner/regret 与 frozen JSON 一致,硬性交叉核对均通过。") + + lines.extend( + [ + "", + "## Figure", + "", + "`margin-vs-residual.png` uses x = `100 × log1p(real best-vs-second relative margin)` and y = `100 ×` real-top-3 log-ratio spread. " + "Both axes are logarithmic because the real margins span six orders of magnitude. Green means exact winner match; red means winner mismatch. " + "The diagonal is the H-SCALE threshold, while failure itself is defined by regret, not by exact winner match.", + "", + "`decision-pair-axis.png` is a mechanism census, not a hypothesis test: for a strict winner reversal, `-delta_s > m_s` is algebraically equivalent to the mismatch. " + "The frozen surfaces also contain deterministic winner-label mismatches caused by exact simulator ties; those points lie on `-delta_s = m_s` and are not counted as strict inversions. " + "Color identifies the winner-deciding config axis and marker area is proportional to regret.", + "", + "## A0 vs A1 对照", + "", + "A1 repairs the Q235 Trace-PO p90 ranking error but leaves the four large Fixed-PD TPOT/E2E regrets unchanged.", + "", + "| case / objective | A0 regret | A1 regret |", + "|---|---:|---:|", + ] + ) + by_key = row_index(result["rows"]) + a0_a1_rows = ( + ("trace-po / ttft_p90_ms", "trace-po", "ttft_p90_ms"), + ("fixed-pd / tpot_mean_ms", "fixed-pd", "tpot_mean_ms"), + ("fixed-pd / tpot_p90_ms", "fixed-pd", "tpot_p90_ms"), + ("fixed-pd / e2e_mean_ms", "fixed-pd", "e2e_mean_ms"), + ("fixed-pd / e2e_p90_ms", "fixed-pd", "e2e_p90_ms"), + ) + for label, case, objective in a0_a1_rows: + a0 = by_key[(f"q235 A0 {case}", objective)]["regret"] + a1 = by_key[(f"q235 A1 {case}", objective)]["regret"] + lines.append(f"| {label} | {percent(a0)} | {percent(a1)} |") + lines.extend( + [ + "", + "Thus Trace-PO TTFT p90 changes **21.2% → 0.3%**, whereas Fixed-PD remains **33.0% / 37.2% / 30.7% / 34.6%** in both A0 and A1.", + "", + "## 已知分量归因摘要", + "", + "### Q30 high-pressure Fixed-PD TTFT: first-scheduling wait vs execution-side TTFT", + "", + "`queue-free TTFT` is the execution-side TTFT after removing first-scheduling wait; in the frozen diagnostic, simulated TTFT is their sum (up to floating-point rounding).", + "", + "| config | sim TPOT / real | sim slots / MNS | real slots upper / MNS | first-scheduling wait | queue-free TTFT | sim TTFT | real TTFT | real waiting max |", + "|---|---:|---:|---:|---:|---:|---:|---:|---:|", + ] + ) + q30 = result["known_attribution"]["q30_admission"] + for cell in q30["cells"]: + lines.append( + f"| {cell['config']} | {cell['sim_tpot_over_real']:.2f}x | " + f"{cell['sim_required_slots']:.1f}/{cell['mns']} | " + f"{cell['real_required_slots_upper_bound']:.1f}/{cell['mns']} | " + f"{cell['sim_first_scheduling_wait_ms']:.1f} ms | " + f"{cell['sim_queue_free_ttft_ms']:.1f} ms | " + f"{cell['sim_ttft_ms']:.1f} ms | {cell['real_ttft_ms']:.1f} ms | " + f"{cell['real_waiting_max']} |" + ) + contrasts = q30["contrasts"] + lines.extend( + [ + "", + "For TP4/MNS32 minus TP2/MNS64, the observed simulator contrast is " + f"**{contrasts['observed_sim_ttft_tp4_minus_tp2_ms']:+.1f} ms**; removing first-scheduling wait changes it to " + f"**{contrasts['queue_free_sim_ttft_tp4_minus_tp2_ms']:+.1f} ms**, aligned with the real contrast " + f"**{contrasts['real_ttft_tp4_minus_tp2_ms']:+.1f} ms**. This localizes the Q30 high-pressure TTFT reversal to admission queueing, while the upstream service-time overprediction remains unattributed in the frozen data.", + "", + "### Q235 Fixed-PD: own-composition vs exact-state contrast", + "", + "Positive TP8−TP4 means TP8 is slower and therefore agrees with the real TP4 winner.", + "", + "| config | sim own decode batch mean | real exact decode batch mean | real token-weighted iteration | exact-state matched sim | coverage |", + "|---|---:|---:|---:|---:|---:|", + ] + ) + q235 = result["known_attribution"]["q235_state"] + for config in q235["configs"]: + lines.append( + f"| {config['config']} | {config['sim_own_decode_batch_mean']:.3f} | " + f"{config['real_exact_decode_batch_mean']:.3f} | " + f"{config['real_token_weighted_iteration_ms']:.4f} ms | " + f"{config['exact_state_matched_sim_ms']:.4f} ms | " + f"{config['exact_state_coverage'] * 100.0:.1f}% |" + ) + lines.extend( + [ + "", + "| component | own-composition TP8−TP4 | exact-state TP8−TP4 |", + "|---|---:|---:|", + ] + ) + for component in q235["components"]: + lines.append( + f"| {component['component']} | " + f"{component['own_composition_tp8_minus_tp4_ms']:+.4f} ms | " + f"{component['exact_state_tp8_minus_tp4_ms']:+.4f} ms |" + ) + decomposition = q235["contrast_decomposition"] + reference = q235["reference"] + lines.extend( + [ + "", + f"The total contrast flips from **{decomposition['simulator_internal_tp8_minus_tp4_ms']:+.4f} ms** on Frontier's own composition to " + f"**{decomposition['exact_state_matched_tp8_minus_tp4_ms']:+.4f} ms** at exact real state, a " + f"**{decomposition['state_composition_shift_ms']:+.4f} ms** state-composition shift. " + f"The exact real iteration contrast is **{reference['exact_iteration_tp8_minus_tp4_ms']:+.4f} ms** and the frozen real TPOT contrast is " + f"**{reference['observed_real_tp8_minus_tp4_ms']:+.4f} ms**. This supports closed-loop state/composition drift for Q235 Fixed-PD; it does not by itself attribute every remaining conditional execution residual.", + "", + ] + ) + return "\n".join(lines) + + +def render_plot(rows: list[dict[str, Any]], output: Path) -> None: + os.environ.setdefault( + "MPLCONFIGDIR", "/tmp/aituner-frontier-split-rootcause-matplotlib" + ) + import matplotlib + + matplotlib.use("Agg") + import matplotlib.pyplot as plt + + usable = [ + row + for row in rows + if row["real_relative_margin_best_vs_second"] is not None + and row["log_ratio_spread_real_top3"] is not None + ] + if not usable: + raise ValueError("no complete rows available for margin-vs-residual plot") + + plt.rcParams.update( + { + "font.family": "DejaVu Sans", + "font.size": 8, + "axes.titlesize": 10, + "axes.labelsize": 9, + } + ) + fig, ax = plt.subplots(figsize=(13.0, 9.0), dpi=180) + colors = {True: "#2a9d8f", False: "#d1495b"} + labels = {True: "winner match", False: "winner mismatch"} + for match in (True, False): + selected = [row for row in usable if row["winner_match"] is match] + ax.scatter( + [ + math.log1p(row["real_relative_margin_best_vs_second"]) * 100.0 + for row in selected + ], + [row["log_ratio_spread_real_top3"] * 100.0 for row in selected], + s=28, + color=colors[match], + edgecolor="white", + linewidth=0.4, + alpha=0.88, + label=labels[match], + zorder=3, + ) + + for index, row in enumerate(usable): + x = math.log1p(row["real_relative_margin_best_vs_second"]) * 100.0 + y = row["log_ratio_spread_real_top3"] * 100.0 + dx = 3 if index % 2 == 0 else -3 + dy = 3 if (index // 2) % 2 == 0 else -5 + ax.annotate( + row["case"], + (x, y), + xytext=(dx, dy), + textcoords="offset points", + ha="left" if dx > 0 else "right", + va="bottom" if dy > 0 else "top", + fontsize=4.5, + color="#303030", + alpha=0.82, + clip_on=True, + zorder=4, + ) + + max_value = max( + max( + math.log1p(row["real_relative_margin_best_vs_second"]) + for row in usable + ), + max(row["log_ratio_spread_real_top3"] for row in usable), + ) * 100.0 + min_value = min( + min( + math.log1p(row["real_relative_margin_best_vs_second"]) + for row in usable + ), + min(row["log_ratio_spread_real_top3"] for row in usable), + ) * 100.0 + lower = min_value / 5.0 + upper = max_value * 2.0 + ax.plot( + [lower, upper], + [lower, upper], + linestyle="--", + color="#555555", + linewidth=1.0, + label="spread = log1p(margin)", + zorder=2, + ) + ax.set_xscale("log") + ax.set_yscale("log") + ax.set_xlim(left=lower, right=upper) + ax.set_ylim(bottom=lower, top=upper) + ax.set_xlabel("Real best-vs-second log margin: 100 × log1p(relative margin)") + ax.set_ylabel("Top-3 differential residual: 100 × log-ratio spread") + ax.set_title("Frontier selection: real margin vs config-differential residual") + ax.grid(True, color="#d8d8d8", linewidth=0.5, alpha=0.7, zorder=1) + ax.legend(frameon=False, loc="upper left") + fig.tight_layout() + output.parent.mkdir(parents=True, exist_ok=True) + temporary = output.with_suffix(output.suffix + ".tmp") + fig.savefig( + temporary, + format="png", + dpi=180, + metadata={"Software": "analyze_split_decomposition.py"}, + ) + plt.close(fig) + os.replace(temporary, output) + + +def render_decision_pair_axis_plot( + rows: list[dict[str, Any]], output: Path +) -> None: + os.environ.setdefault( + "MPLCONFIGDIR", "/tmp/aituner-frontier-split-rootcause-matplotlib" + ) + import matplotlib + + matplotlib.use("Agg") + import matplotlib.pyplot as plt + from matplotlib.lines import Line2D + + usable = [ + row + for row in rows + if row["winner_match"] is False + and row["winner_pair_m_s_percent"] > 0 + and -row["winner_pair_delta_s_percent"] > 0 + ] + if not usable: + raise ValueError("no winner mismatches available for decision-pair-axis plot") + + plt.rcParams.update( + { + "font.family": "DejaVu Sans", + "font.size": 8, + "axes.titlesize": 10, + "axes.labelsize": 9, + } + ) + colors = { + "tp-axis": "#3572b0", + "mns-axis": "#e07a1f", + "mixed": "#7b4ab5", + } + fig, ax = plt.subplots(figsize=(11.0, 8.0), dpi=180) + for axis in INVERSION_AXES: + selected = [row for row in usable if row["winner_deciding_axis"] == axis] + ax.scatter( + [row["winner_pair_m_s_percent"] for row in selected], + [-row["winner_pair_delta_s_percent"] for row in selected], + s=[1000.0 * row["regret"] for row in selected], + color=colors[axis], + edgecolor="white", + linewidth=0.6, + alpha=0.82, + label=axis, + zorder=3, + ) + + values = [row["winner_pair_m_s_percent"] for row in usable] + [ + -row["winner_pair_delta_s_percent"] for row in usable + ] + lower = min(values) / 1.8 + upper = max(values) * 1.8 + ax.plot( + [lower, upper], + [lower, upper], + linestyle="--", + color="#555555", + linewidth=1.0, + label="reversal boundary", + zorder=2, + ) + ax.set_xscale("log") + ax.set_yscale("log") + ax.set_xlim(lower, upper) + ax.set_ylim(lower, upper) + ax.set_xlabel("Winner-pair real log margin $m_s$ (%)") + ax.set_ylabel("Simulator preference strength $-\\delta_s$ (%)") + ax.set_title("Winner-deciding pair census by config axis") + ax.grid(True, color="#d8d8d8", linewidth=0.5, alpha=0.7, zorder=1) + axis_handles = [ + Line2D( + [0], + [0], + marker="o", + linestyle="none", + markerfacecolor=colors[axis], + markeredgecolor="white", + markersize=7, + label=axis, + ) + for axis in INVERSION_AXES + ] + axis_handles.append( + Line2D( + [0], + [0], + linestyle="--", + color="#555555", + linewidth=1.0, + label="reversal boundary", + ) + ) + axis_legend = ax.legend( + handles=axis_handles, frameon=False, loc="upper left", title="deciding axis" + ) + ax.add_artist(axis_legend) + size_handles = [ + ax.scatter( + [], + [], + s=10.0 * regret_percent, + facecolor="none", + edgecolor="#555555", + linewidth=0.7, + label=f"{regret_percent}%", + ) + for regret_percent in (5, 20, 50) + ] + ax.legend( + handles=size_handles, + frameon=False, + loc="lower right", + title="regret (marker area)", + ) + fig.tight_layout() + output.parent.mkdir(parents=True, exist_ok=True) + temporary = output.with_suffix(output.suffix + ".tmp") + fig.savefig( + temporary, + format="png", + dpi=180, + metadata={"Software": "analyze_split_decomposition.py"}, + ) + plt.close(fig) + os.replace(temporary, output) + + +def parse_args() -> argparse.Namespace: + parser = argparse.ArgumentParser() + parser.add_argument("--input-root", type=Path, default=DEFAULT_INPUT_ROOT) + parser.add_argument("--results-root", type=Path, default=DEFAULT_RESULTS_ROOT) + return parser.parse_args() + + +def main() -> None: + args = parse_args() + result = analyze(args.input_root.resolve()) + results_root = args.results_root.resolve() + atomic_write( + results_root / "decomposition.json", + json.dumps(result, indent=2, sort_keys=True) + "\n", + ) + atomic_write(results_root / "decomposition.md", markdown(result)) + render_plot(result["rows"], results_root / "margin-vs-residual.png") + render_decision_pair_axis_plot( + result["rows"], results_root / "decision-pair-axis.png" + ) + print( + json.dumps( + { + "status": "PASS" if not result["anomalies"] else "ANOMALY", + "rows": result["summary"]["row_count"], + "h_scale_counterexamples": result["summary"]["h_scale_counterexample_count"], + "anomalies": len(result["anomalies"]), + }, + sort_keys=True, + ) + ) + if result["anomalies"]: + raise SystemExit("analysis anomalies found; see results/decomposition.md") + + +if __name__ == "__main__": + main() diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/aituner.commit b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/aituner.commit new file mode 100644 index 0000000..159620e --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/aituner.commit @@ -0,0 +1 @@ +10567da5238db57c29a45e09ebd40343a7d1a543 diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/artifacts.sha256 b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/artifacts.sha256 new file mode 100644 index 0000000..d7d710c --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/artifacts.sha256 @@ -0,0 +1,180 @@ +bfbfb84d0310b312c3f3f0047219d5b615850d8b5b465282d6207ebe7b5ba987 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/analysis/comparison.json +aa0295fcd1a0465483ca3655aae94de543acf5b39bde2fcfff6ff40a7fb27f2a /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/analysis/comparison.md +f2c2a94627194431497c751e1ed0e3768f1f7971c3667e1f70563f1d7c5118f3 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/controller.log +30bdc9da5c8e638d6278b3ae3f812613a1f7ef296439e34d28dcb72ae30b0d1b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/profiles/qwen235-serving-allreduce.csv +87a92ee3ba6955b95cf0fcdbf5dd8675a8ec85bf4a0dfd61ae12a75c32679fac /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/profiles/qwen235-serving-allreduce.manifest.json +13a6cd30307a6dcdd12dc460949ce1e618cbd167cd976ad1b71ad6477869b55d /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/provenance/aituner.commit +e3f7b627aa262187e7e02b703595f32fb1ced508724484ff515a68fe037d4f03 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/provenance/frontier.commit +cd3d7ea44155f2d3e801926b35134d9735777256d72ba3f6a8f0cff2770ba09a /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/provenance/input.sha256 +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/138b2eb7_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/479e1bac_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/5ae40466_model_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/6e9cd646_model_lock.file +a6ad892511f6689578fca7b77a971dcfa16b11b2af54a2aaa90b98fa29643776 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/all_reduce_138b2eb7_predictions.csv +f38672b7f93f91f2cf83996389fca9f659fe211df0853044dfa9cafa75b296c2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/all_reduce_138b2eb7_predictions.pkl +628f44a6a1c0f7c2ea121df3ef3a388e997581a998b97933d81be2577b0333f8 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/all_reduce_479e1bac_predictions.csv +7dcc465e6b8e39b157bb7a2838b8385ef98f49eb34cffa9832afc2ab8dc6a785 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/all_reduce_479e1bac_predictions.pkl +7fe2a18a04257bb047feb3a5abe09a299e24e454f567ec54b213ba5722be5f5f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/all_reduce_5ae40466.pkl +125f0eda94a6a39cf3d47ec3c99a9d57180de075ec49d85348eecbd19010a5aa /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/cc-cache/all_reduce_6e9cd646.pkl +c56228d3654b51ea42c73f0883d58c67c19b1024c14f1677c63cb882e4dc3334 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/frontier_surface.json +cf54e197cfcb6b480ccbd658f73dad0a90597bd58399d1c07f25e3987ca02227 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/command.json +7796df845a96bdb9603baf372118466e27200fc10ee83b26b469d4e2c089308f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/op_precision_metadata.csv +01ed41e9babf2eb71286e93d8f4986dda9820f92212c975ed9411a95a5f8758f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/request_metrics.csv +ab0ee72a7e2fbb3bf87c1653a9b1805b7805fd0f9ae3676ce69a0d9b112a4545 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/system_metrics.json +84a609818002bcfb648a236a65b1d40dcd3c964360cb488dfb7549eddc546533 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/stderr.log +469ad61c0082534fa069a3ddc38510b4dc2180d016518834d3ac69f31c3ef7e5 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns128/eval/stdout.log +080edcceed5f26160cd073a33c87aa8399cb0fe7cc9227bacb442aa1f90c5a30 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/command.json +db4e6b4632fc16a368407e458d26fd7a0adc9ae930755ac7784b899da60ee9fc /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/op_precision_metadata.csv +01ed41e9babf2eb71286e93d8f4986dda9820f92212c975ed9411a95a5f8758f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/request_metrics.csv +ab0ee72a7e2fbb3bf87c1653a9b1805b7805fd0f9ae3676ce69a0d9b112a4545 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/system_metrics.json +eb987dc5b2222740cef7577350190033cccee41946638aa5e9a5fd20c6be8b45 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/stderr.log +62312ef79e6302bf7be0c6ba276211065950b46eb4b4aef0a031358a804e17ce /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp4_ep1_mns64/eval/stdout.log +89b4fc5eb8ccd1d5dc58b778352acaec5d496dded0181990fd3bce30c557ab48 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/command.json +bcc034a01b617f26aa4d7d760082fc1baa1e62b1b63ba50e11c9e234124d2c37 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/op_precision_metadata.csv +51a848c4c12eacabbc72a0f6a8b5c1863e8b624b316b7ab55341e3fe5a3a753b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/request_metrics.csv +758424010e61780cbcbb320d68caa22c2e35c067654f9c4ef98217ff90e07b30 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/system_metrics.json +463057bcb54084ab86eb35fc4f33ad62d1b3ebd05b6b04a1510ce8df6e686807 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/stderr.log +0a0433b5c338632e35516e34b262cf8b714cea73488ba9e3459f4881a0fe327e /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns128/eval/stdout.log +2a69949a89e4dcedbede612b8beab834d63eb8683d97975bc779764304b1a627 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/command.json +88def2ba5bd00b375e0d907976bdd45c36faf53ad7980d8a1eb7e46057ccc8ec /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/op_precision_metadata.csv +51a848c4c12eacabbc72a0f6a8b5c1863e8b624b316b7ab55341e3fe5a3a753b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/request_metrics.csv +758424010e61780cbcbb320d68caa22c2e35c067654f9c4ef98217ff90e07b30 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/system_metrics.json +6ed18c855e41284d27a8aeca93799ba55745e7527344671edfed449693b29758 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/stderr.log +30bc99671a0bedac259b8be1d980a2981a48439e2d04a742d7baa4cc82638b39 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-pd/runs/tp8_ep8_mns64/eval/stdout.log +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/138b2eb7_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/479e1bac_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/5ae40466_model_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/6e9cd646_model_lock.file +a6ad892511f6689578fca7b77a971dcfa16b11b2af54a2aaa90b98fa29643776 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/all_reduce_138b2eb7_predictions.csv +f38672b7f93f91f2cf83996389fca9f659fe211df0853044dfa9cafa75b296c2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/all_reduce_138b2eb7_predictions.pkl +628f44a6a1c0f7c2ea121df3ef3a388e997581a998b97933d81be2577b0333f8 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/all_reduce_479e1bac_predictions.csv +7dcc465e6b8e39b157bb7a2838b8385ef98f49eb34cffa9832afc2ab8dc6a785 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/all_reduce_479e1bac_predictions.pkl +7fe2a18a04257bb047feb3a5abe09a299e24e454f567ec54b213ba5722be5f5f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/all_reduce_5ae40466.pkl +125f0eda94a6a39cf3d47ec3c99a9d57180de075ec49d85348eecbd19010a5aa /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/cc-cache/all_reduce_6e9cd646.pkl +e83e951102f893a83c7ef4ebbae6e6f998a1a43a8d9f7a6ed165f5db96609980 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/frontier_surface.json +e3f2699e0b9e182ab440acc690ddd8aaf0c954c5a83b7e1f444b3d494fcb2379 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/command.json +4a28f5aa74e7f9909545b1d1bc00a66098d85f7fff6b72fbb98d11d4a3f786c0 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/op_precision_metadata.csv +0030204dc1047a02d601f7c1d57eee9fc2234080afd4e499c016b902a8da7573 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/request_metrics.csv +d5b01e9e1689106d8174b1246da2c0c7a35ab7b83b1f8f2f3919753ac320e1e3 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/system_metrics.json +599bb360437de9ebb16c1b29958c27b2c7f8e95eb047f9b8f26cb5709003755a /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/stderr.log +386b21c7695ae4159fb60f5c8772fd91512319f1511769e9b675955b7f26a223 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns128/eval/stdout.log +3db0c671d763a7db9565b151464b96060455bafe7f065b35719e27c7d45b12b5 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/command.json +dfe34eef677ee24edd43ef01008aa30ed02fd7f251876149a55b9436130f179b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/op_precision_metadata.csv +0030204dc1047a02d601f7c1d57eee9fc2234080afd4e499c016b902a8da7573 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/request_metrics.csv +d5b01e9e1689106d8174b1246da2c0c7a35ab7b83b1f8f2f3919753ac320e1e3 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/system_metrics.json +9cceef591ceae33b03dddd558387bf4e1853c2a3e74913dd7839fb47dacfcb9c /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/stderr.log +1d5494b859450660d3f06050a91af27072ec4d15f4fe4bfb159f32f2e6769b89 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp4_ep1_mns64/eval/stdout.log +439fe52e1d3c10c9c5cb4db20308e62da26a44866085d44768244d82ff0d22d1 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/command.json +9c1211fc6032dfa395933dbd2977115c5494a37b814c335dd2ed1ce70716c7ce /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/op_precision_metadata.csv +d3ebd523ddf95f021d98c043d290670b20d8c0ffc2fdbca27fc5740ae46981f5 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/request_metrics.csv +264cd59b0b0b9797f5054f8527e13412a9c9b5fd3a4608d3f81b228a6c08d0bc /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/system_metrics.json +80adf7553fe587b542d0c43acf6850412199503a0eaa17ebbb04ac2870326059 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/stderr.log +3b86967c56b8dbd8db2edbbbbae367864ef41c703ee51fc4636811ca43f5c1ac /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns128/eval/stdout.log +0ee66ca4a8363be762616e69329287c5a74993f36283ed5a470a4b012ec9a000 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/command.json +98b3db100b934f7b3473fa340f1c368f510f55071f7f79d458264a6d3aac5209 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/op_precision_metadata.csv +d3ebd523ddf95f021d98c043d290670b20d8c0ffc2fdbca27fc5740ae46981f5 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/request_metrics.csv +264cd59b0b0b9797f5054f8527e13412a9c9b5fd3a4608d3f81b228a6c08d0bc /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/system_metrics.json +6b2fad699b75bf96907cf6408da1cb5c34ba7429da791df8f5c55ab24a949240 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/stderr.log +05475a151dca4d87d060c2714d7bd8837964d77b1e4ba335f1363b38a74e3a01 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/fixed-po/runs/tp8_ep8_mns64/eval/stdout.log +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/138b2eb7_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/479e1bac_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/5ae40466_model_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/6e9cd646_model_lock.file +a6ad892511f6689578fca7b77a971dcfa16b11b2af54a2aaa90b98fa29643776 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/all_reduce_138b2eb7_predictions.csv +f38672b7f93f91f2cf83996389fca9f659fe211df0853044dfa9cafa75b296c2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/all_reduce_138b2eb7_predictions.pkl +628f44a6a1c0f7c2ea121df3ef3a388e997581a998b97933d81be2577b0333f8 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/all_reduce_479e1bac_predictions.csv +7dcc465e6b8e39b157bb7a2838b8385ef98f49eb34cffa9832afc2ab8dc6a785 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/all_reduce_479e1bac_predictions.pkl +7fe2a18a04257bb047feb3a5abe09a299e24e454f567ec54b213ba5722be5f5f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/all_reduce_5ae40466.pkl +125f0eda94a6a39cf3d47ec3c99a9d57180de075ec49d85348eecbd19010a5aa /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/cc-cache/all_reduce_6e9cd646.pkl +42420125d3a8ce4aed8dd1c859d39ff840b4e77a52ad5752de73d00a0aed5c3b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/frontier_surface.json +a222ec73d311c5d4e57b0ed3ed2054cb83ec31ff78031eb2b8bde6031472f9ca /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/command.json +9ff45df909e4f94da9435e85d893c0582fbb57ecc28ab15dddadce26604c0f1b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/op_precision_metadata.csv +12984c1c3ac1ab1d8fb35e7bcbacb147d827cdba43e934fdc757ee8ea7baf6fb /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/request_metrics.csv +343388af242d66c2e8e46a4462dd23862d6437725c80961588fa6cdc328acdec /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/system_metrics.json +b64186eaaa0f2fa566d181b40ed42cd9303b8131ce6fd7c4ae3d77855533a645 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/stderr.log +ece0b457d6c6fb30280d003e209912b918d06abc5e0781296ce29c6855542ed5 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns128/eval/stdout.log +837819c6bcb470bc6067a3e5b24713166e4e3b1164090793690874597ea60e03 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/command.json +8db5d447bfc3506e4cf76a511a5a4760c567e2303240f878212aad44ff6f7cdc /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/op_precision_metadata.csv +d244788351f45f3473a8a2705b232e1a951485b5a24e09029331f42eb47bbafc /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/request_metrics.csv +5795a7d8f48ea0cde14f5c724d5a77d0903398a75151a95c39ad99c2ba2bfb68 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/system_metrics.json +5baba11faf64f5c9e4ebbd123aa745c46d73c3f0f81cdd0a16249d212020d443 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/stderr.log +4d70795d321dff067aca5e9ead098726df129d556ceca8eb437d63cefa0c900c /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp4_ep1_mns64/eval/stdout.log +40b8d7eb4a946406f37532bb308514bc4982088d872374d078635ce6ef764001 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/command.json +658539186152881399746213af4e3b041b5589cf3a8559346a109d444149767b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/op_precision_metadata.csv +00e4ed87800ce6054cf4818a4bac9b5db72c5e6dff52ff57d3b7b2489e97ffda /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/request_metrics.csv +8947f894df28ac9f9cec7be09e79767a685f2ef96835e495d78eadcf5092633a /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/system_metrics.json +04134b8170da075e36d33766ea9d520dd4db57abcf188116e05aaee1d125f8f3 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/stderr.log +bf6e1295c814c455d1c0b9f02ba0669636b58475efe8873907c6f53677e75fce /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns128/eval/stdout.log +8719be2b20a1d0b35fc5bf23f398801737725527e6ca502a6f343566741517ca /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/command.json +5280da88ab96a0da6e54dc6dcf17d783822b8a49387a696e79830dfd7e81d2d2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/op_precision_metadata.csv +20adfc333507bbe98f607b1075b0f790e4651ad3185f96906009f6177839de96 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/request_metrics.csv +1b8a2c5be9bb1c5ab551768a9bbe1c95a6c3f93c9f2b1cb6e1a53a86d3ffb239 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/system_metrics.json +683afcccfbcfe232313965d985217bbc8acce32426bc31df749c6b8177cee8a9 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/stderr.log +02b34698d18bb18b46e4792b6208c6277249399e80e5f32c42a112f2fdc4a0e2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-pd/runs/tp8_ep8_mns64/eval/stdout.log +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/138b2eb7_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/479e1bac_prediction_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/5ae40466_model_lock.file +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/6e9cd646_model_lock.file +a6ad892511f6689578fca7b77a971dcfa16b11b2af54a2aaa90b98fa29643776 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/all_reduce_138b2eb7_predictions.csv +f38672b7f93f91f2cf83996389fca9f659fe211df0853044dfa9cafa75b296c2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/all_reduce_138b2eb7_predictions.pkl +628f44a6a1c0f7c2ea121df3ef3a388e997581a998b97933d81be2577b0333f8 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/all_reduce_479e1bac_predictions.csv +7dcc465e6b8e39b157bb7a2838b8385ef98f49eb34cffa9832afc2ab8dc6a785 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/all_reduce_479e1bac_predictions.pkl +7fe2a18a04257bb047feb3a5abe09a299e24e454f567ec54b213ba5722be5f5f /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/all_reduce_5ae40466.pkl +125f0eda94a6a39cf3d47ec3c99a9d57180de075ec49d85348eecbd19010a5aa /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/cc-cache/all_reduce_6e9cd646.pkl +aafb5ba279ba8d0f693e12778851c563de4702ffba51e908324ad0e613468d3c /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/frontier_surface.json +1ae2c8f734d6bde7740d06953f21c69af00b6307bcb8fc15b3a6a9415e6d29d8 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/command.json +b8f251e1ae5034352f35d61cbfdcad77c48ff978452b43092102ad785dc59930 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/op_precision_metadata.csv +c164e64b1f0b2eb009185b07247d7ce3abbe4baf377ad62ef071a4767395b704 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/request_metrics.csv +3b65bd4a043ab4c395b988fa94172123e851638b1f250ca8761f8725d1cf8cf5 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns128_eval/system_metrics.json +2b61dc88137c817f96e7dcd45c65f451b8031647e56c6f8e554c9b91aee11982 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/stderr.log +0fb063af9bf0cc706e42f12ac1883a309bb4e7ca41924dac8b9ae8d9d580b223 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns128/eval/stdout.log +08e6f686731ff6ceda8577c088ade825182777cff2528e207b444f2fe575f7ef /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/command.json +2f870b68c0820e241e43ebe435d301c88e2abf68bf9e29ff22c08baf39aeb574 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/op_precision_metadata.csv +9349cb9f1ab478343b1b8d079cc175b50328b7c0bffb37018b3a7dc3e208c915 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/request_metrics.csv +141593e073d0247455c73de04da5d82e918e3bf4128c225153a3e85faf63420c /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp4_ep1_mns64_eval/system_metrics.json +c6faee6e21ba387608c5387e1a05eae3158a6edda0c530c38d4d8664b5e34a3c /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/stderr.log +cd8ee4fb98de672f9b7550dc39e0bf3e80a44c41c65f80c2f5192a9083d1b0cb /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp4_ep1_mns64/eval/stdout.log +961af5f501fcc9606d0ba69924aa50b06e8030dc4239091216780e036702c95d /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/command.json +d9330a115bd2bf15f84986c44fdb35aecf67b8f8138807ed7c2256f36e1a6543 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/op_precision_metadata.csv +6c6f40eba2795ef41f027c7412134694a91baa484933afc9b300803412d376cf /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/request_metrics.csv +d7a7c8fe3fdcfb5d33589cf4ac1706e9fc011c95302180d6d7a1b874f6fd19f4 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns128_eval/system_metrics.json +8aed33f0fc90d82c63f0a3c17dc0ef37ffd555046a4155f6333fca8ca4250df0 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/stderr.log +756930da43bef6ec443ebe6d6360ad15069a3a43cc0c0c6ef07d2795b83cfdb2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns128/eval/stdout.log +3dad31841fddfff0dc4c8dec00f78f9ffc75de82fc94eec50a354ee64902aa6d /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/command.json +b0437765d7f3c27102ea54833ff86d9c14c4f2b76185e770cf1276a53edb5669 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/config.json +9d2e51495987994f2ef7f8308141f893d96a96b1a6268b29e6799643265bcb02 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/op_precision_metadata.csv +015d5b1b48dbe1bb0de1a8a3265a1292e75af1f58d5ac076486e0b85fb133968 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/request_metrics.csv +c0cb828fcaf067076c82a68eeb4c180e5e38d6f0f43dfcf666b0a4515b78a70c /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/metrics/qwen3_235b_a22b/online_serving/qwen235_v020_tp8_ep8_mns64_eval/system_metrics.json +8e4de34f2714e2b0cc1b7a7cc7e657662c3f99231adcea922dca73503a1d9ca2 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/result.json +e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/stderr.log +336c646cf9d88d4059f6a4584dab312a2e55401a808627fa8011280c7eb39c3a /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/sim/trace-po/runs/tp8_ep8_mns64/eval/stdout.log diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/frontier.commit b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/frontier.commit new file mode 100644 index 0000000..896d98d --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/frontier.commit @@ -0,0 +1 @@ +6e8e0d845bceff11b0b62cb29df3a1a93411fdd4 diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/input.sha256 b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/input.sha256 new file mode 100644 index 0000000..167bf99 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1-prov/input.sha256 @@ -0,0 +1,4 @@ +8eadf8b39becfcbe103c6328ca616902689e9694cc6cb6c1f08609f0e758ec41 /home/admin/cpfs/wjh/aituner/aituner-q235-collective-20260719/runs/frontier-fidelity-envelope-v1/run_qwen235_collective_profile_ablation.sh +30bdc9da5c8e638d6278b3ae3f812613a1f7ef296439e34d28dcb72ae30b0d1b /home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1/profiles/qwen235-serving-allreduce.csv +5aa8657c5271abec6fca78a9f8fa2cfc0696f24c61033a850d7289f53f48632e /home/admin/cpfs/wjh/aituner/qwen235-v020-profiles-20260719-r2/frozen/manifest.json +99befe893683e3a638ea28048d00fa6c7b3d6a209921fe19ad51e78dfbc39459 /home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/provenance/runtime-contract.json diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.json new file mode 100644 index 0000000..57dc08b --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.json @@ -0,0 +1,799 @@ +{ + "cases": { + "fixed-pd": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.3067524317507717, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.3456375801249614, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "tpot_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.33025510615656906, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "tpot_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.37228890038064755, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "ttft_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + }, + "ttft_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns64", + "reversals": [], + "selected_real_regret": 0.002088257708717345, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 5729.31677040774, + "e2e_p90_ms": 5871.668232022785, + "request_samples": 387, + "tpot_mean_ms": 21.044200828709027, + "tpot_p90_ms": 21.59612646244247, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 363.00995954954925, + "ttft_p90_ms": 369.09779999405146 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 5769.497427325912, + "e2e_p90_ms": 5888.945628073998, + "request_samples": 387, + "tpot_mean_ms": 21.187139407074238, + "tpot_p90_ms": 21.653656356547977, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 366.7432916322386, + "ttft_p90_ms": 369.99153497163206 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 7486.7986220007915, + "e2e_p90_ms": 7901.13743103575, + "request_samples": 387, + "tpot_mean_ms": 27.994155607374484, + "tpot_p90_ms": 29.63612463562658, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 348.25438050341427, + "ttft_p90_ms": 365.8816539682448 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 7484.121415326708, + "e2e_p90_ms": 7908.651847974397, + "request_samples": 387, + "tpot_mean_ms": 27.978544004773987, + "tpot_p90_ms": 29.650389521346227, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 349.5577253122725, + "ttft_p90_ms": 365.11919100303203 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 19261.684938205322, + "e2e_p50_ms": 19681.421068277567, + "e2e_p90_ms": 19712.678973231064, + "e2e_p95_ms": 19717.18006692948, + "tpot_mean_ms": 74.22292738142716, + "tpot_p50_ms": 75.8976524911963, + "tpot_p90_ms": 75.8976524912086, + "tpot_p95_ms": 75.89765249120967, + "ttft_mean_ms": 334.8384559413977, + "ttft_p50_ms": 334.75193988430976, + "ttft_p90_ms": 359.7779859328796, + "ttft_p95_ms": 363.2786816744229 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 19261.684938205322, + "e2e_p50_ms": 19681.421068277567, + "e2e_p90_ms": 19712.678973231064, + "e2e_p95_ms": 19717.18006692948, + "tpot_mean_ms": 74.22292738142716, + "tpot_p50_ms": 75.8976524911963, + "tpot_p90_ms": 75.8976524912086, + "tpot_p95_ms": 75.89765249120967, + "ttft_mean_ms": 334.8384559413977, + "ttft_p50_ms": 334.75193988430976, + "ttft_p90_ms": 359.7779859328796, + "ttft_p95_ms": 363.2786816744229 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 14056.464119438264, + "e2e_p50_ms": 14650.653983203298, + "e2e_p90_ms": 14674.997135818061, + "e2e_p95_ms": 14677.859760866291, + "tpot_mean_ms": 54.15667269956665, + "tpot_p50_ms": 56.52350191837838, + "tpot_p90_ms": 56.52350850045728, + "tpot_p95_ms": 56.523546100039816, + "ttft_mean_ms": 246.51258104876885, + "ttft_p50_ms": 246.7781280760306, + "ttft_p90_ms": 263.0087113349084, + "ttft_p95_ms": 264.77576248352364 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 14056.464119438264, + "e2e_p50_ms": 14650.653983203298, + "e2e_p90_ms": 14674.997135818061, + "e2e_p95_ms": 14677.859760866291, + "tpot_mean_ms": 54.15667269956665, + "tpot_p50_ms": 56.52350191837838, + "tpot_p90_ms": 56.52350850045728, + "tpot_p95_ms": 56.523546100039816, + "ttft_mean_ms": 246.51258104876885, + "ttft_p50_ms": 246.7781280760306, + "ttft_p90_ms": 263.0087113349084, + "ttft_p95_ms": 264.77576248352364 + } + } + }, + "fixed-po": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + }, + "e2e_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + }, + "ttft_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + }, + "ttft_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 345.40159726161653, + "e2e_p90_ms": 346.7378600034863, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 345.35322551680514, + "ttft_p90_ms": 346.6896569589153 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 345.8011649264437, + "e2e_p90_ms": 347.9283060878515, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 345.75379653310387, + "ttft_p90_ms": 347.88418107200414 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 326.2389304512842, + "e2e_p90_ms": 341.0220619989559, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 326.19059710668336, + "ttft_p90_ms": 340.98013502079993 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 326.89427194042366, + "e2e_p90_ms": 341.91650594584644, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 326.846390089937, + "ttft_p90_ms": 341.87235799618065 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 303.2842141052072, + "e2e_p50_ms": 303.28421410520434, + "e2e_p90_ms": 303.28421410521855, + "e2e_p95_ms": 303.28421410521855, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 303.2842141052072, + "ttft_p50_ms": 303.28421410520434, + "ttft_p90_ms": 303.28421410521855, + "ttft_p95_ms": 303.28421410521855 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 303.2842141052072, + "e2e_p50_ms": 303.28421410520434, + "e2e_p90_ms": 303.28421410521855, + "e2e_p95_ms": 303.28421410521855, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 303.2842141052072, + "ttft_p50_ms": 303.28421410520434, + "ttft_p90_ms": 303.28421410521855, + "ttft_p95_ms": 303.28421410521855 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 224.0004422359394, + "e2e_p50_ms": 224.00044223590854, + "e2e_p90_ms": 224.00044223607017, + "e2e_p95_ms": 224.00044223607017, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 224.0004422359394, + "ttft_p50_ms": 224.00044223590854, + "ttft_p90_ms": 224.00044223607017, + "ttft_p95_ms": 224.00044223607017 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 224.0004422359394, + "e2e_p50_ms": 224.00044223590854, + "e2e_p90_ms": 224.00044223607017, + "e2e_p95_ms": 224.00044223607017, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 224.0004422359394, + "ttft_p50_ms": 224.00044223590854, + "ttft_p90_ms": 224.00044223607017, + "ttft_p95_ms": 224.00044223607017 + } + } + }, + "trace-pd": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.8333333333333334, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.006154214824712234, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.8333333333333334, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.062164651568153984, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "tpot_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "winner_match": true + }, + "tpot_p90_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "winner_match": true + }, + "ttft_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + }, + "ttft_p90_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 203026.22048668287, + "e2e_p90_ms": 344183.7428959552, + "request_samples": 387, + "tpot_mean_ms": 58.09653520572589, + "tpot_p90_ms": 75.82137218925735, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 26487.547554662306, + "ttft_p90_ms": 93044.83354603872 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 198593.25371425177, + "e2e_p90_ms": 332386.17597706616, + "request_samples": 387, + "tpot_mean_ms": 53.60856802543236, + "tpot_p90_ms": 64.87020396877685, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 31557.98602907994, + "ttft_p90_ms": 112666.82129900437 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 182457.35910624202, + "e2e_p90_ms": 318000.89644105174, + "request_samples": 387, + "tpot_mean_ms": 61.88514020253078, + "tpot_p90_ms": 78.6175951982538, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 1141.539354895564, + "ttft_p90_ms": 2616.6939180111513 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 181341.34550937495, + "e2e_p90_ms": 299389.4552709535, + "request_samples": 387, + "tpot_mean_ms": 45.89371812653489, + "tpot_p90_ms": 51.37046630467056, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 37215.26084531421, + "ttft_p90_ms": 132333.42359995004 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 350485.31604335306, + "e2e_p50_ms": 329886.2419457557, + "e2e_p90_ms": 618683.6003279199, + "e2e_p95_ms": 719028.7082294676, + "tpot_mean_ms": 92.88846066050185, + "tpot_p50_ms": 91.14780565610876, + "tpot_p90_ms": 104.48481783284998, + "tpot_p95_ms": 117.7639165127043, + "ttft_mean_ms": 51997.2508135414, + "ttft_p50_ms": 915.3872825012286, + "ttft_p90_ms": 175964.46056759413, + "ttft_p95_ms": 254194.45368846075 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 350205.0884431818, + "e2e_p50_ms": 345577.391630324, + "e2e_p90_ms": 612408.2764512596, + "e2e_p95_ms": 709831.5675796239, + "tpot_mean_ms": 86.77595832694777, + "tpot_p50_ms": 87.01966249041537, + "tpot_p90_ms": 95.27552612769624, + "tpot_p95_ms": 98.22236811591964, + "ttft_mean_ms": 64276.51238724817, + "ttft_p50_ms": 2913.567965463905, + "ttft_p90_ms": 231348.6370051864, + "ttft_p95_ms": 250924.94176651328 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 197537.45276613487, + "e2e_p50_ms": 184538.43666142275, + "e2e_p90_ms": 356508.87615749374, + "e2e_p95_ms": 426676.71753314673, + "tpot_mean_ms": 62.78094439594437, + "tpot_p50_ms": 61.98322714624318, + "tpot_p90_ms": 73.38270919472093, + "tpot_p95_ms": 79.82017533221833, + "ttft_mean_ms": 496.4562724801789, + "ttft_p50_ms": 258.18551545088656, + "ttft_p90_ms": 1185.2339118913733, + "ttft_p95_ms": 1563.6528594879735 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 230232.00122833299, + "e2e_p50_ms": 225231.54242404614, + "e2e_p90_ms": 399325.5400221139, + "e2e_p95_ms": 451116.17307457025, + "tpot_mean_ms": 56.01681518539994, + "tpot_p50_ms": 56.94928232211729, + "tpot_p90_ms": 60.38839798597023, + "tpot_p95_ms": 62.67163079918898, + "ttft_mean_ms": 46908.98176860714, + "ttft_p50_ms": 1623.170360660838, + "ttft_p90_ms": 166051.82069777363, + "ttft_p95_ms": 181013.0283352888 + } + } + }, + "trace-po": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.0137482658615673, + "sim_winner": "tp8_ep8_mns64", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns64", + "reversals": [], + "selected_real_regret": 0.0025194410024500513, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "ttft_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.013750984200462835, + "sim_winner": "tp8_ep8_mns64", + "winner_match": false + }, + "ttft_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns64", + "reversals": [], + "selected_real_regret": 0.002607797240047338, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 1083.6389664896267, + "e2e_p90_ms": 3156.966591021046, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 1083.561832460368, + "ttft_p90_ms": 3156.9307829486206 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 1102.0341126990652, + "e2e_p90_ms": 3162.989347940311, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 1101.9558890756384, + "ttft_p90_ms": 3162.9534389358014 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 1029.581229927413, + "e2e_p90_ms": 2612.0267439400777, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 1029.4865175674956, + "ttft_p90_ms": 2611.9744409807026 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 1043.7361864025345, + "e2e_p90_ms": 2605.4624350508675, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 1043.6429704051557, + "ttft_p90_ms": 2605.180658050813 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 698.2455408721717, + "e2e_p50_ms": 208.8217362068434, + "e2e_p90_ms": 2102.42229741975, + "e2e_p95_ms": 2868.6579248910534, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 698.2455408721717, + "ttft_p50_ms": 208.8217362068434, + "ttft_p90_ms": 2102.42229741975, + "ttft_p95_ms": 2868.6579248910534 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 698.0132356513792, + "e2e_p50_ms": 208.8217362068434, + "e2e_p90_ms": 2102.42229741975, + "e2e_p95_ms": 2868.6579248910534, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 698.0132356513792, + "ttft_p50_ms": 208.8217362068434, + "ttft_p90_ms": 2102.42229741975, + "ttft_p95_ms": 2868.6579248910534 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 487.42679595918156, + "e2e_p50_ms": 253.39288448911512, + "e2e_p90_ms": 1264.1466431938486, + "e2e_p95_ms": 1656.1837032209396, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 487.42679595918156, + "ttft_p50_ms": 253.39288448911512, + "ttft_p90_ms": 1264.1466431938486, + "ttft_p95_ms": 1656.1837032209396 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 487.3699604726311, + "e2e_p50_ms": 253.41330144894124, + "e2e_p90_ms": 1264.1466431938486, + "e2e_p95_ms": 1656.1837032209396, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 487.3699604726311, + "ttft_p50_ms": 253.41330144894124, + "ttft_p90_ms": 1264.1466431938486, + "ttft_p95_ms": 1656.1837032209396 + } + } + } + }, + "real_root": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1", + "schema": "qwen235-v020-simulator-real-comparison-v1", + "sim_root": "/home/admin/cpfs/wjh/aituner/qwen235-collective-profile-ablation-20260719-r1" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.md new file mode 100644 index 0000000..fc3325a --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-ablation-a1/comparison.md @@ -0,0 +1,24 @@ +# Qwen235 vLLM 0.20 Frontier vs real + +| case | metric | Frontier winner | real winner | match | regret | pair agreement | +|---|---|---|---|---:|---:|---:| +| fixed-pd | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 100.0% | +| fixed-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 0.2% | 100.0% | +| fixed-pd | tpot_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 33.0% | 0.0% | +| fixed-pd | tpot_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 37.2% | 0.0% | +| fixed-pd | e2e_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 30.7% | 0.0% | +| fixed-pd | e2e_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 34.6% | 0.0% | +| fixed-po | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 100.0% | +| fixed-po | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 100.0% | +| fixed-po | e2e_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 100.0% | +| fixed-po | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 100.0% | +| trace-pd | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 66.7% | +| trace-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 66.7% | +| trace-pd | tpot_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | yes | 0.0% | 66.7% | +| trace-pd | tpot_p90_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | yes | 0.0% | 66.7% | +| trace-pd | e2e_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 0.6% | 83.3% | +| trace-pd | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 6.2% | 83.3% | +| trace-po | ttft_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns128 | no | 1.4% | 66.7% | +| trace-po | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 0.3% | 100.0% | +| trace-po | e2e_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns128 | no | 1.4% | 66.7% | +| trace-po | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 0.3% | 100.0% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.json new file mode 100644 index 0000000..fb5ede7 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.json @@ -0,0 +1,952 @@ +{ + "cases": { + "fixed-pd": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.3067524317507717, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.3456375801249614, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "tpot_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.33025510615656906, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "tpot_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp4_ep1_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.37228890038064755, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "ttft_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.04237011756982145, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + }, + "ttft_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 1.0, + "real_winner": "tp8_ep8_mns64", + "reversals": [], + "selected_real_regret": 0.002088257708717345, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 5729.31677040774, + "e2e_p90_ms": 5871.668232022785, + "request_samples": 387, + "tpot_mean_ms": 21.044200828709027, + "tpot_p90_ms": 21.59612646244247, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 363.00995954954925, + "ttft_p90_ms": 369.09779999405146 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 5769.497427325912, + "e2e_p90_ms": 5888.945628073998, + "request_samples": 387, + "tpot_mean_ms": 21.187139407074238, + "tpot_p90_ms": 21.653656356547977, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 366.7432916322386, + "ttft_p90_ms": 369.99153497163206 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 7486.7986220007915, + "e2e_p90_ms": 7901.13743103575, + "request_samples": 387, + "tpot_mean_ms": 27.994155607374484, + "tpot_p90_ms": 29.63612463562658, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 348.25438050341427, + "ttft_p90_ms": 365.8816539682448 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 7484.121415326708, + "e2e_p90_ms": 7908.651847974397, + "request_samples": 387, + "tpot_mean_ms": 27.978544004773987, + "tpot_p90_ms": 29.650389521346227, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 349.5577253122725, + "ttft_p90_ms": 365.11919100303203 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 22734.095381397616, + "e2e_p50_ms": 23441.595611495926, + "e2e_p90_ms": 23484.306701188103, + "e2e_p95_ms": 23489.511452611594, + "tpot_mean_ms": 87.77349881741111, + "tpot_p50_ms": 90.6067822139126, + "tpot_p90_ms": 90.60678221391389, + "tpot_p95_ms": 90.60678221391389, + "ttft_mean_ms": 351.8531829577845, + "ttft_p50_ms": 351.44748294051453, + "ttft_p90_ms": 381.14669406792245, + "ttft_p95_ms": 385.3185272085611 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 22734.095381397616, + "e2e_p50_ms": 23441.595611495926, + "e2e_p90_ms": 23484.306701188103, + "e2e_p95_ms": 23489.511452611594, + "tpot_mean_ms": 87.77349881741111, + "tpot_p50_ms": 90.6067822139126, + "tpot_p90_ms": 90.60678221391389, + "tpot_p95_ms": 90.60678221391389, + "ttft_mean_ms": 351.8531829577845, + "ttft_p50_ms": 351.44748294051453, + "ttft_p90_ms": 381.14669406792245, + "ttft_p95_ms": 385.3185272085611 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 16059.899811799207, + "e2e_p50_ms": 17256.45308650381, + "e2e_p90_ms": 17280.553823012277, + "e2e_p95_ms": 17282.746891876577, + "tpot_mean_ms": 61.58781555229474, + "tpot_p50_ms": 66.32324900760649, + "tpot_p90_ms": 66.3246446898248, + "tpot_p95_ms": 66.3246446898248, + "ttft_mean_ms": 355.00684596404665, + "ttft_p50_ms": 355.16695480338, + "ttft_p90_ms": 368.8582878708644, + "ttft_p95_ms": 370.503089520021 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 16059.899811799207, + "e2e_p50_ms": 17256.45308650381, + "e2e_p90_ms": 17280.553823012277, + "e2e_p95_ms": 17282.746891876577, + "tpot_mean_ms": 61.58781555229474, + "tpot_p50_ms": 66.32324900760649, + "tpot_p90_ms": 66.3246446898248, + "tpot_p95_ms": 66.3246446898248, + "ttft_mean_ms": 355.00684596404665, + "ttft_p50_ms": 355.16695480338, + "ttft_p90_ms": 368.8582878708644, + "ttft_p95_ms": 370.503089520021 + } + } + }, + "fixed-po": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.05873813644442971, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.016760786592592503, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + }, + "ttft_mean_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.058746722254088946, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + }, + "ttft_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.016744441542810407, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 345.40159726161653, + "e2e_p90_ms": 346.7378600034863, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 345.35322551680514, + "ttft_p90_ms": 346.6896569589153 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 345.8011649264437, + "e2e_p90_ms": 347.9283060878515, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 345.75379653310387, + "ttft_p90_ms": 347.88418107200414 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 326.2389304512842, + "e2e_p90_ms": 341.0220619989559, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 326.19059710668336, + "ttft_p90_ms": 340.98013502079993 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 326.89427194042366, + "e2e_p90_ms": 341.91650594584644, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-po/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 326.846390089937, + "ttft_p90_ms": 341.87235799618065 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 313.84871569626137, + "e2e_p50_ms": 313.848715696261, + "e2e_p90_ms": 313.8487156962668, + "e2e_p95_ms": 313.8487156962668, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 313.84871569626137, + "ttft_p50_ms": 313.848715696261, + "ttft_p90_ms": 313.8487156962668, + "ttft_p95_ms": 313.8487156962668 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 313.84871569626137, + "e2e_p50_ms": 313.848715696261, + "e2e_p90_ms": 313.8487156962668, + "e2e_p95_ms": 313.8487156962668, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 313.84871569626137, + "ttft_p50_ms": 313.848715696261, + "ttft_p90_ms": 313.8487156962668, + "ttft_p95_ms": 313.8487156962668 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 334.2963928223074, + "e2e_p50_ms": 334.2963928222744, + "e2e_p90_ms": 334.2963928224325, + "e2e_p95_ms": 334.2963928224325, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 334.2963928223074, + "ttft_p50_ms": 334.2963928222744, + "ttft_p90_ms": 334.2963928224325, + "ttft_p95_ms": 334.2963928224325 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 334.2963928223074, + "e2e_p50_ms": 334.2963928222744, + "e2e_p90_ms": 334.2963928224325, + "e2e_p95_ms": 334.2963928224325, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 334.2963928223074, + "ttft_p50_ms": 334.2963928222744, + "ttft_p90_ms": 334.2963928224325, + "ttft_p95_ms": 334.2963928224325 + } + } + }, + "trace-pd": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.8333333333333334, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.006154214824712234, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.062164651568153984, + "sim_winner": "tp8_ep8_mns128", + "winner_match": false + }, + "tpot_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "winner_match": true + }, + "tpot_p90_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "winner_match": true + }, + "ttft_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + }, + "ttft_p90_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.6666666666666666, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ] + ], + "selected_real_regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "winner_match": true + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 203026.22048668287, + "e2e_p90_ms": 344183.7428959552, + "request_samples": 387, + "tpot_mean_ms": 58.09653520572589, + "tpot_p90_ms": 75.82137218925735, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 26487.547554662306, + "ttft_p90_ms": 93044.83354603872 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 198593.25371425177, + "e2e_p90_ms": 332386.17597706616, + "request_samples": 387, + "tpot_mean_ms": 53.60856802543236, + "tpot_p90_ms": 64.87020396877685, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 31557.98602907994, + "ttft_p90_ms": 112666.82129900437 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 182457.35910624202, + "e2e_p90_ms": 318000.89644105174, + "request_samples": 387, + "tpot_mean_ms": 61.88514020253078, + "tpot_p90_ms": 78.6175951982538, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 1141.539354895564, + "ttft_p90_ms": 2616.6939180111513 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 181341.34550937495, + "e2e_p90_ms": 299389.4552709535, + "request_samples": 387, + "tpot_mean_ms": 45.89371812653489, + "tpot_p90_ms": 51.37046630467056, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-pd/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 37215.26084531421, + "ttft_p90_ms": 132333.42359995004 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 385157.8895230749, + "e2e_p50_ms": 367024.8243163692, + "e2e_p90_ms": 673951.1520207045, + "e2e_p95_ms": 785718.9717121953, + "tpot_mean_ms": 100.38179934319204, + "tpot_p50_ms": 100.42433178975269, + "tpot_p90_ms": 113.67517808832463, + "tpot_p95_ms": 121.63558651348922, + "ttft_mean_ms": 59067.296381594686, + "ttft_p50_ms": 908.4160127742393, + "ttft_p90_ms": 200789.2407497713, + "ttft_p95_ms": 289881.2920798696 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 380604.1804371099, + "e2e_p50_ms": 378158.20614125655, + "e2e_p90_ms": 678448.1689084907, + "e2e_p95_ms": 763969.1713963022, + "tpot_mean_ms": 93.54579486627527, + "tpot_p50_ms": 92.86650455014843, + "tpot_p90_ms": 102.66261969117096, + "tpot_p95_ms": 112.87824516729198, + "ttft_mean_ms": 72259.33174260205, + "ttft_p50_ms": 2897.238841988653, + "ttft_p90_ms": 265395.14114254655, + "ttft_p95_ms": 273163.7753733101 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 174939.1805624549, + "e2e_p50_ms": 166723.75338099696, + "e2e_p90_ms": 317439.7347771481, + "e2e_p95_ms": 371471.8509246631, + "tpot_mean_ms": 58.37204729277776, + "tpot_p50_ms": 54.29394782230334, + "tpot_p90_ms": 75.91440592454555, + "tpot_p95_ms": 84.58610544605006, + "ttft_mean_ms": 945.9090659083846, + "ttft_p50_ms": 669.9533543429972, + "ttft_p90_ms": 2348.607298432925, + "ttft_p95_ms": 2781.46390848989 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 208352.4497977196, + "e2e_p50_ms": 207573.22184026084, + "e2e_p90_ms": 353236.8601573669, + "e2e_p95_ms": 402705.2991150841, + "tpot_mean_ms": 52.06723645713691, + "tpot_p50_ms": 51.64653531173072, + "tpot_p90_ms": 60.374786839964116, + "tpot_p95_ms": 62.94158800335912, + "ttft_mean_ms": 43679.663681651284, + "ttft_p50_ms": 2772.0384805371, + "ttft_p90_ms": 151027.16878398336, + "ttft_p95_ms": 165014.86227423933 + } + } + }, + "trace-po": { + "comparison": { + "e2e_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ], + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.07037121566091509, + "sim_winner": "tp4_ep1_mns64", + "winner_match": false + }, + "e2e_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.21167227304868486, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + }, + "ttft_mean_ms": { + "informative_pairs": 6, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns128", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ], + [ + "tp8_ep8_mns64", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.07039370625209918, + "sim_winner": "tp4_ep1_mns64", + "winner_match": false + }, + "ttft_p90_ms": { + "informative_pairs": 4, + "pair_direction_agreement": 0.0, + "real_winner": "tp8_ep8_mns64", + "reversals": [ + [ + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns64" + ], + [ + "tp4_ep1_mns128", + "tp8_ep8_mns128" + ] + ], + "selected_real_regret": 0.2117895828808376, + "sim_winner": "tp4_ep1_mns128", + "winner_match": false + } + }, + "real": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 1083.6389664896267, + "e2e_p90_ms": 3156.966591021046, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 1083.561832460368, + "ttft_p90_ms": 3156.9307829486206 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 1102.0341126990652, + "e2e_p90_ms": 3162.989347940311, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp4_ep1_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 1101.9558890756384, + "ttft_p90_ms": 3162.9534389358014 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 1029.581229927413, + "e2e_p90_ms": 2612.0267439400777, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns128/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns128/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns128/trial3/results/result.json" + ], + "ttft_mean_ms": 1029.4865175674956, + "ttft_p90_ms": 2611.9744409807026 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 1043.7361864025345, + "e2e_p90_ms": 2605.4624350508675, + "request_samples": 387, + "tpot_mean_ms": null, + "tpot_p90_ms": null, + "trials": [ + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns64/trial1/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns64/trial2/results/result.json", + "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/trace-po/real/tp8_ep8_mns64/trial3/results/result.json" + ], + "ttft_mean_ms": 1043.6429704051557, + "ttft_p90_ms": 2605.180658050813 + } + }, + "sim": { + "tp4_ep1_mns128": { + "e2e_mean_ms": 691.7873605232029, + "e2e_p50_ms": 211.81272326305088, + "e2e_p90_ms": 2068.417017674378, + "e2e_p95_ms": 2843.8890088954663, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 691.7873605232029, + "ttft_p50_ms": 211.81272326305088, + "ttft_p90_ms": 2068.417017674378, + "ttft_p95_ms": 2843.8890088954663 + }, + "tp4_ep1_mns64": { + "e2e_mean_ms": 691.5722223601863, + "e2e_p50_ms": 210.89579132517144, + "e2e_p90_ms": 2068.417017674378, + "e2e_p95_ms": 2843.8890088954663, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 691.5722223601863, + "ttft_p50_ms": 210.89579132517144, + "ttft_p90_ms": 2068.417017674378, + "ttft_p95_ms": 2843.8890088954663 + }, + "tp8_ep8_mns128": { + "e2e_mean_ms": 928.7998403823643, + "e2e_p50_ms": 593.0899264387222, + "e2e_p90_ms": 2341.4108333476474, + "e2e_p95_ms": 2898.493085937801, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 928.7998403823643, + "ttft_p50_ms": 593.0899264387222, + "ttft_p90_ms": 2341.4108333476474, + "ttft_p95_ms": 2898.493085937801 + }, + "tp8_ep8_mns64": { + "e2e_mean_ms": 928.7182564423873, + "e2e_p50_ms": 593.0899264387222, + "e2e_p90_ms": 2341.4108333476474, + "e2e_p95_ms": 2898.493085937801, + "tpot_mean_ms": null, + "tpot_p50_ms": null, + "tpot_p90_ms": null, + "tpot_p95_ms": null, + "ttft_mean_ms": 928.7182564423873, + "ttft_p50_ms": 593.0899264387222, + "ttft_p90_ms": 2341.4108333476474, + "ttft_p95_ms": 2898.493085937801 + } + } + } + }, + "schema": "qwen235-v020-simulator-real-comparison-v1" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.md new file mode 100644 index 0000000..1e05500 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-fourcase-a0/comparison.md @@ -0,0 +1,24 @@ +# Qwen235 vLLM 0.20 Frontier vs real + +| case | metric | Frontier winner | real winner | match | regret | pair agreement | +|---|---|---|---|---:|---:|---:| +| fixed-pd | ttft_mean_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | no | 4.2% | 0.0% | +| fixed-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 0.2% | 100.0% | +| fixed-pd | tpot_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 33.0% | 0.0% | +| fixed-pd | tpot_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 37.2% | 0.0% | +| fixed-pd | e2e_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 30.7% | 0.0% | +| fixed-pd | e2e_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | no | 34.6% | 0.0% | +| fixed-po | ttft_mean_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | no | 5.9% | 0.0% | +| fixed-po | ttft_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | no | 1.7% | 0.0% | +| fixed-po | e2e_mean_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | no | 5.9% | 0.0% | +| fixed-po | e2e_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | no | 1.7% | 0.0% | +| trace-pd | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 66.7% | +| trace-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | yes | 0.0% | 66.7% | +| trace-pd | tpot_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | yes | 0.0% | 66.7% | +| trace-pd | tpot_p90_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | yes | 0.0% | 66.7% | +| trace-pd | e2e_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 0.6% | 83.3% | +| trace-pd | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | no | 6.2% | 66.7% | +| trace-po | ttft_mean_ms | tp4_ep1_mns64 | tp8_ep8_mns128 | no | 7.0% | 0.0% | +| trace-po | ttft_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns64 | no | 21.2% | 0.0% | +| trace-po | e2e_mean_ms | tp4_ep1_mns64 | tp8_ep8_mns128 | no | 7.0% | 0.0% | +| trace-po | e2e_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns64 | no | 21.2% | 0.0% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.json new file mode 100644 index 0000000..0a6061f --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.json @@ -0,0 +1,1587 @@ +{ + "contrast_decomposition": { + "exact_state_matched_tp8_minus_tp4_ms": 10.902788634037428, + "residual_vs_exact_iteration_ms": 1.7850640558340523, + "residual_vs_frozen_real_tpot_ms": 3.9527886340374287, + "simulator_internal_tp8_minus_tp4_ms": -20.06625468177714, + "state_composition_shift_ms": 30.969043315814567 + }, + "exact_state_matched": { + "configs": { + "tp4_ep1_mns64": { + "components_ms": { + "attention": 7.861372580683772, + "dense_mlp_compute": 0.20457670875208997, + "ep_communication": 0.0, + "moe_compute": 11.818199308522054, + "moe_routing": 1.3660523028556315, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 34.25746674314369, + "tp_dp_communication": 13.007265841334672 + }, + "coverage": 1.0, + "supported_decode_tokens": 32895, + "total_decode_tokens": 32895, + "unsupported": {} + }, + "tp8_ep8_mns64": { + "components_ms": { + "attention": 5.730952171784399, + "dense_mlp_compute": 0.17382455581232167, + "ep_communication": 6.535508227248577, + "moe_compute": 9.840752983018692, + "moe_routing": 1.5044582710663996, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 45.160255377181116, + "tp_dp_communication": 6.535508227248577 + }, + "coverage": 1.0, + "supported_decode_tokens": 32895, + "total_decode_tokens": 32895, + "unsupported": {} + } + }, + "method": "decode-token-weighted exact (context_tokens, generation_requests) composition from vLLM iteration details; no interpolation", + "tp8_minus_tp4_ms": { + "attention": -2.130420408899373, + "dense_mlp_compute": -0.030752152939768296, + "ep_communication": 6.535508227248577, + "moe_compute": -1.9774463255033616, + "moe_routing": 0.13840596821076812, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 10.902788634037428, + "tp_dp_communication": -6.471757614086094 + } + }, + "proxy_matched": { + "configs": { + "tp4_ep1_mns64": { + "components_ms": { + "attention": 6.303822560333333, + "dense_mlp_compute": 0.17883562666666666, + "ep_communication": 0.0, + "moe_compute": 26.449277218333332, + "moe_routing": 1.2571787503333332, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 46.414892970000004, + "tp_dp_communication": 12.225778813333333 + }, + "coverage": 1.0, + "supported_samples": 45, + "total_samples": 45, + "unsupported": {} + }, + "tp8_ep8_mns64": { + "components_ms": { + "attention": 6.063134093052075, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777717, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.86318467071363, + "tp_dp_communication": 6.824791048020123 + }, + "coverage": 1.0, + "supported_samples": 21, + "total_samples": 21, + "unsupported": {} + } + }, + "method": "exact batch-size lookup; each simulator config is reweighted to its own frozen-real steady Running histogram; no interpolation", + "tp8_minus_tp4_ms": { + "attention": -0.2406884672812577, + "dense_mlp_compute": 0.0017646933333340664, + "ep_communication": 6.824791048020123, + "moe_compute": -16.058086515555615, + "moe_routing": 0.31092423394602053, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -8.551708299286375, + "tp_dp_communication": -5.40098776531321 + } + }, + "real": { + "tp4_ep1_mns64": { + "aggregate": { + "generation_tokens_per_s": { + "cv": 0.01219623132338527, + "distinct_n": 32, + "max": 217.3, + "mean": 204.7488888888889, + "min": 197.1, + "n": 45 + }, + "kv_percent": { + "cv": 0.09908502666308305, + "distinct_n": 2, + "max": 5.6, + "mean": 5.233333333333333, + "min": 4.5, + "n": 45 + }, + "running": { + "cv": 0.10101525445522107, + "distinct_n": 2, + "max": 5.0, + "mean": 4.666666666666667, + "min": 4.0, + "n": 45 + }, + "running_histogram": { + "4": 15, + "5": 30 + }, + "samples": 45, + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 45 + } + }, + "proxy_only": true, + "steady_rule": "prompt throughput >= 95% of 3276.8 tokens/s", + "trials": [ + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.01635665678820842, + "distinct_n": 13, + "max": 217.3, + "mean": 205.58666666666667, + "min": 202.4, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.6, + "mean": 5.6, + "min": 5.6, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial1/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.0, + "mean": 5.0, + "min": 5.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial1", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + }, + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.01101205870299425, + "distinct_n": 11, + "max": 206.3, + "mean": 204.18666666666667, + "min": 197.1, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.6, + "mean": 5.6, + "min": 5.6, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial2/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.0, + "mean": 5.0, + "min": 5.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial2", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + }, + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.005467774668645034, + "distinct_n": 14, + "max": 206.0, + "mean": 204.47333333333333, + "min": 202.0, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 4.5, + "mean": 4.5, + "min": 4.5, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial3/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 4.0, + "mean": 4.0, + "min": 4.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial3", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + } + ] + }, + "tp8_ep8_mns64": { + "aggregate": { + "generation_tokens_per_s": { + "cv": 0.01855015540813005, + "distinct_n": 21, + "max": 415.7, + "mean": 406.5380952380952, + "min": 390.8, + "n": 21 + }, + "kv_percent": { + "cv": 0.03973151445031385, + "distinct_n": 3, + "max": 5.6, + "mean": 5.295238095238095, + "min": 4.8, + "n": 21 + }, + "running": { + "cv": 0.04297805843263526, + "distinct_n": 3, + "max": 13.0, + "mean": 12.238095238095237, + "min": 11.0, + "n": 21 + }, + "running_histogram": { + "11": 1, + "12": 14, + "13": 6 + }, + "samples": 21, + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 21 + } + }, + "proxy_only": true, + "steady_rule": "prompt throughput >= 95% of 6553.6 tokens/s", + "trials": [ + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.018873398222858283, + "distinct_n": 7, + "max": 415.7, + "mean": 406.87142857142857, + "min": 392.3, + "n": 7 + }, + "kv_percent": { + "cv": 0.03400298559320833, + "distinct_n": 2, + "max": 5.6, + "mean": 5.314285714285715, + "min": 5.2, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial1/logs/server.log", + "running": { + "cv": 0.036770670467074176, + "distinct_n": 2, + "max": 13.0, + "mean": 12.285714285714286, + "min": 12.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial1", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + }, + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.01869328742146201, + "distinct_n": 7, + "max": 412.9, + "mean": 406.2857142857143, + "min": 390.8, + "n": 7 + }, + "kv_percent": { + "cv": 0.04861017342390845, + "distinct_n": 3, + "max": 5.6, + "mean": 5.257142857142857, + "min": 4.8, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial2/logs/server.log", + "running": { + "cv": 0.052613364176465637, + "distinct_n": 3, + "max": 13.0, + "mean": 12.142857142857142, + "min": 11.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial2", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + }, + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.018043345382112573, + "distinct_n": 7, + "max": 414.9, + "mean": 406.45714285714286, + "min": 393.0, + "n": 7 + }, + "kv_percent": { + "cv": 0.03400298559320833, + "distinct_n": 2, + "max": 5.6, + "mean": 5.314285714285715, + "min": 5.2, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial3/logs/server.log", + "running": { + "cv": 0.036770670467074176, + "distinct_n": 2, + "max": 13.0, + "mean": 12.285714285714286, + "min": 12.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial3", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + } + ] + } + }, + "real_iteration_state": { + "tp4_ep1_mns64": { + "decode_batch_size": { + "cv": 0.13029119433004072, + "distinct_n": 5, + "max": 5.0, + "mean": 3.8896771904930825, + "min": 1.0, + "n": 8457 + }, + "decode_bearing_rows": 8457, + "decode_token_weighted_iteration_elapsed_ms": 18.47097461620307, + "decode_token_weighted_joint_state_histogram": { + "0:1": 149, + "0:2": 280, + "0:3": 621, + "0:4": 31012, + "0:5": 400, + "4096:1": 1, + "4096:2": 2, + "4096:3": 222, + "4096:4": 208 + }, + "measured_rows": 8460, + "mixed_iteration_elapsed_ms": { + "cv": 0.015940570375581706, + "distinct_n": 114, + "max": 350.16, + "mean": 337.35875, + "min": 331.36, + "n": 128 + }, + "mixed_prefill_decode_rows": 128, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-fixed-pd-state-diagnosis-20260719-r1/iteration-real/tp4_ep1_mns64/logs/server.log", + "pure_decode_batch_histogram": { + "1": 149, + "2": 140, + "3": 207, + "4": 7753, + "5": 80 + }, + "pure_decode_iteration_elapsed_ms": { + "cv": 0.0683725733639485, + "distinct_n": 353, + "max": 63.66, + "mean": 14.141689278424781, + "min": 0.11, + "n": 8329 + }, + "pure_decode_rows": 8329 + }, + "tp8_ep8_mns64": { + "decode_batch_size": { + "cv": 0.24310653962915885, + "distinct_n": 13, + "max": 13.0, + "mean": 10.921314741035857, + "min": 1.0, + "n": 3012 + }, + "decode_bearing_rows": 3012, + "decode_token_weighted_iteration_elapsed_ms": 27.588699194406445, + "decode_token_weighted_joint_state_histogram": { + "0:1": 49, + "0:10": 700, + "0:11": 2431, + "0:12": 24312, + "0:13": 2067, + "0:2": 96, + "0:3": 138, + "0:4": 196, + "0:5": 215, + "0:6": 270, + "0:7": 315, + "0:8": 352, + "0:9": 351, + "4096:1": 1, + "4096:10": 40, + "4096:11": 682, + "4096:12": 636, + "4096:2": 2, + "4096:3": 3, + "4096:4": 4, + "4096:5": 5, + "4096:6": 6, + "4096:7": 7, + "4096:8": 8, + "4096:9": 9 + }, + "measured_rows": 3015, + "mixed_iteration_elapsed_ms": { + "cv": 0.04096511316969508, + "distinct_n": 126, + "max": 345.82, + "mean": 319.430703125, + "min": 294.13, + "n": 128 + }, + "mixed_prefill_decode_rows": 128, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-fixed-pd-state-diagnosis-20260719-r1/iteration-real/tp8_ep8_mns64/logs/server.log", + "pure_decode_batch_histogram": { + "1": 49, + "10": 70, + "11": 221, + "12": 2026, + "13": 159, + "2": 48, + "3": 46, + "4": 49, + "5": 43, + "6": 45, + "7": 45, + "8": 44, + "9": 39 + }, + "pure_decode_iteration_elapsed_ms": { + "cv": 0.08468104731049882, + "distinct_n": 347, + "max": 20.05, + "mean": 14.330596393897366, + "min": 9.46, + "n": 2884 + }, + "pure_decode_rows": 2884 + } + }, + "reference": { + "exact_iteration_tp8_minus_tp4_ms": 9.117724578203376, + "observed_real_tp8_minus_tp4_ms": 6.949999999999999, + "real_tpot_ms": { + "tp4_ep1_mns64": 21.0442, + "tp8_ep8_mns64": 27.9942 + } + }, + "same_batch_contrasts": { + "1": { + "tp4_n": 54, + "tp8_minus_tp4_ms": { + "attention": -0.8935417788173714, + "dense_mlp_compute": 5.551115123125783e-17, + "ep_communication": 7.6409967723488785, + "moe_compute": -1.3674890128222263, + "moe_routing": 0.24700169495130986, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -8.382111054979667, + "tp_dp_communication": -6.785968403651121 + }, + "tp8_n": 34 + }, + "10": { + "tp4_n": 38, + "tp8_minus_tp4_ms": { + "attention": -0.9062451258095203, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.288943843339915, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "11": { + "tp4_n": 42, + "tp8_minus_tp4_ms": { + "attention": -0.90756947260952, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.2707598272793539, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.29026819009679, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "12": { + "tp4_n": 46, + "tp8_minus_tp4_ms": { + "attention": -0.90756947260952, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.780182756222285, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.290268190109693, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 21 + }, + "13": { + "tp4_n": 46, + "tp8_minus_tp4_ms": { + "attention": -0.9271714387939403, + "dense_mlp_compute": 7.771561172376096e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622228, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.309870155730238, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "14": { + "tp4_n": 47, + "tp8_minus_tp4_ms": { + "attention": -0.9273699663939379, + "dense_mlp_compute": 6.938893903907228e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.310068683979324, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 21 + }, + "15": { + "tp4_n": 663, + "tp8_minus_tp4_ms": { + "attention": -0.9280176641939368, + "dense_mlp_compute": 6.938893903907228e-16, + "ep_communication": 6.824791048020124, + "moe_compute": -30.78018275622229, + "moe_routing": 0.2707598272793539, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.310716381302065, + "tp_dp_communication": -4.708641311979875 + }, + "tp8_n": 21 + }, + "16": { + "tp4_n": 1053, + "tp8_minus_tp4_ms": { + "attention": -0.9280176641939377, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.310716381309007, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "2": { + "tp4_n": 52, + "tp8_minus_tp4_ms": { + "attention": -0.893056937985337, + "dense_mlp_compute": 5.551115123125783e-17, + "ep_communication": 7.170214735418557, + "moe_compute": -2.487079396822226, + "moe_routing": 0.23761673495131297, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -7.529038359797266, + "tp_dp_communication": -6.276494110581443 + }, + "tp8_n": 32 + }, + "3": { + "tp4_n": 47, + "tp8_minus_tp4_ms": { + "attention": -0.8994740207853011, + "dense_mlp_compute": 8.326672684688674e-17, + "ep_communication": 6.661276281625032, + "moe_compute": -4.971655204025423, + "moe_routing": 0.23007132819364218, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -9.72273303992905, + "tp_dp_communication": -6.0593006383749675 + }, + "tp8_n": 31 + }, + "4": { + "tp4_n": 48, + "tp8_minus_tp4_ms": { + "attention": -0.9032519198967934, + "dense_mlp_compute": 5.551115123125783e-17, + "ep_communication": 6.661276281625032, + "moe_compute": -4.971655204025423, + "moe_routing": 0.23007132819364196, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -9.726510939439532, + "tp_dp_communication": -6.0593006383749675 + }, + "tp8_n": 30 + }, + "5": { + "tp4_n": 34, + "tp8_minus_tp4_ms": { + "attention": -0.8975988783634543, + "dense_mlp_compute": 7.494005416219807e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.90819860140641, + "moe_routing": 0.2783929890825345, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.211543726727538, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 27 + }, + "6": { + "tp4_n": 33, + "tp8_minus_tp4_ms": { + "attention": -0.8977163413634548, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.90819860140641, + "moe_routing": 0.2783929890825343, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.211661189448645, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 26 + }, + "7": { + "tp4_n": 34, + "tp8_minus_tp4_ms": { + "attention": -0.9209473308539557, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.908198601406404, + "moe_routing": 0.2783929890825345, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.23489217903426, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 26 + }, + "8": { + "tp4_n": 33, + "tp8_minus_tp4_ms": { + "attention": -0.9209473308539557, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.90819860140641, + "moe_routing": 0.27839298908253474, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.23489217902994, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 27 + }, + "9": { + "tp4_n": 32, + "tp8_minus_tp4_ms": { + "attention": -0.9096465718095201, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.292345289360462, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 21 + } + }, + "schema": "qwen235-fixed-pd-state-diagnosis-v1", + "scope": { + "graph_observability": "Frontier state outputs have no direct graph bucket/padding/launch-overhead field; graph effects remain folded into predictors", + "op_trace_accounting": "For TP8 shared-domain sync, total is ledger stage_end-start (critical path); op categories are serialized work estimates and are not additive because overlap and lane-summed wait diagnostics are represented separately", + "real_proxy_limitation": "vLLM 10-second Running is active requests, not per-iteration decode batch; context lengths and graph buckets are unavailable in frozen logs", + "workload": "Fixed-PD 4096->256, 0.2 req/s/GPU, MNS64" + }, + "simulator": { + "tp4_ep1_mns64": { + "batch_support": { + "1": { + "components_ms": { + "attention": 5.918822475999999, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 4.277032336, + "moe_routing": 1.234618249, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.035006493, + "tp_dp_communication": 14.426965176 + }, + "n": 54 + }, + "10": { + "components_ms": { + "attention": 6.795322718, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.978072013, + "tp_dp_communication": 11.53343236 + }, + "n": 38 + }, + "11": { + "components_ms": { + "attention": 6.8427973799999995, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.025546675, + "tp_dp_communication": 11.53343236 + }, + "n": 42 + }, + "12": { + "components_ms": { + "attention": 6.84279738, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.02554667500001, + "tp_dp_communication": 11.53343236 + }, + "n": 46 + }, + "13": { + "components_ms": { + "attention": 7.310070996000001, + "dense_mlp_compute": 0.18060031999999998, + "ep_communication": 0.0, + "moe_compute": 41.171373458999994, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.492820290999994, + "tp_dp_communication": 11.53343236 + }, + "n": 46 + }, + "14": { + "components_ms": { + "attention": 7.316185658, + "dense_mlp_compute": 0.18060032000000004, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.49893495300001, + "tp_dp_communication": 11.53343236 + }, + "n": 47 + }, + "15": { + "components_ms": { + "attention": 7.332662654999999, + "dense_mlp_compute": 0.18060032000000004, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.51541195, + "tp_dp_communication": 11.533432359999999 + }, + "n": 663 + }, + "16": { + "components_ms": { + "attention": 7.332662655, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.51541195, + "tp_dp_communication": 11.53343236 + }, + "n": 1053 + }, + "2": { + "components_ms": { + "attention": 6.048001424230768, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 5.39662272, + "moe_routing": 1.237987209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.30688845623077, + "tp_dp_communication": 13.446708846 + }, + "n": 52 + }, + "3": { + "components_ms": { + "attention": 6.09964707180851, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 9.978847425, + "moe_routing": 1.2434858329999998, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 30.22012550680851, + "tp_dp_communication": 12.72057692 + }, + "n": 47 + }, + "4": { + "components_ms": { + "attention": 6.285367077, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 9.978847425, + "moe_routing": 1.243485833, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 30.405845512, + "tp_dp_communication": 12.72057692 + }, + "n": 48 + }, + "5": { + "components_ms": { + "attention": 6.313050302, + "dense_mlp_compute": 0.17946931199999996, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.419416699, + "tp_dp_communication": 11.97837976 + }, + "n": 34 + }, + "6": { + "components_ms": { + "attention": 6.356479957, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.462846354, + "tp_dp_communication": 11.97837976 + }, + "n": 33 + }, + "7": { + "components_ms": { + "attention": 6.734075413, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.68449211499999, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.84044181, + "tp_dp_communication": 11.97837976 + }, + "n": 34 + }, + "8": { + "components_ms": { + "attention": 6.734075413, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.84044181, + "tp_dp_communication": 11.97837976 + }, + "n": 33 + }, + "9": { + "components_ms": { + "attention": 6.782511044, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.965260339, + "tp_dp_communication": 11.53343236 + }, + "n": 32 + } + }, + "component_source": "stage_batch_ledger", + "decode_batch_size": { + "cv": 0.3076467178753811, + "distinct_n": 16, + "max": 16.0, + "mean": 13.537037037037036, + "min": 1.0, + "n": 2430 + }, + "decode_bearing_rows": 2430, + "decode_token_weighted_all_step_components_ms": { + "attention": 13.842547047292292, + "dense_mlp_compute": 0.2927251518073871, + "ep_communication": 0.0, + "moe_compute": 45.47878637854458, + "moe_routing": 1.8023597240381213, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 74.2229273813438, + "tp_dp_communication": 12.806509080469617 + }, + "decode_token_weighted_mixed_step_share": 0.05481076151390789, + "mixed_prefill_decode_rows": 128, + "pure_decode_rows": 2302, + "pure_decode_token_weighted_components_ms": { + "attention": 7.263972797140871, + "dense_mlp_compute": 0.18052079084832112, + "ep_communication": 0.0, + "moe_compute": 40.472043520877655, + "moe_routing": 1.2955265717923583, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.78208599545992, + "tp_dp_communication": 11.57002231571491 + }, + "scorer_equivalence": { + "base_metrics": { + "e2e_mean_ms": 19261.684938205322, + "e2e_p50_ms": 19681.421068277567, + "e2e_p90_ms": 19712.678973231064, + "e2e_p95_ms": 19717.18006692948, + "slos": { + "tpot_100ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_150ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_180ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_50ms": { + "feasible": false, + "pass_rate": 0.0, + "passed": 0 + } + }, + "tpot_mean_ms": 74.22292738142716, + "tpot_p50_ms": 75.8976524911963, + "tpot_p90_ms": 75.8976524912086, + "tpot_p95_ms": 75.89765249120967, + "ttft_mean_ms": 334.8384559413977, + "ttft_p50_ms": 334.75193988430976, + "ttft_p90_ms": 359.7779859328796, + "ttft_p95_ms": 363.2786816744229 + }, + "request_metrics_byte_identical": true, + "request_metrics_sha256": "01ed41e9babf2eb71286e93d8f4986dda9820f92212c975ed9411a95a5f8758f" + }, + "stage_rows": 2431, + "trace_validation": null + }, + "tp8_ep8_mns64": { + "batch_support": { + "1": { + "components_ms": { + "attention": 5.025280697182628, + "dense_mlp_compute": 0.17756825600000006, + "ep_communication": 7.6409967723488785, + "moe_compute": 2.909543323177774, + "moe_routing": 1.4816199439513098, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 17.652895438020334, + "tp_dp_communication": 7.6409967723488785 + }, + "n": 34 + }, + "10": { + "components_ms": { + "attention": 5.88907759219048, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.68912816966009, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "11": { + "components_ms": { + "attention": 5.9352279073904795, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.568102984279354, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.73527848490321, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "12": { + "components_ms": { + "attention": 5.93522790739048, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777717, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.735278484890316, + "tp_dp_communication": 6.824791048020123 + }, + "n": 21 + }, + "13": { + "components_ms": { + "attention": 6.382899557206061, + "dense_mlp_compute": 0.18060032000000076, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.182950135269756, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "14": { + "components_ms": { + "attention": 6.388815691606062, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.188866269020686, + "tp_dp_communication": 6.824791048020123 + }, + "n": 21 + }, + "15": { + "components_ms": { + "attention": 6.404644990806062, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020124, + "moe_compute": 10.391190702777713, + "moe_routing": 1.568102984279354, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.204695568697936, + "tp_dp_communication": 6.824791048020124 + }, + "n": 21 + }, + "16": { + "components_ms": { + "attention": 6.404644990806062, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.204695568690994, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "17": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.63356500064447, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.2554552675483, + "tp_dp_communication": 6.763788700699805 + }, + "n": 31 + }, + "18": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644474, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.25545526754183, + "tp_dp_communication": 6.763788700699805 + }, + "n": 30 + }, + "19": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644472, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.25545526755436, + "tp_dp_communication": 6.763788700699805 + }, + "n": 32 + }, + "2": { + "components_ms": { + "attention": 5.154944486245431, + "dense_mlp_compute": 0.17756825600000006, + "ep_communication": 7.170214735418557, + "moe_compute": 2.909543323177774, + "moe_routing": 1.475603943951313, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 18.777850096433504, + "tp_dp_communication": 7.170214735418557 + }, + "n": 32 + }, + "20": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699804, + "moe_compute": 14.633565000644472, + "moe_routing": 1.6479551064984042, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.25545526756006, + "tp_dp_communication": 6.763788700699804 + }, + "n": 33 + }, + "21": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.18267583999999895, + "ep_communication": 6.763788700699806, + "moe_compute": 14.633565000644474, + "moe_routing": 1.6479551064984037, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.58688465210873, + "tp_dp_communication": 6.763788700699806 + }, + "n": 37 + }, + "22": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644472, + "moe_routing": 1.6479551064984042, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.586884652057584, + "tp_dp_communication": 6.763788700699805 + }, + "n": 51 + }, + "23": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.182675839999999, + "ep_communication": 6.763788700699805, + "moe_compute": 14.63356500064447, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.58688465207786, + "tp_dp_communication": 6.763788700699805 + }, + "n": 906 + }, + "24": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.18267583999999895, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644472, + "moe_routing": 1.6479551064984037, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.58688465207813, + "tp_dp_communication": 6.763788700699805 + }, + "n": 84 + }, + "3": { + "components_ms": { + "attention": 5.200173051023209, + "dense_mlp_compute": 0.1775682560000001, + "ep_communication": 6.661276281625032, + "moe_compute": 5.007192220974576, + "moe_routing": 1.473557161193642, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 20.49739246687946, + "tp_dp_communication": 6.661276281625032 + }, + "n": 31 + }, + "4": { + "components_ms": { + "attention": 5.382115157103207, + "dense_mlp_compute": 0.17756825600000006, + "ep_communication": 6.661276281625032, + "moe_compute": 5.007192220974576, + "moe_routing": 1.473557161193642, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 20.679334572560467, + "tp_dp_communication": 6.661276281625032 + }, + "n": 30 + }, + "5": { + "components_ms": { + "attention": 5.415451423636545, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825344, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.207872972272465, + "tp_dp_communication": 6.619871115982532 + }, + "n": 27 + }, + "6": { + "components_ms": { + "attention": 5.4587636156365456, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825342, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.251185164551355, + "tp_dp_communication": 6.619871115982532 + }, + "n": 26 + }, + "7": { + "components_ms": { + "attention": 5.8131280821460445, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825344, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.60554963096574, + "tp_dp_communication": 6.619871115982532 + }, + "n": 26 + }, + "8": { + "components_ms": { + "attention": 5.8131280821460445, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825347, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.60554963097006, + "tp_dp_communication": 6.619871115982532 + }, + "n": 27 + }, + "9": { + "components_ms": { + "attention": 5.8728644721904795, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.672915049639535, + "tp_dp_communication": 6.824791048020123 + }, + "n": 21 + } + }, + "component_source": "op_trace_execution_time_override", + "decode_batch_size": { + "cv": 0.3602756967919564, + "distinct_n": 24, + "max": 24.0, + "mean": 18.93782383419689, + "min": 1.0, + "n": 1737 + }, + "decode_bearing_rows": 1737, + "decode_token_weighted_all_step_components_ms": { + "attention": 6.38060442207261, + "dense_mlp_compute": 0.16958377884622666, + "ep_communication": 6.235402017662346, + "moe_compute": 13.024343946852467, + "moe_routing": 1.5161854734738416, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.156672699566656, + "tp_dp_communication": 6.235402017662346 + }, + "decode_token_weighted_mixed_step_share": 0.08077215382276942, + "mixed_prefill_decode_rows": 128, + "pure_decode_rows": 1609, + "pure_decode_token_weighted_components_ms": { + "attention": 6.853695012970485, + "dense_mlp_compute": 0.1824026696707446, + "ep_communication": 6.765971286395407, + "moe_compute": 14.092651702097841, + "moe_routing": 1.638092363428458, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.94606316261678, + "tp_dp_communication": 6.765971286395407 + }, + "scorer_equivalence": { + "base_metrics": { + "e2e_mean_ms": 14056.464119438264, + "e2e_p50_ms": 14650.653983203298, + "e2e_p90_ms": 14674.997135818061, + "e2e_p95_ms": 14677.859760866291, + "slos": { + "tpot_100ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_150ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_180ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_50ms": { + "feasible": false, + "pass_rate": 0.14728682170542637, + "passed": 19 + } + }, + "tpot_mean_ms": 54.15667269956665, + "tpot_p50_ms": 56.52350191837838, + "tpot_p90_ms": 56.52350850045728, + "tpot_p95_ms": 56.523546100039816, + "ttft_mean_ms": 246.51258104876885, + "ttft_p50_ms": 246.7781280760306, + "ttft_p90_ms": 263.0087113349084, + "ttft_p95_ms": 264.77576248352364 + }, + "request_metrics_byte_identical": true, + "request_metrics_sha256": "51a848c4c12eacabbc72a0f6a8b5c1863e8b624b316b7ab55341e3fe5a3a753b" + }, + "stage_rows": 1738, + "trace_validation": { + "diagnostic_wait_ms": { + "cv": 0.3169483933455645, + "distinct_n": 26, + "max": 67.2823542576566, + "mean": 38.03960569005978, + "min": 7.116029381293295, + "n": 1609 + }, + "event_names": { + "attn_decode": 1737, + "attn_kv_cache_save": 1738, + "attn_post_proj": 1738, + "attn_pre_proj": 1738, + "attn_prefill": 129, + "attn_rope": 1738, + "attn_tensor_parallel_allreduce": 1738, + "expert_parallel_allreduce": 1738, + "expert_parallel_allreduce_wait": 1609, + "input_layernorm": 1738, + "moe_gating_linear": 1738, + "moe_gating_routing_topk": 1738, + "moe_grouped_gemm": 1738, + "moe_shuffling": 1738, + "post_attention_layernorm": 1738 + }, + "ledger_batches": 1738, + "serialized_component_sum_over_stage_span": { + "cv": 0.30467075878025907, + "distinct_n": 69, + "max": 1.4091742542979306, + "mean": 0.8931198465670052, + "min": 0.010604399884068217, + "n": 1738 + }, + "trace_batches": 1738, + "trace_path": "/home/admin/cpfs/wjh/aituner/qwen235-fixed-pd-state-diagnosis-20260719-r1/frontier-optrace/tp8_ep8_mns64/frontier_metrics/qwen3_235b_a22b/online_serving/qwen235_fixed_pd_state_tp8_ep8_mns64/op_traces.jsonl" + } + } + }, + "simulator_internal_all_step_tp8_minus_tp4_ms": { + "attention": -7.461942625219683, + "dense_mlp_compute": -0.12314137296116046, + "ep_communication": 6.235402017662346, + "moe_compute": -32.45444243169211, + "moe_routing": -0.2861742505642797, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -20.06625468177714, + "tp_dp_communication": -6.571107062807271 + }, + "status": "PASS", + "verdict": "Exact real state composition flips Frontier to the correct TP4 winner; the ranking error is caused by closed-loop state/composition mismatch, not a conditional stage reversal." +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.md new file mode 100644 index 0000000..70092bd --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-exact.md @@ -0,0 +1,54 @@ +# Qwen235 Fixed-PD state diagnosis + +**Verdict:** Exact real state composition flips Frontier to the correct TP4 winner; the ranking error is caused by closed-loop state/composition mismatch, not a conditional stage reversal. + +| Config | Real Running proxy mean | Sim decode batch mean | Proxy coverage | +|---|---:|---:|---:| +| tp4_ep1_mns64 | 4.667 | 13.537 | 100.0% | +| tp8_ep8_mns64 | 12.238 | 18.938 | 100.0% | + +| Config | Real exact decode batch mean | Real token-weighted iteration ms | Matched simulator ms | Exact coverage | +|---|---:|---:|---:|---:| +| tp4_ep1_mns64 | 3.890 | 18.4710 | 34.2575 | 100.0% | +| tp8_ep8_mns64 | 10.921 | 27.5887 | 45.1603 | 100.0% | + +## Frontier internal component contrast over its own executed composition + +Decode-token-weighted over both pure-decode and mixed prefill/decode steps. + +| Component | TP8 - TP4 (ms/decoded token step) | +|---|---:| +| moe_compute | -32.4544 | +| total | -20.0663 | +| attention | -7.4619 | +| tp_dp_communication | -6.5711 | +| ep_communication | +6.2354 | +| moe_routing | -0.2862 | +| dense_mlp_compute | -0.1231 | +| pipeline_communication | +0.0000 | +| runtime_overhead | +0.0000 | + +## Frontier component contrast at exact real token composition + +Positive means TP8 slower; negative means Frontier gives TP8 an advantage. + +| Component | TP8 - TP4 (ms/step) | +|---|---:| +| total | +10.9028 | +| ep_communication | +6.5355 | +| tp_dp_communication | -6.4718 | +| attention | -2.1304 | +| moe_compute | -1.9774 | +| moe_routing | +0.1384 | +| dense_mlp_compute | -0.0308 | +| pipeline_communication | +0.0000 | +| runtime_overhead | +0.0000 | + +## Interpretation boundary + +- Real observed TPOT contrast: +6.9500 ms/token. +- Real exact-iteration contrast: +9.1177 ms/decode-token-weighted step. +- vLLM 10-second Running is active requests, not per-iteration decode batch; context lengths and graph buckets are unavailable in frozen logs. +- Frontier state outputs have no direct graph bucket/padding/launch-overhead field; graph effects remain folded into predictors. +- For TP8 shared-domain sync, total is ledger stage_end-start (critical path); op categories are serialized work estimates and are not additive because overlap and lane-summed wait diagnostics are represented separately. +- Component deltas identify where Frontier creates its own TP8 advantage; without real per-stage measurements they are not yet root-cause proof. diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.json new file mode 100644 index 0000000..00dc957 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.json @@ -0,0 +1,1405 @@ +{ + "exact_state_matched": null, + "proxy_matched": { + "configs": { + "tp4_ep1_mns64": { + "components_ms": { + "attention": 6.303822560333333, + "dense_mlp_compute": 0.17883562666666666, + "ep_communication": 0.0, + "moe_compute": 26.449277218333332, + "moe_routing": 1.2571787503333332, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 46.414892970000004, + "tp_dp_communication": 12.225778813333333 + }, + "coverage": 1.0, + "supported_samples": 45, + "total_samples": 45, + "unsupported": {} + }, + "tp8_ep8_mns64": { + "components_ms": { + "attention": 6.063134093052075, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777717, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.86318467071363, + "tp_dp_communication": 6.824791048020123 + }, + "coverage": 1.0, + "supported_samples": 21, + "total_samples": 21, + "unsupported": {} + } + }, + "method": "exact batch-size lookup; each simulator config is reweighted to its own frozen-real steady Running histogram; no interpolation", + "tp8_minus_tp4_ms": { + "attention": -0.2406884672812577, + "dense_mlp_compute": 0.0017646933333340664, + "ep_communication": 6.824791048020123, + "moe_compute": -16.058086515555615, + "moe_routing": 0.31092423394602053, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -8.551708299286375, + "tp_dp_communication": -5.40098776531321 + } + }, + "real": { + "tp4_ep1_mns64": { + "aggregate": { + "generation_tokens_per_s": { + "cv": 0.01219623132338527, + "distinct_n": 32, + "max": 217.3, + "mean": 204.7488888888889, + "min": 197.1, + "n": 45 + }, + "kv_percent": { + "cv": 0.09908502666308305, + "distinct_n": 2, + "max": 5.6, + "mean": 5.233333333333333, + "min": 4.5, + "n": 45 + }, + "running": { + "cv": 0.10101525445522107, + "distinct_n": 2, + "max": 5.0, + "mean": 4.666666666666667, + "min": 4.0, + "n": 45 + }, + "running_histogram": { + "4": 15, + "5": 30 + }, + "samples": 45, + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 45 + } + }, + "proxy_only": true, + "steady_rule": "prompt throughput >= 95% of 3276.8 tokens/s", + "trials": [ + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.01635665678820842, + "distinct_n": 13, + "max": 217.3, + "mean": 205.58666666666667, + "min": 202.4, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.6, + "mean": 5.6, + "min": 5.6, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial1/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.0, + "mean": 5.0, + "min": 5.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial1", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + }, + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.01101205870299425, + "distinct_n": 11, + "max": 206.3, + "mean": 204.18666666666667, + "min": 197.1, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.6, + "mean": 5.6, + "min": 5.6, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial2/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.0, + "mean": 5.0, + "min": 5.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial2", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + }, + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.005467774668645034, + "distinct_n": 14, + "max": 206.0, + "mean": 204.47333333333333, + "min": 202.0, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 4.5, + "mean": 4.5, + "min": 4.5, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial3/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 4.0, + "mean": 4.0, + "min": 4.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial3", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + } + ] + }, + "tp8_ep8_mns64": { + "aggregate": { + "generation_tokens_per_s": { + "cv": 0.01855015540813005, + "distinct_n": 21, + "max": 415.7, + "mean": 406.5380952380952, + "min": 390.8, + "n": 21 + }, + "kv_percent": { + "cv": 0.03973151445031385, + "distinct_n": 3, + "max": 5.6, + "mean": 5.295238095238095, + "min": 4.8, + "n": 21 + }, + "running": { + "cv": 0.04297805843263526, + "distinct_n": 3, + "max": 13.0, + "mean": 12.238095238095237, + "min": 11.0, + "n": 21 + }, + "running_histogram": { + "11": 1, + "12": 14, + "13": 6 + }, + "samples": 21, + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 21 + } + }, + "proxy_only": true, + "steady_rule": "prompt throughput >= 95% of 6553.6 tokens/s", + "trials": [ + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.018873398222858283, + "distinct_n": 7, + "max": 415.7, + "mean": 406.87142857142857, + "min": 392.3, + "n": 7 + }, + "kv_percent": { + "cv": 0.03400298559320833, + "distinct_n": 2, + "max": 5.6, + "mean": 5.314285714285715, + "min": 5.2, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial1/logs/server.log", + "running": { + "cv": 0.036770670467074176, + "distinct_n": 2, + "max": 13.0, + "mean": 12.285714285714286, + "min": 12.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial1", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + }, + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.01869328742146201, + "distinct_n": 7, + "max": 412.9, + "mean": 406.2857142857143, + "min": 390.8, + "n": 7 + }, + "kv_percent": { + "cv": 0.04861017342390845, + "distinct_n": 3, + "max": 5.6, + "mean": 5.257142857142857, + "min": 4.8, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial2/logs/server.log", + "running": { + "cv": 0.052613364176465637, + "distinct_n": 3, + "max": 13.0, + "mean": 12.142857142857142, + "min": 11.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial2", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + }, + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.018043345382112573, + "distinct_n": 7, + "max": 414.9, + "mean": 406.45714285714286, + "min": 393.0, + "n": 7 + }, + "kv_percent": { + "cv": 0.03400298559320833, + "distinct_n": 2, + "max": 5.6, + "mean": 5.314285714285715, + "min": 5.2, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial3/logs/server.log", + "running": { + "cv": 0.036770670467074176, + "distinct_n": 2, + "max": 13.0, + "mean": 12.285714285714286, + "min": 12.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial3", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + } + ] + } + }, + "real_iteration_state": null, + "reference": { + "observed_real_tp8_minus_tp4_ms": 6.949999999999999, + "real_tpot_ms": { + "tp4_ep1_mns64": 21.0442, + "tp8_ep8_mns64": 27.9942 + } + }, + "same_batch_contrasts": { + "1": { + "tp4_n": 54, + "tp8_minus_tp4_ms": { + "attention": -0.8935417788173714, + "dense_mlp_compute": 5.551115123125783e-17, + "ep_communication": 7.6409967723488785, + "moe_compute": -1.3674890128222263, + "moe_routing": 0.24700169495130986, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -8.382111054979667, + "tp_dp_communication": -6.785968403651121 + }, + "tp8_n": 34 + }, + "10": { + "tp4_n": 38, + "tp8_minus_tp4_ms": { + "attention": -0.9062451258095203, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.288943843339915, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "11": { + "tp4_n": 42, + "tp8_minus_tp4_ms": { + "attention": -0.90756947260952, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.2707598272793539, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.29026819009679, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "12": { + "tp4_n": 46, + "tp8_minus_tp4_ms": { + "attention": -0.90756947260952, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.780182756222285, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.290268190109693, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 21 + }, + "13": { + "tp4_n": 46, + "tp8_minus_tp4_ms": { + "attention": -0.9271714387939403, + "dense_mlp_compute": 7.771561172376096e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622228, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.309870155730238, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "14": { + "tp4_n": 47, + "tp8_minus_tp4_ms": { + "attention": -0.9273699663939379, + "dense_mlp_compute": 6.938893903907228e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.310068683979324, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 21 + }, + "15": { + "tp4_n": 663, + "tp8_minus_tp4_ms": { + "attention": -0.9280176641939368, + "dense_mlp_compute": 6.938893903907228e-16, + "ep_communication": 6.824791048020124, + "moe_compute": -30.78018275622229, + "moe_routing": 0.2707598272793539, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.310716381302065, + "tp_dp_communication": -4.708641311979875 + }, + "tp8_n": 21 + }, + "16": { + "tp4_n": 1053, + "tp8_minus_tp4_ms": { + "attention": -0.9280176641939377, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.310716381309007, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 22 + }, + "2": { + "tp4_n": 52, + "tp8_minus_tp4_ms": { + "attention": -0.893056937985337, + "dense_mlp_compute": 5.551115123125783e-17, + "ep_communication": 7.170214735418557, + "moe_compute": -2.487079396822226, + "moe_routing": 0.23761673495131297, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -7.529038359797266, + "tp_dp_communication": -6.276494110581443 + }, + "tp8_n": 32 + }, + "3": { + "tp4_n": 47, + "tp8_minus_tp4_ms": { + "attention": -0.8994740207853011, + "dense_mlp_compute": 8.326672684688674e-17, + "ep_communication": 6.661276281625032, + "moe_compute": -4.971655204025423, + "moe_routing": 0.23007132819364218, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -9.72273303992905, + "tp_dp_communication": -6.0593006383749675 + }, + "tp8_n": 31 + }, + "4": { + "tp4_n": 48, + "tp8_minus_tp4_ms": { + "attention": -0.9032519198967934, + "dense_mlp_compute": 5.551115123125783e-17, + "ep_communication": 6.661276281625032, + "moe_compute": -4.971655204025423, + "moe_routing": 0.23007132819364196, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -9.726510939439532, + "tp_dp_communication": -6.0593006383749675 + }, + "tp8_n": 30 + }, + "5": { + "tp4_n": 34, + "tp8_minus_tp4_ms": { + "attention": -0.8975988783634543, + "dense_mlp_compute": 7.494005416219807e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.90819860140641, + "moe_routing": 0.2783929890825345, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.211543726727538, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 27 + }, + "6": { + "tp4_n": 33, + "tp8_minus_tp4_ms": { + "attention": -0.8977163413634548, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.90819860140641, + "moe_routing": 0.2783929890825343, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.211661189448645, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 26 + }, + "7": { + "tp4_n": 34, + "tp8_minus_tp4_ms": { + "attention": -0.9209473308539557, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.908198601406404, + "moe_routing": 0.2783929890825345, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.23489217903426, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 26 + }, + "8": { + "tp4_n": 33, + "tp8_minus_tp4_ms": { + "attention": -0.9209473308539557, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.619871115982532, + "moe_compute": -25.90819860140641, + "moe_routing": 0.27839298908253474, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -28.23489217902994, + "tp_dp_communication": -5.358508644017467 + }, + "tp8_n": 27 + }, + "9": { + "tp4_n": 32, + "tp8_minus_tp4_ms": { + "attention": -0.9096465718095201, + "dense_mlp_compute": 7.216449660063518e-16, + "ep_communication": 6.824791048020123, + "moe_compute": -30.78018275622229, + "moe_routing": 0.27075982727935366, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -23.292345289360462, + "tp_dp_communication": -4.708641311979878 + }, + "tp8_n": 21 + } + }, + "schema": "qwen235-fixed-pd-state-diagnosis-v1", + "scope": { + "graph_observability": "Frontier state outputs have no direct graph bucket/padding/launch-overhead field; graph effects remain folded into predictors", + "op_trace_accounting": "For TP8 shared-domain sync, total is ledger stage_end-start (critical path); op categories are serialized work estimates and are not additive because overlap and lane-summed wait diagnostics are represented separately", + "real_proxy_limitation": "vLLM 10-second Running is active requests, not per-iteration decode batch; context lengths and graph buckets are unavailable in frozen logs", + "workload": "Fixed-PD 4096->256, 0.2 req/s/GPU, MNS64" + }, + "simulator": { + "tp4_ep1_mns64": { + "batch_support": { + "1": { + "components_ms": { + "attention": 5.918822475999999, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 4.277032336, + "moe_routing": 1.234618249, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.035006493, + "tp_dp_communication": 14.426965176 + }, + "n": 54 + }, + "10": { + "components_ms": { + "attention": 6.795322718, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.978072013, + "tp_dp_communication": 11.53343236 + }, + "n": 38 + }, + "11": { + "components_ms": { + "attention": 6.8427973799999995, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.025546675, + "tp_dp_communication": 11.53343236 + }, + "n": 42 + }, + "12": { + "components_ms": { + "attention": 6.84279738, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.02554667500001, + "tp_dp_communication": 11.53343236 + }, + "n": 46 + }, + "13": { + "components_ms": { + "attention": 7.310070996000001, + "dense_mlp_compute": 0.18060031999999998, + "ep_communication": 0.0, + "moe_compute": 41.171373458999994, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.492820290999994, + "tp_dp_communication": 11.53343236 + }, + "n": 46 + }, + "14": { + "components_ms": { + "attention": 7.316185658, + "dense_mlp_compute": 0.18060032000000004, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.49893495300001, + "tp_dp_communication": 11.53343236 + }, + "n": 47 + }, + "15": { + "components_ms": { + "attention": 7.332662654999999, + "dense_mlp_compute": 0.18060032000000004, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.51541195, + "tp_dp_communication": 11.533432359999999 + }, + "n": 663 + }, + "16": { + "components_ms": { + "attention": 7.332662655, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.51541195, + "tp_dp_communication": 11.53343236 + }, + "n": 1053 + }, + "2": { + "components_ms": { + "attention": 6.048001424230768, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 5.39662272, + "moe_routing": 1.237987209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.30688845623077, + "tp_dp_communication": 13.446708846 + }, + "n": 52 + }, + "3": { + "components_ms": { + "attention": 6.09964707180851, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 9.978847425, + "moe_routing": 1.2434858329999998, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 30.22012550680851, + "tp_dp_communication": 12.72057692 + }, + "n": 47 + }, + "4": { + "components_ms": { + "attention": 6.285367077, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 9.978847425, + "moe_routing": 1.243485833, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 30.405845512, + "tp_dp_communication": 12.72057692 + }, + "n": 48 + }, + "5": { + "components_ms": { + "attention": 6.313050302, + "dense_mlp_compute": 0.17946931199999996, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.419416699, + "tp_dp_communication": 11.97837976 + }, + "n": 34 + }, + "6": { + "components_ms": { + "attention": 6.356479957, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.462846354, + "tp_dp_communication": 11.97837976 + }, + "n": 33 + }, + "7": { + "components_ms": { + "attention": 6.734075413, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.68449211499999, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.84044181, + "tp_dp_communication": 11.97837976 + }, + "n": 34 + }, + "8": { + "components_ms": { + "attention": 6.734075413, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.84044181, + "tp_dp_communication": 11.97837976 + }, + "n": 33 + }, + "9": { + "components_ms": { + "attention": 6.782511044, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.965260339, + "tp_dp_communication": 11.53343236 + }, + "n": 32 + } + }, + "component_source": "stage_batch_ledger", + "decode_batch_size": { + "cv": 0.3076467178753811, + "distinct_n": 16, + "max": 16.0, + "mean": 13.537037037037036, + "min": 1.0, + "n": 2430 + }, + "decode_bearing_rows": 2430, + "decode_token_weighted_all_step_components_ms": { + "attention": 13.842547047292292, + "dense_mlp_compute": 0.2927251518073871, + "ep_communication": 0.0, + "moe_compute": 45.47878637854458, + "moe_routing": 1.8023597240381213, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 74.2229273813438, + "tp_dp_communication": 12.806509080469617 + }, + "decode_token_weighted_mixed_step_share": 0.05481076151390789, + "mixed_prefill_decode_rows": 128, + "pure_decode_rows": 2302, + "pure_decode_token_weighted_components_ms": { + "attention": 7.263972797140871, + "dense_mlp_compute": 0.18052079084832112, + "ep_communication": 0.0, + "moe_compute": 40.472043520877655, + "moe_routing": 1.2955265717923583, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.78208599545992, + "tp_dp_communication": 11.57002231571491 + }, + "scorer_equivalence": { + "base_metrics": { + "e2e_mean_ms": 19261.684938205322, + "e2e_p50_ms": 19681.421068277567, + "e2e_p90_ms": 19712.678973231064, + "e2e_p95_ms": 19717.18006692948, + "slos": { + "tpot_100ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_150ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_180ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_50ms": { + "feasible": false, + "pass_rate": 0.0, + "passed": 0 + } + }, + "tpot_mean_ms": 74.22292738142716, + "tpot_p50_ms": 75.8976524911963, + "tpot_p90_ms": 75.8976524912086, + "tpot_p95_ms": 75.89765249120967, + "ttft_mean_ms": 334.8384559413977, + "ttft_p50_ms": 334.75193988430976, + "ttft_p90_ms": 359.7779859328796, + "ttft_p95_ms": 363.2786816744229 + }, + "request_metrics_byte_identical": true, + "request_metrics_sha256": "01ed41e9babf2eb71286e93d8f4986dda9820f92212c975ed9411a95a5f8758f" + }, + "stage_rows": 2431, + "trace_validation": null + }, + "tp8_ep8_mns64": { + "batch_support": { + "1": { + "components_ms": { + "attention": 5.025280697182628, + "dense_mlp_compute": 0.17756825600000006, + "ep_communication": 7.6409967723488785, + "moe_compute": 2.909543323177774, + "moe_routing": 1.4816199439513098, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 17.652895438020334, + "tp_dp_communication": 7.6409967723488785 + }, + "n": 34 + }, + "10": { + "components_ms": { + "attention": 5.88907759219048, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.68912816966009, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "11": { + "components_ms": { + "attention": 5.9352279073904795, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.568102984279354, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.73527848490321, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "12": { + "components_ms": { + "attention": 5.93522790739048, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777717, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.735278484890316, + "tp_dp_communication": 6.824791048020123 + }, + "n": 21 + }, + "13": { + "components_ms": { + "attention": 6.382899557206061, + "dense_mlp_compute": 0.18060032000000076, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.182950135269756, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "14": { + "components_ms": { + "attention": 6.388815691606062, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.188866269020686, + "tp_dp_communication": 6.824791048020123 + }, + "n": 21 + }, + "15": { + "components_ms": { + "attention": 6.404644990806062, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020124, + "moe_compute": 10.391190702777713, + "moe_routing": 1.568102984279354, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.204695568697936, + "tp_dp_communication": 6.824791048020124 + }, + "n": 21 + }, + "16": { + "components_ms": { + "attention": 6.404644990806062, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.204695568690994, + "tp_dp_communication": 6.824791048020123 + }, + "n": 22 + }, + "17": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.63356500064447, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.2554552675483, + "tp_dp_communication": 6.763788700699805 + }, + "n": 31 + }, + "18": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644474, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.25545526754183, + "tp_dp_communication": 6.763788700699805 + }, + "n": 30 + }, + "19": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644472, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.25545526755436, + "tp_dp_communication": 6.763788700699805 + }, + "n": 32 + }, + "2": { + "components_ms": { + "attention": 5.154944486245431, + "dense_mlp_compute": 0.17756825600000006, + "ep_communication": 7.170214735418557, + "moe_compute": 2.909543323177774, + "moe_routing": 1.475603943951313, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 18.777850096433504, + "tp_dp_communication": 7.170214735418557 + }, + "n": 32 + }, + "20": { + "components_ms": { + "attention": 6.652331067872723, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699804, + "moe_compute": 14.633565000644472, + "moe_routing": 1.6479551064984042, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.25545526756006, + "tp_dp_communication": 6.763788700699804 + }, + "n": 33 + }, + "21": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.18267583999999895, + "ep_communication": 6.763788700699806, + "moe_compute": 14.633565000644474, + "moe_routing": 1.6479551064984037, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.58688465210873, + "tp_dp_communication": 6.763788700699806 + }, + "n": 37 + }, + "22": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.18267583999999898, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644472, + "moe_routing": 1.6479551064984042, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.586884652057584, + "tp_dp_communication": 6.763788700699805 + }, + "n": 51 + }, + "23": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.182675839999999, + "ep_communication": 6.763788700699805, + "moe_compute": 14.63356500064447, + "moe_routing": 1.647955106498404, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.58688465207786, + "tp_dp_communication": 6.763788700699805 + }, + "n": 906 + }, + "24": { + "components_ms": { + "attention": 6.9837604522698395, + "dense_mlp_compute": 0.18267583999999895, + "ep_communication": 6.763788700699805, + "moe_compute": 14.633565000644472, + "moe_routing": 1.6479551064984037, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 39.58688465207813, + "tp_dp_communication": 6.763788700699805 + }, + "n": 84 + }, + "3": { + "components_ms": { + "attention": 5.200173051023209, + "dense_mlp_compute": 0.1775682560000001, + "ep_communication": 6.661276281625032, + "moe_compute": 5.007192220974576, + "moe_routing": 1.473557161193642, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 20.49739246687946, + "tp_dp_communication": 6.661276281625032 + }, + "n": 31 + }, + "4": { + "components_ms": { + "attention": 5.382115157103207, + "dense_mlp_compute": 0.17756825600000006, + "ep_communication": 6.661276281625032, + "moe_compute": 5.007192220974576, + "moe_routing": 1.473557161193642, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 20.679334572560467, + "tp_dp_communication": 6.661276281625032 + }, + "n": 30 + }, + "5": { + "components_ms": { + "attention": 5.415451423636545, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825344, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.207872972272465, + "tp_dp_communication": 6.619871115982532 + }, + "n": 27 + }, + "6": { + "components_ms": { + "attention": 5.4587636156365456, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825342, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.251185164551355, + "tp_dp_communication": 6.619871115982532 + }, + "n": 26 + }, + "7": { + "components_ms": { + "attention": 5.8131280821460445, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825344, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.60554963096574, + "tp_dp_communication": 6.619871115982532 + }, + "n": 26 + }, + "8": { + "components_ms": { + "attention": 5.8131280821460445, + "dense_mlp_compute": 0.1794693120000007, + "ep_communication": 6.619871115982532, + "moe_compute": 8.776293513593586, + "moe_routing": 1.5424181980825347, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.60554963097006, + "tp_dp_communication": 6.619871115982532 + }, + "n": 27 + }, + "9": { + "components_ms": { + "attention": 5.8728644721904795, + "dense_mlp_compute": 0.18060032000000073, + "ep_communication": 6.824791048020123, + "moe_compute": 10.391190702777715, + "moe_routing": 1.5681029842793537, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 37.672915049639535, + "tp_dp_communication": 6.824791048020123 + }, + "n": 21 + } + }, + "component_source": "op_trace_execution_time_override", + "decode_batch_size": { + "cv": 0.3602756967919564, + "distinct_n": 24, + "max": 24.0, + "mean": 18.93782383419689, + "min": 1.0, + "n": 1737 + }, + "decode_bearing_rows": 1737, + "decode_token_weighted_all_step_components_ms": { + "attention": 6.38060442207261, + "dense_mlp_compute": 0.16958377884622666, + "ep_communication": 6.235402017662346, + "moe_compute": 13.024343946852467, + "moe_routing": 1.5161854734738416, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.156672699566656, + "tp_dp_communication": 6.235402017662346 + }, + "decode_token_weighted_mixed_step_share": 0.08077215382276942, + "mixed_prefill_decode_rows": 128, + "pure_decode_rows": 1609, + "pure_decode_token_weighted_components_ms": { + "attention": 6.853695012970485, + "dense_mlp_compute": 0.1824026696707446, + "ep_communication": 6.765971286395407, + "moe_compute": 14.092651702097841, + "moe_routing": 1.638092363428458, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 38.94606316261678, + "tp_dp_communication": 6.765971286395407 + }, + "scorer_equivalence": { + "base_metrics": { + "e2e_mean_ms": 14056.464119438264, + "e2e_p50_ms": 14650.653983203298, + "e2e_p90_ms": 14674.997135818061, + "e2e_p95_ms": 14677.859760866291, + "slos": { + "tpot_100ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_150ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_180ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_50ms": { + "feasible": false, + "pass_rate": 0.14728682170542637, + "passed": 19 + } + }, + "tpot_mean_ms": 54.15667269956665, + "tpot_p50_ms": 56.52350191837838, + "tpot_p90_ms": 56.52350850045728, + "tpot_p95_ms": 56.523546100039816, + "ttft_mean_ms": 246.51258104876885, + "ttft_p50_ms": 246.7781280760306, + "ttft_p90_ms": 263.0087113349084, + "ttft_p95_ms": 264.77576248352364 + }, + "request_metrics_byte_identical": true, + "request_metrics_sha256": "51a848c4c12eacabbc72a0f6a8b5c1863e8b624b316b7ab55341e3fe5a3a753b" + }, + "stage_rows": 1738, + "trace_validation": { + "diagnostic_wait_ms": { + "cv": 0.3169483933455645, + "distinct_n": 26, + "max": 67.2823542576566, + "mean": 38.03960569005978, + "min": 7.116029381293295, + "n": 1609 + }, + "event_names": { + "attn_decode": 1737, + "attn_kv_cache_save": 1738, + "attn_post_proj": 1738, + "attn_pre_proj": 1738, + "attn_prefill": 129, + "attn_rope": 1738, + "attn_tensor_parallel_allreduce": 1738, + "expert_parallel_allreduce": 1738, + "expert_parallel_allreduce_wait": 1609, + "input_layernorm": 1738, + "moe_gating_linear": 1738, + "moe_gating_routing_topk": 1738, + "moe_grouped_gemm": 1738, + "moe_shuffling": 1738, + "post_attention_layernorm": 1738 + }, + "ledger_batches": 1738, + "serialized_component_sum_over_stage_span": { + "cv": 0.30467075878025907, + "distinct_n": 69, + "max": 1.4091742542979306, + "mean": 0.8931198465670052, + "min": 0.010604399884068217, + "n": 1738 + }, + "trace_batches": 1738, + "trace_path": "/home/admin/cpfs/wjh/aituner/qwen235-fixed-pd-state-diagnosis-20260719-r1/frontier-optrace/tp8_ep8_mns64/frontier_metrics/qwen3_235b_a22b/online_serving/qwen235_fixed_pd_state_tp8_ep8_mns64/op_traces.jsonl" + } + } + }, + "simulator_internal_all_step_tp8_minus_tp4_ms": { + "attention": -7.461942625219683, + "dense_mlp_compute": -0.12314137296116046, + "ep_communication": 6.235402017662346, + "moe_compute": -32.45444243169211, + "moe_routing": -0.2861742505642797, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -20.06625468177714, + "tp_dp_communication": -6.571107062807271 + }, + "status": "PASS", + "verdict": "State-composition mismatch is insufficient: after reweighting Frontier to measured real decode composition, it still predicts TP8 faster." +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.md new file mode 100644 index 0000000..a93d3bc --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis-optrace.md @@ -0,0 +1,48 @@ +# Qwen235 Fixed-PD state diagnosis + +**Verdict:** State-composition mismatch is insufficient: after reweighting Frontier to measured real decode composition, it still predicts TP8 faster. + +| Config | Real Running proxy mean | Sim decode batch mean | Proxy coverage | +|---|---:|---:|---:| +| tp4_ep1_mns64 | 4.667 | 13.537 | 100.0% | +| tp8_ep8_mns64 | 12.238 | 18.938 | 100.0% | + +## Frontier internal component contrast over its own executed composition + +Decode-token-weighted over both pure-decode and mixed prefill/decode steps. + +| Component | TP8 - TP4 (ms/decoded token step) | +|---|---:| +| moe_compute | -32.4544 | +| total | -20.0663 | +| attention | -7.4619 | +| tp_dp_communication | -6.5711 | +| ep_communication | +6.2354 | +| moe_routing | -0.2862 | +| dense_mlp_compute | -0.1231 | +| pipeline_communication | +0.0000 | +| runtime_overhead | +0.0000 | + +## Frontier internal component contrast at real Running proxy + +Positive means TP8 slower; negative means Frontier gives TP8 an advantage. + +| Component | TP8 - TP4 (ms/step) | +|---|---:| +| moe_compute | -16.0581 | +| total | -8.5517 | +| ep_communication | +6.8248 | +| tp_dp_communication | -5.4010 | +| moe_routing | +0.3109 | +| attention | -0.2407 | +| dense_mlp_compute | +0.0018 | +| pipeline_communication | +0.0000 | +| runtime_overhead | +0.0000 | + +## Interpretation boundary + +- Real observed TPOT contrast: +6.9500 ms/token. +- vLLM 10-second Running is active requests, not per-iteration decode batch; context lengths and graph buckets are unavailable in frozen logs. +- Frontier state outputs have no direct graph bucket/padding/launch-overhead field; graph effects remain folded into predictors. +- For TP8 shared-domain sync, total is ledger stage_end-start (critical path); op categories are serialized work estimates and are not additive because overlap and lane-summed wait diagnostics are represented separately. +- Component deltas identify where Frontier creates its own TP8 advantage; without real per-stage measurements they are not yet root-cause proof. diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.json new file mode 100644 index 0000000..579aa9c --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.json @@ -0,0 +1,1361 @@ +{ + "proxy_matched": { + "configs": { + "tp4_ep1_mns64": { + "components_ms": { + "attention": 6.303822560333333, + "dense_mlp_compute": 0.17883562666666666, + "ep_communication": 0.0, + "moe_compute": 26.449277218333332, + "moe_routing": 1.2571787503333332, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 46.414892969, + "tp_dp_communication": 12.225778813333333 + }, + "coverage": 1.0, + "supported_samples": 45, + "total_samples": 45, + "unsupported": {} + }, + "tp8_ep8_mns64": { + "components_ms": { + "attention": 0.06450142600000001, + "dense_mlp_compute": 0.00192128, + "ep_communication": 0.07260416, + "moe_compute": 0.110544582, + "moe_routing": 0.016681946999999996, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.338857555, + "tp_dp_communication": 0.07260416 + }, + "coverage": 1.0, + "supported_samples": 21, + "total_samples": 21, + "unsupported": {} + } + }, + "method": "exact batch-size lookup; each simulator config is reweighted to its own frozen-real steady Running histogram; no interpolation", + "tp8_minus_tp4_ms": { + "attention": -6.239321134333333, + "dense_mlp_compute": -0.17691434666666667, + "ep_communication": 0.07260416, + "moe_compute": -26.338732636333333, + "moe_routing": -1.2404968033333332, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -46.076035414, + "tp_dp_communication": -12.153174653333334 + } + }, + "real": { + "tp4_ep1_mns64": { + "aggregate": { + "generation_tokens_per_s": { + "cv": 0.01219623132338527, + "distinct_n": 32, + "max": 217.3, + "mean": 204.7488888888889, + "min": 197.1, + "n": 45 + }, + "kv_percent": { + "cv": 0.09908502666308305, + "distinct_n": 2, + "max": 5.6, + "mean": 5.233333333333333, + "min": 4.5, + "n": 45 + }, + "running": { + "cv": 0.10101525445522107, + "distinct_n": 2, + "max": 5.0, + "mean": 4.666666666666667, + "min": 4.0, + "n": 45 + }, + "running_histogram": { + "4": 15, + "5": 30 + }, + "samples": 45, + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 45 + } + }, + "proxy_only": true, + "steady_rule": "prompt throughput >= 95% of 3276.8 tokens/s", + "trials": [ + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.01635665678820842, + "distinct_n": 13, + "max": 217.3, + "mean": 205.58666666666667, + "min": 202.4, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.6, + "mean": 5.6, + "min": 5.6, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial1/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.0, + "mean": 5.0, + "min": 5.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial1", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + }, + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.01101205870299425, + "distinct_n": 11, + "max": 206.3, + "mean": 204.18666666666667, + "min": 197.1, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.6, + "mean": 5.6, + "min": 5.6, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial2/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 5.0, + "mean": 5.0, + "min": 5.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial2", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + }, + { + "all_samples": 17, + "generation_tokens_per_s": { + "cv": 0.005467774668645034, + "distinct_n": 14, + "max": 206.0, + "mean": 204.47333333333333, + "min": 202.0, + "n": 15 + }, + "kv_percent": { + "cv": 0.0, + "distinct_n": 1, + "max": 4.5, + "mean": 4.5, + "min": 4.5, + "n": 15 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp4_ep1_mns64/trial3/logs/server.log", + "running": { + "cv": 0.0, + "distinct_n": 1, + "max": 4.0, + "mean": 4.0, + "min": 4.0, + "n": 15 + }, + "steady_samples": 15, + "trial": "trial3", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 15 + } + } + ] + }, + "tp8_ep8_mns64": { + "aggregate": { + "generation_tokens_per_s": { + "cv": 0.01855015540813005, + "distinct_n": 21, + "max": 415.7, + "mean": 406.5380952380952, + "min": 390.8, + "n": 21 + }, + "kv_percent": { + "cv": 0.03973151445031385, + "distinct_n": 3, + "max": 5.6, + "mean": 5.295238095238095, + "min": 4.8, + "n": 21 + }, + "running": { + "cv": 0.04297805843263526, + "distinct_n": 3, + "max": 13.0, + "mean": 12.238095238095237, + "min": 11.0, + "n": 21 + }, + "running_histogram": { + "11": 1, + "12": 14, + "13": 6 + }, + "samples": 21, + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 21 + } + }, + "proxy_only": true, + "steady_rule": "prompt throughput >= 95% of 6553.6 tokens/s", + "trials": [ + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.018873398222858283, + "distinct_n": 7, + "max": 415.7, + "mean": 406.87142857142857, + "min": 392.3, + "n": 7 + }, + "kv_percent": { + "cv": 0.03400298559320833, + "distinct_n": 2, + "max": 5.6, + "mean": 5.314285714285715, + "min": 5.2, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial1/logs/server.log", + "running": { + "cv": 0.036770670467074176, + "distinct_n": 2, + "max": 13.0, + "mean": 12.285714285714286, + "min": 12.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial1", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + }, + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.01869328742146201, + "distinct_n": 7, + "max": 412.9, + "mean": 406.2857142857143, + "min": 390.8, + "n": 7 + }, + "kv_percent": { + "cv": 0.04861017342390845, + "distinct_n": 3, + "max": 5.6, + "mean": 5.257142857142857, + "min": 4.8, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial2/logs/server.log", + "running": { + "cv": 0.052613364176465637, + "distinct_n": 3, + "max": 13.0, + "mean": 12.142857142857142, + "min": 11.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial2", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + }, + { + "all_samples": 9, + "generation_tokens_per_s": { + "cv": 0.018043345382112573, + "distinct_n": 7, + "max": 414.9, + "mean": 406.45714285714286, + "min": 393.0, + "n": 7 + }, + "kv_percent": { + "cv": 0.03400298559320833, + "distinct_n": 2, + "max": 5.6, + "mean": 5.314285714285715, + "min": 5.2, + "n": 7 + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen235-v020-fourcase-20260719-r1/real/fixed-pd/real/tp8_ep8_mns64/trial3/logs/server.log", + "running": { + "cv": 0.036770670467074176, + "distinct_n": 2, + "max": 13.0, + "mean": 12.285714285714286, + "min": 12.0, + "n": 7 + }, + "steady_samples": 7, + "trial": "trial3", + "waiting": { + "cv": 0.0, + "distinct_n": 1, + "max": 0.0, + "mean": 0.0, + "min": 0.0, + "n": 7 + } + } + ] + } + }, + "reference": { + "observed_real_tp8_minus_tp4_ms": 6.949999999999999, + "real_tpot_ms": { + "tp4_ep1_mns64": 21.0442, + "tp8_ep8_mns64": 27.9942 + } + }, + "same_batch_contrasts": { + "1": { + "tp4_n": 54, + "tp8_minus_tp4_ms": { + "attention": -5.865362041999999, + "dense_mlp_compute": -0.17567923200000002, + "ep_communication": 0.0812872, + "moe_compute": -4.2460797470000005, + "moe_routing": -1.218856335, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -25.770368131999998, + "tp_dp_communication": -14.345677976 + }, + "tp8_n": 34 + }, + "10": { + "tp4_n": 38, + "tp8_minus_tp4_ms": { + "attention": -6.732672957, + "dense_mlp_compute": -0.17867904, + "ep_communication": 0.07260416, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -60.641066124000005, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 22 + }, + "11": { + "tp4_n": 42, + "tp8_minus_tp4_ms": { + "attention": -6.7796566579999995, + "dense_mlp_compute": -0.17867904, + "ep_communication": 0.07260415999999999, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -60.68804982500001, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 22 + }, + "12": { + "tp4_n": 46, + "tp8_minus_tp4_ms": { + "attention": -6.779656658, + "dense_mlp_compute": -0.17867904, + "ep_communication": 0.07260416, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -60.68804982500001, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 21 + }, + "13": { + "tp4_n": 46, + "tp8_minus_tp4_ms": { + "attention": -7.2421678100000015, + "dense_mlp_compute": -0.17867903999999998, + "ep_communication": 0.07260416, + "moe_compute": -41.06082887699999, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -61.150560977, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 22 + }, + "14": { + "tp4_n": 47, + "tp8_minus_tp4_ms": { + "attention": -7.248219534, + "dense_mlp_compute": -0.17867904000000004, + "ep_communication": 0.07260416, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -61.156612701, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 21 + }, + "15": { + "tp4_n": 663, + "tp8_minus_tp4_ms": { + "attention": -7.264528133999999, + "dense_mlp_compute": -0.17867904000000004, + "ep_communication": 0.07260416, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -61.172921300999995, + "tp_dp_communication": -11.4608282 + }, + "tp8_n": 21 + }, + "16": { + "tp4_n": 1053, + "tp8_minus_tp4_ms": { + "attention": -7.264528134, + "dense_mlp_compute": -0.17867904, + "ep_communication": 0.07260416, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -61.172921301, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 22 + }, + "2": { + "tp4_n": 52, + "tp8_minus_tp4_ms": { + "attention": -5.993161589230768, + "dense_mlp_compute": -0.17567923200000002, + "ep_communication": 0.07627888, + "moe_compute": -5.365670131, + "moe_routing": -1.222289295, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -26.05095133323077, + "tp_dp_communication": -13.370429966 + }, + "tp8_n": 32 + }, + "3": { + "tp4_n": 47, + "tp8_minus_tp4_ms": { + "attention": -6.04432608180851, + "dense_mlp_compute": -0.17567923200000002, + "ep_communication": 0.070864641, + "moe_compute": -9.925579423, + "moe_routing": -1.2278096929999998, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -29.95224206780851, + "tp_dp_communication": -12.649712279 + }, + "tp8_n": 31 + }, + "4": { + "tp4_n": 48, + "tp8_minus_tp4_ms": { + "attention": -6.228110533, + "dense_mlp_compute": -0.17567923200000002, + "ep_communication": 0.070864641, + "moe_compute": -9.925579423, + "moe_routing": -1.227809693, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -30.136026518999998, + "tp_dp_communication": -12.649712279 + }, + "tp8_n": 30 + }, + "5": { + "tp4_n": 34, + "tp8_minus_tp4_ms": { + "attention": -6.255439117, + "dense_mlp_compute": -0.17756006399999996, + "ep_communication": 0.070424161, + "moe_compute": -34.591127289999996, + "moe_routing": -1.247616504, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -54.109274413, + "tp_dp_communication": -11.907955599 + }, + "tp8_n": 27 + }, + "6": { + "tp4_n": 33, + "tp8_minus_tp4_ms": { + "attention": -6.298408004000001, + "dense_mlp_compute": -0.177560064, + "ep_communication": 0.07042416100000001, + "moe_compute": -34.591127289999996, + "moe_routing": -1.247616504, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -54.152243299999995, + "tp_dp_communication": -11.907955599 + }, + "tp8_n": 26 + }, + "7": { + "tp4_n": 34, + "tp8_minus_tp4_ms": { + "attention": -6.6722336250000005, + "dense_mlp_compute": -0.177560064, + "ep_communication": 0.070424161, + "moe_compute": -34.59112728999999, + "moe_routing": -1.247616504, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -54.52606892099999, + "tp_dp_communication": -11.907955599 + }, + "tp8_n": 26 + }, + "8": { + "tp4_n": 33, + "tp8_minus_tp4_ms": { + "attention": -6.6722336250000005, + "dense_mlp_compute": -0.177560064, + "ep_communication": 0.070424161, + "moe_compute": -34.591127289999996, + "moe_routing": -1.247616504, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -54.526068921, + "tp_dp_communication": -11.907955599 + }, + "tp8_n": 27 + }, + "9": { + "tp4_n": 32, + "tp8_minus_tp4_ms": { + "attention": -6.720033763, + "dense_mlp_compute": -0.17867904, + "ep_communication": 0.07260416, + "moe_compute": -41.060828877, + "moe_routing": -1.28066121, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -60.62842693, + "tp_dp_communication": -11.460828200000002 + }, + "tp8_n": 21 + } + }, + "schema": "qwen235-fixed-pd-state-diagnosis-v1", + "scope": { + "graph_observability": "Frontier ledger exposes additive execution components but no direct graph bucket/padding/launch-overhead field; graph effects remain folded into predictors", + "real_proxy_limitation": "vLLM 10-second Running is active requests, not per-iteration decode batch; context lengths and graph buckets are unavailable in frozen logs", + "workload": "Fixed-PD 4096->256, 0.2 req/s/GPU, MNS64" + }, + "simulator": { + "tp4_ep1_mns64": { + "batch_support": { + "1": { + "components_ms": { + "attention": 5.918822475999999, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 4.277032336, + "moe_routing": 1.234618249, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.035006492999997, + "tp_dp_communication": 14.426965176 + }, + "n": 54 + }, + "10": { + "components_ms": { + "attention": 6.795322718, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.978072014000006, + "tp_dp_communication": 11.53343236 + }, + "n": 38 + }, + "11": { + "components_ms": { + "attention": 6.8427973799999995, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.025546676000005, + "tp_dp_communication": 11.53343236 + }, + "n": 42 + }, + "12": { + "components_ms": { + "attention": 6.84279738, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.025546676000005, + "tp_dp_communication": 11.53343236 + }, + "n": 46 + }, + "13": { + "components_ms": { + "attention": 7.310070996000001, + "dense_mlp_compute": 0.18060031999999998, + "ep_communication": 0.0, + "moe_compute": 41.171373458999994, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.492820292, + "tp_dp_communication": 11.53343236 + }, + "n": 46 + }, + "14": { + "components_ms": { + "attention": 7.316185658, + "dense_mlp_compute": 0.18060032000000004, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.498934954, + "tp_dp_communication": 11.53343236 + }, + "n": 47 + }, + "15": { + "components_ms": { + "attention": 7.332662654999999, + "dense_mlp_compute": 0.18060032000000004, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.515411951, + "tp_dp_communication": 11.533432359999999 + }, + "n": 663 + }, + "16": { + "components_ms": { + "attention": 7.332662655, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 61.515411951000004, + "tp_dp_communication": 11.53343236 + }, + "n": 1053 + }, + "2": { + "components_ms": { + "attention": 6.048001424230768, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 5.39662272, + "moe_routing": 1.237987209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 26.30688845523077, + "tp_dp_communication": 13.446708846 + }, + "n": 52 + }, + "3": { + "components_ms": { + "attention": 6.09964707180851, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 9.978847425, + "moe_routing": 1.2434858329999998, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 30.220125505808507, + "tp_dp_communication": 12.72057692 + }, + "n": 47 + }, + "4": { + "components_ms": { + "attention": 6.285367077, + "dense_mlp_compute": 0.177568256, + "ep_communication": 0.0, + "moe_compute": 9.978847425, + "moe_routing": 1.243485833, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 30.405845511, + "tp_dp_communication": 12.72057692 + }, + "n": 48 + }, + "5": { + "components_ms": { + "attention": 6.313050302, + "dense_mlp_compute": 0.17946931199999996, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.419416698, + "tp_dp_communication": 11.97837976 + }, + "n": 34 + }, + "6": { + "components_ms": { + "attention": 6.356479957, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.462846352999996, + "tp_dp_communication": 11.97837976 + }, + "n": 33 + }, + "7": { + "components_ms": { + "attention": 6.734075413, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.68449211499999, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.84044180899999, + "tp_dp_communication": 11.97837976 + }, + "n": 34 + }, + "8": { + "components_ms": { + "attention": 6.734075413, + "dense_mlp_compute": 0.179469312, + "ep_communication": 0.0, + "moe_compute": 34.684492115, + "moe_routing": 1.264025209, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 54.840441809, + "tp_dp_communication": 11.97837976 + }, + "n": 33 + }, + "9": { + "components_ms": { + "attention": 6.782511044, + "dense_mlp_compute": 0.18060032, + "ep_communication": 0.0, + "moe_compute": 41.171373459, + "moe_routing": 1.297343157, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.96526034, + "tp_dp_communication": 11.53343236 + }, + "n": 32 + } + }, + "decode_batch_size": { + "cv": 0.3076467178753811, + "distinct_n": 16, + "max": 16.0, + "mean": 13.537037037037036, + "min": 1.0, + "n": 2430 + }, + "decode_bearing_rows": 2430, + "decode_token_weighted_all_step_components_ms": { + "attention": 13.842547047292292, + "dense_mlp_compute": 0.2927251518073871, + "ep_communication": 0.0, + "moe_compute": 45.47878637854458, + "moe_routing": 1.8023597240381213, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 74.222927382152, + "tp_dp_communication": 12.806509080469617 + }, + "decode_token_weighted_mixed_step_share": 0.05481076151390789, + "mixed_prefill_decode_rows": 128, + "pure_decode_rows": 2302, + "pure_decode_token_weighted_components_ms": { + "attention": 7.263972797140871, + "dense_mlp_compute": 0.18052079084832112, + "ep_communication": 0.0, + "moe_compute": 40.472043520877655, + "moe_routing": 1.2955265717923583, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 60.782085996374114, + "tp_dp_communication": 11.57002231571491 + }, + "scorer_equivalence": { + "base_metrics": { + "e2e_mean_ms": 19261.684938205322, + "e2e_p50_ms": 19681.421068277567, + "e2e_p90_ms": 19712.678973231064, + "e2e_p95_ms": 19717.18006692948, + "slos": { + "tpot_100ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_150ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_180ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_50ms": { + "feasible": false, + "pass_rate": 0.0, + "passed": 0 + } + }, + "tpot_mean_ms": 74.22292738142716, + "tpot_p50_ms": 75.8976524911963, + "tpot_p90_ms": 75.8976524912086, + "tpot_p95_ms": 75.89765249120967, + "ttft_mean_ms": 334.8384559413977, + "ttft_p50_ms": 334.75193988430976, + "ttft_p90_ms": 359.7779859328796, + "ttft_p95_ms": 363.2786816744229 + }, + "request_metrics_byte_identical": true, + "request_metrics_sha256": "01ed41e9babf2eb71286e93d8f4986dda9820f92212c975ed9411a95a5f8758f" + }, + "stage_rows": 2431 + }, + "tp8_ep8_mns64": { + "batch_support": { + "1": { + "components_ms": { + "attention": 0.053460434, + "dense_mlp_compute": 0.0018890240000000002, + "ep_communication": 0.0812872, + "moe_compute": 0.030952589000000003, + "moe_routing": 0.015761914, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.264638361, + "tp_dp_communication": 0.0812872 + }, + "n": 34 + }, + "10": { + "components_ms": { + "attention": 0.062649761, + "dense_mlp_compute": 0.0019212800000000003, + "ep_communication": 0.07260416, + "moe_compute": 0.11054458199999999, + "moe_routing": 0.016681947, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.33700589, + "tp_dp_communication": 0.07260416 + }, + "n": 22 + }, + "11": { + "components_ms": { + "attention": 0.063140722, + "dense_mlp_compute": 0.00192128, + "ep_communication": 0.07260415999999999, + "moe_compute": 0.11054458200000002, + "moe_routing": 0.016681947, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.337496851, + "tp_dp_communication": 0.07260415999999999 + }, + "n": 22 + }, + "12": { + "components_ms": { + "attention": 0.06314072200000001, + "dense_mlp_compute": 0.00192128, + "ep_communication": 0.07260416, + "moe_compute": 0.110544582, + "moe_routing": 0.016681946999999996, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.337496851, + "tp_dp_communication": 0.07260416 + }, + "n": 21 + }, + "13": { + "components_ms": { + "attention": 0.067903186, + "dense_mlp_compute": 0.00192128, + "ep_communication": 0.07260416, + "moe_compute": 0.110544582, + "moe_routing": 0.016681946999999996, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.342259315, + "tp_dp_communication": 0.07260416 + }, + "n": 22 + }, + "14": { + "components_ms": { + "attention": 0.067966124, + "dense_mlp_compute": 0.0019212799999999998, + "ep_communication": 0.07260416, + "moe_compute": 0.110544582, + "moe_routing": 0.016681947, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.342322253, + "tp_dp_communication": 0.07260416 + }, + "n": 21 + }, + "15": { + "components_ms": { + "attention": 0.068134521, + "dense_mlp_compute": 0.0019212799999999998, + "ep_communication": 0.07260416, + "moe_compute": 0.11054458200000002, + "moe_routing": 0.016681947, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.34249065, + "tp_dp_communication": 0.07260416 + }, + "n": 21 + }, + "16": { + "components_ms": { + "attention": 0.068134521, + "dense_mlp_compute": 0.00192128, + "ep_communication": 0.07260416, + "moe_compute": 0.110544582, + "moe_routing": 0.016681947, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.34249065, + "tp_dp_communication": 0.07260416 + }, + "n": 22 + }, + "17": { + "components_ms": { + "attention": 0.070769479, + "dense_mlp_compute": 0.0019433600000000003, + "ep_communication": 0.071955199, + "moe_compute": 0.15567622299999997, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.38983089699999995, + "tp_dp_communication": 0.071955199 + }, + "n": 31 + }, + "18": { + "components_ms": { + "attention": 0.07076947899999998, + "dense_mlp_compute": 0.00194336, + "ep_communication": 0.071955199, + "moe_compute": 0.155676223, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.38983089699999995, + "tp_dp_communication": 0.071955199 + }, + "n": 30 + }, + "19": { + "components_ms": { + "attention": 0.070769479, + "dense_mlp_compute": 0.0019433599999999999, + "ep_communication": 0.071955199, + "moe_compute": 0.155676223, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.389830897, + "tp_dp_communication": 0.071955199 + }, + "n": 32 + }, + "2": { + "components_ms": { + "attention": 0.054839835, + "dense_mlp_compute": 0.001889024, + "ep_communication": 0.07627888, + "moe_compute": 0.030952589, + "moe_routing": 0.015697914, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.255937122, + "tp_dp_communication": 0.07627888 + }, + "n": 32 + }, + "20": { + "components_ms": { + "attention": 0.070769479, + "dense_mlp_compute": 0.0019433600000000003, + "ep_communication": 0.071955199, + "moe_compute": 0.15567622299999997, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.38983089699999995, + "tp_dp_communication": 0.071955199 + }, + "n": 33 + }, + "21": { + "components_ms": { + "attention": 0.074295324, + "dense_mlp_compute": 0.00194336, + "ep_communication": 0.071955199, + "moe_compute": 0.155676223, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.393356742, + "tp_dp_communication": 0.071955199 + }, + "n": 37 + }, + "22": { + "components_ms": { + "attention": 0.074295324, + "dense_mlp_compute": 0.00194336, + "ep_communication": 0.07195519899999998, + "moe_compute": 0.155676223, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.393356742, + "tp_dp_communication": 0.07195519899999998 + }, + "n": 51 + }, + "23": { + "components_ms": { + "attention": 0.074295324, + "dense_mlp_compute": 0.0019433599999999999, + "ep_communication": 0.071955199, + "moe_compute": 0.155676223, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.393356742, + "tp_dp_communication": 0.071955199 + }, + "n": 906 + }, + "24": { + "components_ms": { + "attention": 0.074295324, + "dense_mlp_compute": 0.0019433600000000003, + "ep_communication": 0.071955199, + "moe_compute": 0.155676223, + "moe_routing": 0.017531437, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.393356742, + "tp_dp_communication": 0.071955199 + }, + "n": 84 + }, + "3": { + "components_ms": { + "attention": 0.05532099, + "dense_mlp_compute": 0.0018890240000000002, + "ep_communication": 0.070864641, + "moe_compute": 0.053268002, + "moe_routing": 0.015676139999999998, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.26788343800000003, + "tp_dp_communication": 0.070864641 + }, + "n": 31 + }, + "4": { + "components_ms": { + "attention": 0.057256544, + "dense_mlp_compute": 0.001889024, + "ep_communication": 0.070864641, + "moe_compute": 0.053268002, + "moe_routing": 0.015676139999999998, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.26981899200000004, + "tp_dp_communication": 0.070864641 + }, + "n": 30 + }, + "5": { + "components_ms": { + "attention": 0.057611185, + "dense_mlp_compute": 0.001909248, + "ep_communication": 0.070424161, + "moe_compute": 0.09336482499999998, + "moe_routing": 0.016408705, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.31014228499999996, + "tp_dp_communication": 0.070424161 + }, + "n": 27 + }, + "6": { + "components_ms": { + "attention": 0.058071952999999996, + "dense_mlp_compute": 0.001909248, + "ep_communication": 0.07042416100000001, + "moe_compute": 0.093364825, + "moe_routing": 0.016408705, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.310603053, + "tp_dp_communication": 0.07042416100000001 + }, + "n": 26 + }, + "7": { + "components_ms": { + "attention": 0.061841787999999995, + "dense_mlp_compute": 0.001909248, + "ep_communication": 0.070424161, + "moe_compute": 0.093364825, + "moe_routing": 0.016408705, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.314372888, + "tp_dp_communication": 0.070424161 + }, + "n": 26 + }, + "8": { + "components_ms": { + "attention": 0.061841787999999995, + "dense_mlp_compute": 0.0019092480000000003, + "ep_communication": 0.070424161, + "moe_compute": 0.093364825, + "moe_routing": 0.016408705, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.314372888, + "tp_dp_communication": 0.070424161 + }, + "n": 27 + }, + "9": { + "components_ms": { + "attention": 0.062477281, + "dense_mlp_compute": 0.0019212800000000003, + "ep_communication": 0.07260416, + "moe_compute": 0.11054458199999999, + "moe_routing": 0.016681947, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.33683341, + "tp_dp_communication": 0.07260416 + }, + "n": 21 + } + }, + "decode_batch_size": { + "cv": 0.3602756967919564, + "distinct_n": 24, + "max": 24.0, + "mean": 18.93782383419689, + "min": 1.0, + "n": 1737 + }, + "decode_bearing_rows": 1737, + "decode_token_weighted_all_step_components_ms": { + "attention": 0.14751953504742363, + "dense_mlp_compute": 0.0036978849298677607, + "ep_communication": 0.082097370873993, + "moe_compute": 0.20779839324350205, + "moe_routing": 0.02642429565140599, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.5496348506201855, + "tp_dp_communication": 0.082097370873993 + }, + "decode_token_weighted_mixed_step_share": 0.08077215382276942, + "mixed_prefill_decode_rows": 128, + "pure_decode_rows": 1609, + "pure_decode_token_weighted_components_ms": { + "attention": 0.07291164903783319, + "dense_mlp_compute": 0.0019404539326675046, + "ep_communication": 0.07197841798710232, + "moe_compute": 0.14992182626155828, + "moe_routing": 0.017426514274852836, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": 0.38615727948111644, + "tp_dp_communication": 0.07197841798710232 + }, + "scorer_equivalence": { + "base_metrics": { + "e2e_mean_ms": 14056.464119438264, + "e2e_p50_ms": 14650.653983203298, + "e2e_p90_ms": 14674.997135818061, + "e2e_p95_ms": 14677.859760866291, + "slos": { + "tpot_100ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_150ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_180ms": { + "feasible": true, + "pass_rate": 1.0, + "passed": 129 + }, + "tpot_50ms": { + "feasible": false, + "pass_rate": 0.14728682170542637, + "passed": 19 + } + }, + "tpot_mean_ms": 54.15667269956665, + "tpot_p50_ms": 56.52350191837838, + "tpot_p90_ms": 56.52350850045728, + "tpot_p95_ms": 56.523546100039816, + "ttft_mean_ms": 246.51258104876885, + "ttft_p50_ms": 246.7781280760306, + "ttft_p90_ms": 263.0087113349084, + "ttft_p95_ms": 264.77576248352364 + }, + "request_metrics_byte_identical": true, + "request_metrics_sha256": "51a848c4c12eacabbc72a0f6a8b5c1863e8b624b316b7ab55341e3fe5a3a753b" + }, + "stage_rows": 1738 + } + }, + "simulator_internal_all_step_tp8_minus_tp4_ms": { + "attention": -13.695027512244868, + "dense_mlp_compute": -0.28902726687751934, + "ep_communication": 0.082097370873993, + "moe_compute": -45.270987985301076, + "moe_routing": -1.7759354283867153, + "pipeline_communication": 0.0, + "runtime_overhead": 0.0, + "total": -73.67329253153181, + "tp_dp_communication": -12.724411709595623 + }, + "status": "PASS", + "verdict": "Active-batch-count mismatch alone is insufficient: after exact reweighting to each config's real Running histogram, Frontier still predicts TP8 faster." +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.md new file mode 100644 index 0000000..381adb4 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q235-state-diag/state-diagnosis.md @@ -0,0 +1,47 @@ +# Qwen235 Fixed-PD state diagnosis + +**Verdict:** Active-batch-count mismatch alone is insufficient: after exact reweighting to each config's real Running histogram, Frontier still predicts TP8 faster. + +| Config | Real Running proxy mean | Sim decode batch mean | Proxy coverage | +|---|---:|---:|---:| +| tp4_ep1_mns64 | 4.667 | 13.537 | 100.0% | +| tp8_ep8_mns64 | 12.238 | 18.938 | 100.0% | + +## Frontier internal component contrast over its own executed composition + +Decode-token-weighted over both pure-decode and mixed prefill/decode steps. + +| Component | TP8 - TP4 (ms/decoded token step) | +|---|---:| +| total | -73.6733 | +| moe_compute | -45.2710 | +| attention | -13.6950 | +| tp_dp_communication | -12.7244 | +| moe_routing | -1.7759 | +| dense_mlp_compute | -0.2890 | +| ep_communication | +0.0821 | +| pipeline_communication | +0.0000 | +| runtime_overhead | +0.0000 | + +## Frontier internal component contrast at real Running proxy + +Positive means TP8 slower; negative means Frontier gives TP8 an advantage. + +| Component | TP8 - TP4 (ms/step) | +|---|---:| +| total | -46.0760 | +| moe_compute | -26.3387 | +| tp_dp_communication | -12.1532 | +| attention | -6.2393 | +| moe_routing | -1.2405 | +| dense_mlp_compute | -0.1769 | +| ep_communication | +0.0726 | +| pipeline_communication | +0.0000 | +| runtime_overhead | +0.0000 | + +## Interpretation boundary + +- Real observed TPOT contrast: +6.9500 ms/token. +- vLLM 10-second Running is active requests, not per-iteration decode batch; context lengths and graph buckets are unavailable in frozen logs. +- Frontier ledger exposes additive execution components but no direct graph bucket/padding/launch-overhead field; graph effects remain folded into predictors. +- Component deltas identify where Frontier creates its own TP8 advantage; without real per-stage measurements they are not yet root-cause proof. diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.json new file mode 100644 index 0000000..b81ebf0 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.json @@ -0,0 +1,173 @@ +{ + "boundary": "This identifies where the selection error is created, but the frozen real logs do not attribute service-time overprediction to one operator.", + "cells": { + "tp2_mns64": { + "arrival_rate_requests_per_s": 2.25, + "mns": 64, + "real": { + "e2e_ms": 3354.8816545874283, + "periodic_queue": { + "running_max": 10, + "running_mean": 7.257142857142857, + "samples": 35, + "waiting_max": 0, + "waiting_mean": 0.0 + }, + "required_slots_upper_bound": 7.548483722821714, + "slot_margin_lower_bound": 56.451516277178285, + "tpot_ms": 12.393283087182931, + "ttft_ms": 194.56193759030603 + }, + "simulator": { + "first_scheduling_delay_ms": 38.22329108338011, + "queue_free_ttft_ms": 191.02937373774816, + "request_execution_ms": 25761.91467886552, + "required_slots": 57.96430802744742, + "slot_margin": 6.035691972552577, + "tpot_ms": 100.27798158873513, + "ttft_ms": 229.2526648211283, + "ttft_queue_fraction": 0.16672997503956338 + }, + "tp": 2, + "tpot_overprediction_ratio": 8.091316956395687 + }, + "tp4_mns16": { + "arrival_rate_requests_per_s": 4.5, + "mns": 16, + "real": { + "e2e_ms": 3252.7993474094965, + "periodic_queue": { + "running_max": 16, + "running_mean": 15.166666666666666, + "samples": 18, + "waiting_max": 0, + "waiting_mean": 0.0 + }, + "required_slots_upper_bound": 14.637597063342735, + "slot_margin_lower_bound": 1.362402936657265, + "tpot_ms": 12.267737219892378, + "ttft_ms": 124.49453797538061 + }, + "simulator": { + "first_scheduling_delay_ms": 64906.25631809643, + "queue_free_ttft_ms": 134.74066995065758, + "request_execution_ms": 12108.627705569606, + "required_slots": 54.488824675063235, + "slot_margin": -38.488824675063235, + "tpot_ms": 46.95641974752248, + "ttft_ms": 65040.99698804708, + "ttft_queue_fraction": 0.9979283732385681 + }, + "tp": 4, + "tpot_overprediction_ratio": 3.8276349505907024 + }, + "tp4_mns32": { + "arrival_rate_requests_per_s": 4.5, + "mns": 32, + "real": { + "e2e_ms": 3227.015463910283, + "periodic_queue": { + "running_max": 16, + "running_mean": 14.944444444444445, + "samples": 18, + "waiting_max": 0, + "waiting_mean": 0.0 + }, + "required_slots_upper_bound": 14.521569587596273, + "slot_margin_lower_bound": 17.478430412403725, + "tpot_ms": 12.171863019540417, + "ttft_ms": 123.15859724408143 + }, + "simulator": { + "first_scheduling_delay_ms": 27180.676177927482, + "queue_free_ttft_ms": 135.62147333612225, + "request_execution_ms": 14643.080360640608, + "required_slots": 65.89386162288272, + "slot_margin": -33.893861622882724, + "tpot_ms": 56.89199563649036, + "ttft_ms": 27316.2976512636, + "ttft_queue_fraction": 0.9950351444010626 + }, + "tp": 4, + "tpot_overprediction_ratio": 4.6740581573385525 + }, + "tp4_mns64": { + "arrival_rate_requests_per_s": 4.5, + "mns": 64, + "real": { + "e2e_ms": 3258.202659738964, + "periodic_queue": { + "running_max": 17, + "running_mean": 14.833333333333334, + "samples": 18, + "waiting_max": 0, + "waiting_mean": 0.0 + }, + "required_slots_upper_bound": 14.661911968825338, + "slot_margin_lower_bound": 49.338088031174664, + "tpot_ms": 12.29409478300949, + "ttft_ms": 123.17715882596677 + }, + "simulator": { + "first_scheduling_delay_ms": 6367.273779218055, + "queue_free_ttft_ms": 136.7304324624105, + "request_execution_ms": 17736.957363112386, + "required_slots": 79.81630813400574, + "slot_margin": -15.816308134005737, + "tpot_ms": 69.02049776725552, + "ttft_ms": 6504.004211680465, + "ttft_queue_fraction": 0.9789774993969319 + }, + "tp": 4, + "tpot_overprediction_ratio": 5.614117914776633 + } + }, + "contrasts": { + "observed_sim_ttft_tp4_minus_tp2_ms": 27087.044986442474, + "queue_free_sim_ttft_tp4_minus_tp2_ms": -55.40790040162591, + "real_ttft_tp4_minus_tp2_ms": -71.4033403462246 + }, + "schema": "qwen30-fixed-pd-ttft-admission-diagnosis-v1", + "selection": { + "agreement": 0.5909090909090909, + "concordant_pairs": 39, + "discordant_pairs": 27, + "informative_pairs": 66, + "real_ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp4_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.5797674051508896, + "sim_ranking": [ + "tp2_mns64", + "tp1_mns64", + "tp4_mns64", + "tp1_mns32", + "tp2_mns32", + "tp4_mns32", + "tp4_mns16", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp2_mns64", + "tied_pairs": 0, + "winner_match": false + }, + "status": "PASS", + "verdict": "Frontier overpredicts decode service time, so TP4's higher global arrival rate crosses the MNS admission cap only in simulation. The resulting first-scheduling queue reverses the TP topology ranking; without that queue Frontier itself predicts TP4 faster than TP2, matching real hardware.", + "workload": "Qwen3-30B Fixed-PD 4096->256 at 1.125 req/s/GPU" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.md new file mode 100644 index 0000000..dd90030 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-admission-diag/result.md @@ -0,0 +1,18 @@ +# Qwen30 Fixed-PD TTFT admission diagnosis + +**Verdict:** Frontier overpredicts decode service time, so TP4's higher global arrival rate crosses the MNS admission cap only in simulation. The resulting first-scheduling queue reverses the TP topology ranking; without that queue Frontier itself predicts TP4 faster than TP2, matching real hardware. + +| Config | Sim TPOT / real | Sim required slots / MNS | Real slots upper bound / MNS | Sim first-schedule wait | Real waiting max | +|---|---:|---:|---:|---:|---:| +| tp2_mns64 | 8.09x | 58.0/64 | 7.5/64 | 38.2 ms | 0 | +| tp4_mns16 | 3.83x | 54.5/16 | 14.6/16 | 64906.3 ms | 0 | +| tp4_mns32 | 4.67x | 65.9/32 | 14.5/32 | 27180.7 ms | 0 | +| tp4_mns64 | 5.61x | 79.8/64 | 14.7/64 | 6367.3 ms | 0 | + +## TP4/MNS32 minus TP2/MNS64 TTFT + +- Observed Frontier: +27087.0 ms. +- Frontier without first-scheduling queue: -55.4 ms. +- Real hardware: -71.4 ms. + +**Boundary:** This identifies where the selection error is created, but the frozen real logs do not attribute service-time overprediction to one operator. diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/analysis-launch.log b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/analysis-launch.log new file mode 100644 index 0000000..2614c49 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/analysis-launch.log @@ -0,0 +1,2 @@ +Q30_ANALYSIS_ECHO source_real=/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6 source_sim=/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim cases=trace-po,fixed-pd,fixed-po requests=129 configs=12 trials=3 metrics=mean,p90(TTFT,TPOT-if-OSL-gt-1,E2E) gpu_cost=0 output=/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/analysis-r6 +Q30_ANALYSIS_COMPLETE diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.json new file mode 100644 index 0000000..dbad285 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.json @@ -0,0 +1,453 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "tpot_ms", + "e2e_ms" + ], + "cells": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "mean": 2624.2011811364387, + "p90": 2624.2011811379484 + }, + "tpot_ms": { + "mean": 19.350639886513438, + "p90": 19.3506398865253 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp1_mns16/tp1/result.json" + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "mean": 2624.2011811364387, + "p90": 2624.2011811379484 + }, + "tpot_ms": { + "mean": 19.350639886513438, + "p90": 19.3506398865253 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp1_mns32/tp1/result.json" + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "mean": 2624.2011811364387, + "p90": 2624.2011811379484 + }, + "tpot_ms": { + "mean": 19.350639886513438, + "p90": 19.3506398865253 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp1_mns64/tp1/result.json" + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "mean": 2624.2011811364387, + "p90": 2624.2011811379484 + }, + "tpot_ms": { + "mean": 19.350639886513438, + "p90": 19.3506398865253 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp1_mns8/tp1/result.json" + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "mean": 2808.3844446026824, + "p90": 2817.9486849812747 + }, + "tpot_ms": { + "mean": 21.06177881019329, + "p90": 21.09350467849898 + }, + "ttft_ms": { + "mean": 133.53853570813533, + "p90": 142.1523942165379 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp2_mns16/tp2/result.json" + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "mean": 2808.3844446026824, + "p90": 2817.9486849812747 + }, + "tpot_ms": { + "mean": 21.06177881019329, + "p90": 21.09350467849898 + }, + "ttft_ms": { + "mean": 133.53853570813533, + "p90": 142.1523942165379 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp2_mns32/tp2/result.json" + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "mean": 2808.3844446026824, + "p90": 2817.9486849812747 + }, + "tpot_ms": { + "mean": 21.06177881019329, + "p90": 21.09350467849898 + }, + "ttft_ms": { + "mean": 133.53853570813533, + "p90": 142.1523942165379 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp2_mns64/tp2/result.json" + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "mean": 2808.3844446026824, + "p90": 2817.9486849812747 + }, + "tpot_ms": { + "mean": 21.06177881019329, + "p90": 21.09350467849898 + }, + "ttft_ms": { + "mean": 133.53853570813533, + "p90": 142.1523942165379 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp2_mns8/tp2/result.json" + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "mean": 3752.684495467103, + "p90": 3794.6349827560653 + }, + "tpot_ms": { + "mean": 28.70502970984996, + "p90": 28.949734665706984 + }, + "ttft_ms": { + "mean": 107.14572231615826, + "p90": 118.03470639992497 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp4_mns16/tp4/result.json" + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "mean": 3752.684495467103, + "p90": 3794.6349827560653 + }, + "tpot_ms": { + "mean": 28.70502970984996, + "p90": 28.949734665706984 + }, + "ttft_ms": { + "mean": 107.14572231615826, + "p90": 118.03470639992497 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp4_mns32/tp4/result.json" + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "mean": 3752.684495467103, + "p90": 3794.6349827560653 + }, + "tpot_ms": { + "mean": 28.70502970984996, + "p90": 28.949734665706984 + }, + "ttft_ms": { + "mean": 107.14572231615826, + "p90": 118.03470639992497 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp4_mns64/tp4/result.json" + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "mean": 3752.684495467103, + "p90": 3794.6349827560653 + }, + "tpot_ms": { + "mean": 28.70502970984996, + "p90": 28.949734665706984 + }, + "ttft_ms": { + "mean": 107.14572231615826, + "p90": 118.03470639992497 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd/runs/tp4_mns8/tp4/result.json" + } + }, + "prefill_only": false, + "real_audit": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/analysis-r6/fixed-pd-real-audit.json", + "schema": "qwen30-latency-case-frontier-real-comparison-v1", + "selection": { + "e2e_ms:mean": { + "agreement": 0.0, + "concordant_pairs": 0, + "discordant_pairs": 48, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns16", + "tp2_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.26921939465653383, + "sim_ranking": [ + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8" + ], + "sim_winner": "tp1_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "e2e_ms:p90": { + "agreement": 0.0, + "concordant_pairs": 0, + "discordant_pairs": 48, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp2_mns64", + "tp1_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.25730483004000526, + "sim_ranking": [ + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8" + ], + "sim_winner": "tp1_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "tpot_ms:mean": { + "agreement": 0.0, + "concordant_pairs": 0, + "discordant_pairs": 48, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns16", + "tp2_mns32", + "tp2_mns8", + "tp2_mns64", + "tp1_mns64", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.13962124906187545, + "sim_ranking": [ + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8" + ], + "sim_winner": "tp1_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "tpot_ms:p90": { + "agreement": 0.0, + "concordant_pairs": 0, + "discordant_pairs": 48, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns32", + "tp2_mns16", + "tp2_mns8", + "tp2_mns64", + "tp1_mns16", + "tp1_mns64", + "tp1_mns32", + "tp1_mns8" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.13357103696654363, + "sim_ranking": [ + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8" + ], + "sim_winner": "tp1_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "ttft_ms:mean": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns16", + "tp4_mns64", + "tp4_mns32", + "tp4_mns8", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64" + ], + "real_winner": "tp4_mns16", + "selected_config_real_regret": 0.0, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": true + }, + "ttft_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns16", + "tp4_mns64", + "tp4_mns8", + "tp4_mns32", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64", + "tp1_mns16" + ], + "real_winner": "tp4_mns16", + "selected_config_real_regret": 0.0, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": true + } + }, + "sim_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-pd" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.md new file mode 100644 index 0000000..94484d6 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.md @@ -0,0 +1,10 @@ +# Qwen30 Frontier vs real latency selection + +| Objective | Frontier | Real | Match | Regret | Pairwise | +|---|---|---|---:|---:|---:| +| ttft_ms:mean | tp4_mns16 | tp4_mns16 | yes | 0.0% | 100.0% | +| ttft_ms:p90 | tp4_mns16 | tp4_mns16 | yes | 0.0% | 100.0% | +| tpot_ms:mean | tp1_mns16 | tp4_mns32 | no | 14.0% | 0.0% | +| tpot_ms:p90 | tp1_mns16 | tp4_mns8 | no | 13.4% | 0.0% | +| e2e_ms:mean | tp1_mns16 | tp4_mns32 | no | 26.9% | 0.0% | +| e2e_ms:p90 | tp1_mns16 | tp4_mns8 | no | 25.7% | 0.0% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.stdout.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.stdout.json new file mode 100644 index 0000000..1aa57e0 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-comparison.stdout.json @@ -0,0 +1 @@ +{"e2e_ms:mean": {"agreement": 0.0, "concordant_pairs": 0, "discordant_pairs": 48, "informative_pairs": 48, "real_ranking": ["tp4_mns32", "tp4_mns8", "tp4_mns64", "tp4_mns16", "tp2_mns16", "tp2_mns8", "tp2_mns32", "tp2_mns64", "tp1_mns64", "tp1_mns16", "tp1_mns32", "tp1_mns8"], "real_winner": "tp4_mns32", "selected_config_real_regret": 0.26921939465653383, "sim_ranking": ["tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8"], "sim_winner": "tp1_mns16", "tied_pairs": 18, "winner_match": false}, "e2e_ms:p90": {"agreement": 0.0, "concordant_pairs": 0, "discordant_pairs": 48, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp2_mns64", "tp1_mns64", "tp1_mns16", "tp1_mns32", "tp1_mns8"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.25730483004000526, "sim_ranking": ["tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8"], "sim_winner": "tp1_mns16", "tied_pairs": 18, "winner_match": false}, "tpot_ms:mean": {"agreement": 0.0, "concordant_pairs": 0, "discordant_pairs": 48, "informative_pairs": 48, "real_ranking": ["tp4_mns32", "tp4_mns8", "tp4_mns64", "tp4_mns16", "tp2_mns16", "tp2_mns32", "tp2_mns8", "tp2_mns64", "tp1_mns64", "tp1_mns32", "tp1_mns16", "tp1_mns8"], "real_winner": "tp4_mns32", "selected_config_real_regret": 0.13962124906187545, "sim_ranking": ["tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8"], "sim_winner": "tp1_mns16", "tied_pairs": 18, "winner_match": false}, "tpot_ms:p90": {"agreement": 0.0, "concordant_pairs": 0, "discordant_pairs": 48, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns32", "tp4_mns64", "tp4_mns16", "tp2_mns32", "tp2_mns16", "tp2_mns8", "tp2_mns64", "tp1_mns16", "tp1_mns64", "tp1_mns32", "tp1_mns8"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.13357103696654363, "sim_ranking": ["tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8"], "sim_winner": "tp1_mns16", "tied_pairs": 18, "winner_match": false}, "ttft_ms:mean": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns16", "tp4_mns64", "tp4_mns32", "tp4_mns8", "tp2_mns8", "tp2_mns64", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64"], "real_winner": "tp4_mns16", "selected_config_real_regret": 0.0, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": true}, "ttft_ms:p90": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns16", "tp4_mns64", "tp4_mns8", "tp4_mns32", "tp2_mns8", "tp2_mns64", "tp2_mns32", "tp2_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64", "tp1_mns16"], "real_winner": "tp4_mns16", "selected_config_real_regret": 0.0, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": true}} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.json new file mode 100644 index 0000000..3cab437 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.json @@ -0,0 +1,1298 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "tpot_ms", + "e2e_ms" + ], + "case_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd", + "configs": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 767.1236270730016, + "pooled_p90_ms": 766.9662160333246, + "pooled_samples": 387, + "trial_mean_of_means_ms": 767.1236270730016, + "trial_stddev_of_means_ms": 3.640625296359905 + }, + "tpot_ms": { + "pooled_mean_ms": 4.8488702313524765, + "pooled_p90_ms": 4.838337488362463, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.8488702313524765, + "trial_stddev_of_means_ms": 0.02240869837530002 + }, + "ttft_ms": { + "pooled_mean_ms": 151.28173231440826, + "pooled_p90_ms": 152.70179708022624, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.28173231440823, + "trial_stddev_of_means_ms": 0.9864045576075636 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 767.2682947591092, + "p90_ms": 803.2620819285512, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.854438677765834, + "p90_ms": 5.140277842155064, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 150.72045104159403, + "p90_ms": 151.41086804214865, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 763.412824322022, + "p90_ms": 763.9202950522304, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.824202359768954, + "p90_ms": 4.827735795250793, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 150.70405107013187, + "p90_ms": 151.4174829935655, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 770.6897621378736, + "p90_ms": 806.9713360164315, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.867969656522642, + "p90_ms": 5.155875693134025, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.42069483149882, + "p90_ms": 153.3631639322266, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 767.2448034298387, + "pooled_p90_ms": 768.11003300827, + "pooled_samples": 387, + "trial_mean_of_means_ms": 767.2448034298387, + "trial_stddev_of_means_ms": 2.5069380140145388 + }, + "tpot_ms": { + "pooled_mean_ms": 4.848521902720499, + "pooled_p90_ms": 4.846741385779923, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.848521902720499, + "trial_stddev_of_means_ms": 0.016759800320354026 + }, + "ttft_ms": { + "pooled_mean_ms": 151.4453163664687, + "pooled_p90_ms": 152.51897496636957, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.4453163664687, + "trial_stddev_of_means_ms": 0.9359392091301725 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 766.5741731901834, + "p90_ms": 802.9849890153855, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.851220601996876, + "p90_ms": 5.135506000113123, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 150.43522373325544, + "p90_ms": 151.12131391651928, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 765.1413833206274, + "p90_ms": 766.2973250262439, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.830576509172996, + "p90_ms": 4.836877464228786, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.61754613085253, + "p90_ms": 152.396842953749, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 770.0188537787054, + "p90_ms": 805.9141940902919, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.863768596991625, + "p90_ms": 5.147916850575253, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.2831792352981, + "p90_ms": 153.04890798870474, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 766.7927716823189, + "pooled_p90_ms": 766.5371090406552, + "pooled_samples": 387, + "trial_mean_of_means_ms": 766.7927716823189, + "trial_stddev_of_means_ms": 2.196495670572406 + }, + "tpot_ms": { + "pooled_mean_ms": 4.84126870357575, + "pooled_p90_ms": 4.839739204919714, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.84126870357575, + "trial_stddev_of_means_ms": 0.017335823614573528 + }, + "ttft_ms": { + "pooled_mean_ms": 151.91121668752177, + "pooled_p90_ms": 152.6928918901831, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.91121668752177, + "trial_stddev_of_means_ms": 0.09417854078816222 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 767.9369603139312, + "p90_ms": 773.8644760102034, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.851052223623522, + "p90_ms": 4.915137134499731, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.8117881212167, + "p90_ms": 152.64031395781785, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 764.260392307571, + "p90_ms": 765.39497601334, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.8212526970581795, + "p90_ms": 4.825043646017398, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.92278562106424, + "p90_ms": 152.61299489066005, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 768.1809624254545, + "p90_ms": 804.694763966836, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.85150119004555, + "p90_ms": 5.139402172520874, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.9990763202844, + "p90_ms": 152.9452829854563, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 768.6282821211396, + "pooled_p90_ms": 768.3246430242434, + "pooled_samples": 387, + "trial_mean_of_means_ms": 768.6282821211395, + "trial_stddev_of_means_ms": 2.3163990743969975 + }, + "tpot_ms": { + "pooled_mean_ms": 4.856374974269665, + "pooled_p90_ms": 4.857163118220514, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.856374974269665, + "trial_stddev_of_means_ms": 0.01888354805682215 + }, + "ttft_ms": { + "pooled_mean_ms": 151.83002628369175, + "pooled_p90_ms": 152.63689204584807, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.83002628369175, + "trial_stddev_of_means_ms": 0.2293889652860975 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 769.7875488309421, + "p90_ms": 806.7109240218997, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.864016504716275, + "p90_ms": 5.151719298565716, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.02143533036198, + "p90_ms": 152.73106703534722, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 765.9611190793776, + "p90_ms": 765.8235019771382, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.83486823588853, + "p90_ms": 4.831250046570529, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.89288162297836, + "p90_ms": 152.7155089424923, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 770.1361784530991, + "p90_ms": 806.5015620086342, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.8702401822041885, + "p90_ms": 5.154327385853536, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.5757618977349, + "p90_ms": 152.41257997695357, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp1_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 683.3139202742204, + "pooled_p90_ms": 691.7126830667257, + "pooled_samples": 387, + "trial_mean_of_means_ms": 683.3139202742204, + "trial_stddev_of_means_ms": 13.480078748721647 + }, + "tpot_ms": { + "pooled_mean_ms": 4.606023389027604, + "pooled_p90_ms": 4.679884338076777, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.606023389027605, + "trial_stddev_of_means_ms": 0.11860164117227036 + }, + "ttft_ms": { + "pooled_mean_ms": 98.30897632000838, + "pooled_p90_ms": 100.99728393834084, + "pooled_samples": 387, + "trial_mean_of_means_ms": 98.30897632000837, + "trial_stddev_of_means_ms": 1.6033196848780447 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 691.7368602395678, + "p90_ms": 693.4372959658504, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.677960039364579, + "p90_ms": 4.685888802962686, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.59817232175679, + "p90_ms": 98.27463503461331, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 667.7665301777292, + "p90_ms": 672.6519849617034, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.4691333712332115, + "p90_ms": 4.478958197026037, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 100.14481820949433, + "p90_ms": 103.45508099999279, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 690.4383704053643, + "p90_ms": 691.623940016143, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.670976756485024, + "p90_ms": 4.677882693033284, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.18393842877401, + "p90_ms": 98.27898698858917, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 689.548538498116, + "pooled_p90_ms": 691.6915030451491, + "pooled_samples": 387, + "trial_mean_of_means_ms": 689.548538498116, + "trial_stddev_of_means_ms": 0.4691564069544124 + }, + "tpot_ms": { + "pooled_mean_ms": 4.66880722232803, + "pooled_p90_ms": 4.676126267240331, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.66880722232803, + "trial_stddev_of_means_ms": 0.006071937772150551 + }, + "ttft_ms": { + "pooled_mean_ms": 96.57110613066877, + "pooled_p90_ms": 98.41530094854534, + "pooled_samples": 387, + "trial_mean_of_means_ms": 96.57110613066875, + "trial_stddev_of_means_ms": 0.8723383104752306 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 689.6087854717995, + "p90_ms": 691.4246910018846, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.661907737752395, + "p90_ms": 4.664850331417571, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.50512631721939, + "p90_ms": 99.51729699969292, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 689.9846611488538, + "p90_ms": 692.5024109659716, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.673336901073146, + "p90_ms": 4.679785157722517, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 96.43071331534996, + "p90_ms": 98.4487070236355, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 689.0521688736947, + "p90_ms": 691.1603320622817, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.671177028158549, + "p90_ms": 4.681181668589904, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 95.77747875943693, + "p90_ms": 97.0232019899413, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 689.733952092541, + "pooled_p90_ms": 691.8661230010912, + "pooled_samples": 387, + "trial_mean_of_means_ms": 689.733952092541, + "trial_stddev_of_means_ms": 1.30873077294457 + }, + "tpot_ms": { + "pooled_mean_ms": 4.680890721121927, + "pooled_p90_ms": 4.687803739674506, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.680890721121927, + "trial_stddev_of_means_ms": 0.0021247475013520785 + }, + "ttft_ms": { + "pooled_mean_ms": 95.22211026624134, + "pooled_p90_ms": 97.45279501657933, + "pooled_samples": 387, + "trial_mean_of_means_ms": 95.22211026624133, + "trial_stddev_of_means_ms": 1.485311605474211 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 688.8176469527575, + "p90_ms": 690.4401639476418, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.680177864121985, + "p90_ms": 4.685609865434996, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.3946194773641, + "p90_ms": 95.91560496482998, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 691.2328087049717, + "p90_ms": 693.3015899267048, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.679214066220331, + "p90_ms": 4.690911558522719, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 96.93685328216083, + "p90_ms": 98.8241919549182, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 689.1514006198939, + "p90_ms": 690.7796860905364, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.683280233023465, + "p90_ms": 4.687803739674506, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.33485803919909, + "p90_ms": 95.42244195472449, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 688.7246717025648, + "pooled_p90_ms": 691.0650019999593, + "pooled_samples": 387, + "trial_mean_of_means_ms": 688.7246717025649, + "trial_stddev_of_means_ms": 1.440994479221059 + }, + "tpot_ms": { + "pooled_mean_ms": 4.67674757633165, + "pooled_p90_ms": 4.68690808693783, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.67674757633165, + "trial_stddev_of_means_ms": 0.014951986782554206 + }, + "ttft_ms": { + "pooled_mean_ms": 94.74037260235858, + "pooled_p90_ms": 96.15806792862713, + "pooled_samples": 387, + "trial_mean_of_means_ms": 94.74037260235859, + "trial_stddev_of_means_ms": 0.5067099323623165 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 687.0613511852097, + "p90_ms": 689.566144021228, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.659691155888254, + "p90_ms": 4.6653019678668946, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 95.2438001354882, + "p90_ms": 96.90531203523278, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 689.5177478770285, + "p90_ms": 691.6546910069883, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.682958287904102, + "p90_ms": 4.686032913214579, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.74687482042657, + "p90_ms": 96.44627594389021, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 689.5949160454563, + "p90_ms": 691.671111038886, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.687593285202594, + "p90_ms": 4.695545803154196, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.23044285116096, + "p90_ms": 95.47765098977834, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp2_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 607.6659436830384, + "pooled_p90_ms": 614.7840449120849, + "pooled_samples": 387, + "trial_mean_of_means_ms": 607.6659436830384, + "trial_stddev_of_means_ms": 5.83329156754365 + }, + "tpot_ms": { + "pooled_mean_ms": 4.288118025279364, + "pooled_p90_ms": 4.3549379049690335, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.288118025279364, + "trial_stddev_of_means_ms": 0.05739660569371236 + }, + "ttft_ms": { + "pooled_mean_ms": 63.03574686938565, + "pooled_p90_ms": 66.4233659626916, + "pooled_samples": 387, + "trial_mean_of_means_ms": 63.035746869385655, + "trial_stddev_of_means_ms": 1.4920342964335762 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 604.923196775882, + "p90_ms": 609.2176410602406, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.258012776043345, + "p90_ms": 4.267158401088686, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.11492886642615, + "p90_ms": 68.74241400510073, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 614.3651023297751, + "p90_ms": 616.209093015641, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.354304061884912, + "p90_ms": 4.365195747552894, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 61.33310341947647, + "p90_ms": 62.62887897901237, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 603.7095319434582, + "p90_ms": 607.3436400620267, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.252037237909835, + "p90_ms": 4.25958238619079, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 63.65920832225432, + "p90_ms": 66.49800203740597, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 604.4058500071964, + "pooled_p90_ms": 611.0399010358378, + "pooled_samples": 387, + "trial_mean_of_means_ms": 604.4058500071964, + "trial_stddev_of_means_ms": 4.461581159639322 + }, + "tpot_ms": { + "pooled_mean_ms": 4.254808547439789, + "pooled_p90_ms": 4.27782233056473, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.254808547439789, + "trial_stddev_of_means_ms": 0.018762002450543058 + }, + "ttft_ms": { + "pooled_mean_ms": 64.01019376246572, + "pooled_p90_ms": 68.59070702921599, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.0101937624657, + "trial_stddev_of_means_ms": 2.2209645174649575 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 609.0962116628192, + "p90_ms": 614.4514320185408, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.276095369246001, + "p90_ms": 4.289275638421807, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 65.99773169953608, + "p90_ms": 71.24563900288194, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 603.9062279290989, + "p90_ms": 610.2306098910049, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.247653137253014, + "p90_ms": 4.260518551459462, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.41997497093452, + "p90_ms": 68.43586196191609, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 600.215110429671, + "p90_ms": 602.216740953736, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.240677135820352, + "p90_ms": 4.246149299204291, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 61.61287461692655, + "p90_ms": 63.24575201142579, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 605.5669432571543, + "pooled_p90_ms": 610.7392100384459, + "pooled_samples": 387, + "trial_mean_of_means_ms": 605.5669432571543, + "trial_stddev_of_means_ms": 2.5583322144334986 + }, + "tpot_ms": { + "pooled_mean_ms": 4.264903840417586, + "pooled_p90_ms": 4.27982993753935, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.264903840417586, + "trial_stddev_of_means_ms": 0.008241890125268254 + }, + "ttft_ms": { + "pooled_mean_ms": 63.8859268507706, + "pooled_p90_ms": 67.59266997687519, + "pooled_samples": 387, + "trial_mean_of_means_ms": 63.8859268507706, + "trial_stddev_of_means_ms": 1.5158748686612207 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 605.7536339084077, + "p90_ms": 610.4160649701953, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.264924569000695, + "p90_ms": 4.281197173161593, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.06844277909502, + "p90_ms": 67.37245502881706, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 602.9203796349539, + "p90_ms": 606.4624059945345, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.256651605550648, + "p90_ms": 4.271073574860265, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 62.287057342022194, + "p90_ms": 64.74815693218261, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 608.0268162281014, + "p90_ms": 613.2307189982384, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.273135346701415, + "p90_ms": 4.29227040974262, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 65.30228043119459, + "p90_ms": 69.0081981010735, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 605.0888788116282, + "pooled_p90_ms": 610.0081680342555, + "pooled_samples": 387, + "trial_mean_of_means_ms": 605.0888788116282, + "trial_stddev_of_means_ms": 0.8901667424570828 + }, + "tpot_ms": { + "pooled_mean_ms": 4.256483071855015, + "pooled_p90_ms": 4.268226101921182, + "pooled_samples": 387, + "trial_mean_of_means_ms": 4.256483071855015, + "trial_stddev_of_means_ms": 0.0026292150472670742 + }, + "ttft_ms": { + "pooled_mean_ms": 64.47646671392322, + "pooled_p90_ms": 68.37363401427865, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.47646671392322, + "trial_stddev_of_means_ms": 1.0383603866006366 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 606.0357820910452, + "p90_ms": 611.1916180234402, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.2545578456668816, + "p90_ms": 4.264190204544213, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 65.67109757204099, + "p90_ms": 71.20707002468407, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 604.2691217230041, + "p90_ms": 608.334549004212, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.2554127314675245, + "p90_ms": 4.26826358307153, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 63.79063503163354, + "p90_ms": 67.93791998643428, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 604.9617326208354, + "p90_ms": 610.0081680342555, + "samples": 129 + }, + "tpot_ms": { + "mean_ms": 4.259478638430637, + "p90_ms": 4.271154976669904, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 63.96766753809512, + "p90_ms": 67.67752906307578, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-pd/real/tp4_mns8/trial3/results/result.json", + "trial": 3 + } + ] + } + }, + "prefill_only": false, + "schema": "qwen30-latency-case-real-audit-v1", + "trace_manifests": { + "tp1": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 0.215, + "last_arrival_s": 595.3488372093024, + "output_tokens": [ + 128 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd/tp1/private/real_requests.jsonl", + "private_jsonl_sha256": "fa903f38c522a1ab5fa6325697f7aebd8ce17c0809ecee5cba7f28ec7eb6a030", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd/tp1/public/frontier.csv", + "public_csv_sha256": "d33dd9fcd1aea6c6a6fb6730d8bfe30392ad6827f4132682ad151cccabe4bf2d", + "requests": 129, + "row_vector_sha256": "6cb1cdd992eca886c8f1611ee83ec1373ff162bd1b608a8ce23974885b393aea", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 1 + }, + "tp2": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 0.43, + "last_arrival_s": 297.6744186046512, + "output_tokens": [ + 128 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd/tp2/private/real_requests.jsonl", + "private_jsonl_sha256": "51d9e597d5efec87f9a6a7ea425ee1fa95eb4d80db8cadaaef8acbab0f024919", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd/tp2/public/frontier.csv", + "public_csv_sha256": "c3d7ce76385f348e8082d9aae1449384e9710a2d4c9a0b8b5d36bac28a5f2434", + "requests": 129, + "row_vector_sha256": "51947bb92449fc5be3ecaafb5b0ba08acd848ff5c6cff9a04a66bd3fda74d45e", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 2 + }, + "tp4": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 0.86, + "last_arrival_s": 148.8372093023256, + "output_tokens": [ + 128 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd/tp4/private/real_requests.jsonl", + "private_jsonl_sha256": "90450c8ca24055ed18d3edeb43255380decb7de285ff982b48cb4211775f0326", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd/tp4/public/frontier.csv", + "public_csv_sha256": "c78ced228c0df8a20874f14cc620a4e259a828d9fc876a8dc022fb0280af1591", + "requests": 129, + "row_vector_sha256": "ce55943d20be72c04040e4bbeb0621d529590594dd11e968eefcf788895564a1", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 4 + } + }, + "traces_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-pd", + "winners": { + "e2e_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns16", + "tp2_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 604.4058500071964 + }, + "e2e_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp2_mns64", + "tp1_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8" + ], + "winner": "tp4_mns8", + "winner_value_ms": 610.0081680342555 + }, + "tpot_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns16", + "tp2_mns32", + "tp2_mns8", + "tp2_mns64", + "tp1_mns64", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 4.254808547439789 + }, + "tpot_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns32", + "tp2_mns16", + "tp2_mns8", + "tp2_mns64", + "tp1_mns16", + "tp1_mns64", + "tp1_mns32", + "tp1_mns8" + ], + "winner": "tp4_mns8", + "winner_value_ms": 4.268226101921182 + }, + "ttft_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns16", + "tp4_mns64", + "tp4_mns32", + "tp4_mns8", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64" + ], + "winner": "tp4_mns16", + "winner_value_ms": 63.03574686938565 + }, + "ttft_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns16", + "tp4_mns64", + "tp4_mns8", + "tp4_mns32", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64", + "tp1_mns16" + ], + "winner": "tp4_mns16", + "winner_value_ms": 66.4233659626916 + } + } +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.md new file mode 100644 index 0000000..9edf269 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.md @@ -0,0 +1,12 @@ +# Qwen30 real latency case audit + +Prefill-only: `False`. + +| Objective | Real winner | Value (ms) | +|---|---|---:| +| ttft_ms:pooled_mean_ms | tp4_mns16 | 63.04 | +| ttft_ms:pooled_p90_ms | tp4_mns16 | 66.42 | +| tpot_ms:pooled_mean_ms | tp4_mns32 | 4.25 | +| tpot_ms:pooled_p90_ms | tp4_mns8 | 4.27 | +| e2e_ms:pooled_mean_ms | tp4_mns32 | 604.41 | +| e2e_ms:pooled_p90_ms | tp4_mns8 | 610.01 | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.stdout.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.stdout.json new file mode 100644 index 0000000..01ed58b --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-pd-real-audit.stdout.json @@ -0,0 +1 @@ +{"e2e_ms:pooled_mean_ms": {"ranking": ["tp4_mns32", "tp4_mns8", "tp4_mns64", "tp4_mns16", "tp2_mns16", "tp2_mns8", "tp2_mns32", "tp2_mns64", "tp1_mns64", "tp1_mns16", "tp1_mns32", "tp1_mns8"], "winner": "tp4_mns32", "winner_value_ms": 604.4058500071964}, "e2e_ms:pooled_p90_ms": {"ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp2_mns64", "tp1_mns64", "tp1_mns16", "tp1_mns32", "tp1_mns8"], "winner": "tp4_mns8", "winner_value_ms": 610.0081680342555}, "tpot_ms:pooled_mean_ms": {"ranking": ["tp4_mns32", "tp4_mns8", "tp4_mns64", "tp4_mns16", "tp2_mns16", "tp2_mns32", "tp2_mns8", "tp2_mns64", "tp1_mns64", "tp1_mns32", "tp1_mns16", "tp1_mns8"], "winner": "tp4_mns32", "winner_value_ms": 4.254808547439789}, "tpot_ms:pooled_p90_ms": {"ranking": ["tp4_mns8", "tp4_mns32", "tp4_mns64", "tp4_mns16", "tp2_mns32", "tp2_mns16", "tp2_mns8", "tp2_mns64", "tp1_mns16", "tp1_mns64", "tp1_mns32", "tp1_mns8"], "winner": "tp4_mns8", "winner_value_ms": 4.268226101921182}, "ttft_ms:pooled_mean_ms": {"ranking": ["tp4_mns16", "tp4_mns64", "tp4_mns32", "tp4_mns8", "tp2_mns8", "tp2_mns64", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64"], "winner": "tp4_mns16", "winner_value_ms": 63.03574686938565}, "ttft_ms:pooled_p90_ms": {"ranking": ["tp4_mns16", "tp4_mns64", "tp4_mns8", "tp4_mns32", "tp2_mns8", "tp2_mns64", "tp2_mns32", "tp2_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64", "tp1_mns16"], "winner": "tp4_mns16", "winner_value_ms": 66.4233659626916}} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.json new file mode 100644 index 0000000..40f961a --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.json @@ -0,0 +1,326 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "e2e_ms" + ], + "cells": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp1_mns16/tp1/result.json" + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp1_mns32/tp1/result.json" + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp1_mns64/tp1/result.json" + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + }, + "ttft_ms": { + "mean": 166.66991554923203, + "p90": 166.6699155492779 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp1_mns8/tp1/result.json" + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + }, + "ttft_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp2_mns16/tp2/result.json" + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + }, + "ttft_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp2_mns32/tp2/result.json" + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + }, + "ttft_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp2_mns64/tp2/result.json" + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + }, + "ttft_ms": { + "mean": 118.55592059231998, + "p90": 118.55592059232833 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp2_mns8/tp2/result.json" + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + }, + "ttft_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp4_mns16/tp4/result.json" + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + }, + "ttft_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp4_mns32/tp4/result.json" + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + }, + "ttft_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp4_mns64/tp4/result.json" + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + }, + "ttft_ms": { + "mean": 86.52545838364681, + "p90": 86.52545838364745 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po/runs/tp4_mns8/tp4/result.json" + } + }, + "prefill_only": true, + "real_audit": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/analysis-r6/fixed-po-real-audit.json", + "schema": "qwen30-latency-case-frontier-real-comparison-v1", + "selection": { + "e2e_ms:mean": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.014895639803871355, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "e2e_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.03590282591969048, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "ttft_ms:mean": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.014940997472395743, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "ttft_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.035908453871728634, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + } + }, + "sim_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/fixed-po" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.md new file mode 100644 index 0000000..5237196 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.md @@ -0,0 +1,8 @@ +# Qwen30 Frontier vs real latency selection + +| Objective | Frontier | Real | Match | Regret | Pairwise | +|---|---|---|---:|---:|---:| +| ttft_ms:mean | tp4_mns16 | tp4_mns8 | no | 1.5% | 100.0% | +| ttft_ms:p90 | tp4_mns16 | tp4_mns8 | no | 3.6% | 100.0% | +| e2e_ms:mean | tp4_mns16 | tp4_mns8 | no | 1.5% | 100.0% | +| e2e_ms:p90 | tp4_mns16 | tp4_mns8 | no | 3.6% | 100.0% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.stdout.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.stdout.json new file mode 100644 index 0000000..0a76756 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-comparison.stdout.json @@ -0,0 +1 @@ +{"e2e_ms:mean": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns32", "tp4_mns64", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns32", "tp1_mns16", "tp1_mns8", "tp1_mns64"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.014895639803871355, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": false}, "e2e_ms:p90": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.03590282591969048, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": false}, "ttft_ms:mean": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns32", "tp4_mns64", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns32", "tp1_mns16", "tp1_mns8", "tp1_mns64"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.014940997472395743, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": false}, "ttft_ms:p90": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.035908453871728634, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": false}} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.json new file mode 100644 index 0000000..a4fcbba --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.json @@ -0,0 +1,997 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "e2e_ms" + ], + "case_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po", + "configs": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 151.54830888467202, + "pooled_p90_ms": 152.33826905023307, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.54830888467202, + "trial_stddev_of_means_ms": 0.33839071804993504 + }, + "ttft_ms": { + "pooled_mean_ms": 151.50490087229585, + "pooled_p90_ms": 152.29528304189444, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.50490087229585, + "trial_stddev_of_means_ms": 0.3392777547312034 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 151.25221894176806, + "p90_ms": 152.03110210131854, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.20715750724278, + "p90_ms": 151.9814640050754, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 151.4755454836702, + "p90_ms": 152.21454401034862, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.4332707151915, + "p90_ms": 152.16313605196774, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 151.9171622285778, + "p90_ms": 152.64088998083025, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.87427439445327, + "p90_ms": 152.5908849434927, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 151.4782552960514, + "pooled_p90_ms": 152.49883604701608, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.4782552960514, + "trial_stddev_of_means_ms": 0.5555788512092701 + }, + "ttft_ms": { + "pooled_mean_ms": 151.43368434935846, + "pooled_p90_ms": 152.45853806845844, + "pooled_samples": 387, + "trial_mean_of_means_ms": 151.43368434935846, + "trial_stddev_of_means_ms": 0.5560791927635007 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 151.00544339222762, + "p90_ms": 151.96295792702585, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 150.96285229624618, + "p90_ms": 151.92402398679405, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 151.33915553880178, + "p90_ms": 152.3007940268144, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.29099727893436, + "p90_ms": 152.25290204398334, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 152.09016695712484, + "p90_ms": 152.93943404685706, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.04720347289486, + "p90_ms": 152.89701998699456, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 152.62579285143815, + "pooled_p90_ms": 153.7184970220551, + "pooled_samples": 387, + "trial_mean_of_means_ms": 152.62579285143815, + "trial_stddev_of_means_ms": 0.5522776932799126 + }, + "ttft_ms": { + "pooled_mean_ms": 152.58183204256076, + "pooled_p90_ms": 153.6727879429236, + "pooled_samples": 387, + "trial_mean_of_means_ms": 152.58183204256076, + "trial_stddev_of_means_ms": 0.552880728503269 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 152.98813100463835, + "p90_ms": 153.7133390083909, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.9461515773189, + "p90_ms": 153.67183403577656, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 152.89909483832415, + "p90_ms": 154.20521004125476, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.85368830727253, + "p90_ms": 154.1550400434062, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 151.99015271135195, + "p90_ms": 152.67854696139693, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 151.94565624309084, + "p90_ms": 152.6353599037975, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 152.22744446955332, + "pooled_p90_ms": 152.97825809102505, + "pooled_samples": 387, + "trial_mean_of_means_ms": 152.22744446955332, + "trial_stddev_of_means_ms": 0.15844676271042335 + }, + "ttft_ms": { + "pooled_mean_ms": 152.18195707226792, + "pooled_p90_ms": 152.93638303410262, + "pooled_samples": 387, + "trial_mean_of_means_ms": 152.18195707226792, + "trial_stddev_of_means_ms": 0.1592296957231754 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 152.08507488055747, + "p90_ms": 152.94339996762574, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.04033442473315, + "p90_ms": 152.89624000433832, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 152.3981458541771, + "p90_ms": 153.33553205709904, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.3543132889597, + "p90_ms": 153.2915000570938, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 152.19911267392538, + "p90_ms": 152.6885419152677, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 152.15122350311094, + "p90_ms": 152.64206391293555, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp1_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 97.51495216234325, + "pooled_p90_ms": 98.90919097233564, + "pooled_samples": 387, + "trial_mean_of_means_ms": 97.51495216234325, + "trial_stddev_of_means_ms": 0.41813696851903276 + }, + "ttft_ms": { + "pooled_mean_ms": 97.46812211917545, + "pooled_p90_ms": 98.85558602400124, + "pooled_samples": 387, + "trial_mean_of_means_ms": 97.46812211917545, + "trial_stddev_of_means_ms": 0.41503784318372017 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 97.09843800785814, + "p90_ms": 98.22496003471315, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.05583205674017, + "p90_ms": 98.16953900735825, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 97.93469326682533, + "p90_ms": 99.07599200960249, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.88585422369255, + "p90_ms": 99.02978304307908, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 97.51172521234628, + "p90_ms": 99.18248606845737, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.46268007709364, + "p90_ms": 99.13825406692922, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 97.09498990484747, + "pooled_p90_ms": 98.50096399895847, + "pooled_samples": 387, + "trial_mean_of_means_ms": 97.09498990484747, + "trial_stddev_of_means_ms": 0.27051136106210416 + }, + "ttft_ms": { + "pooled_mean_ms": 97.04873380816761, + "pooled_p90_ms": 98.45811000559479, + "pooled_samples": 387, + "trial_mean_of_means_ms": 97.0487338081676, + "trial_stddev_of_means_ms": 0.27130252759105145 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 96.8018446240372, + "p90_ms": 97.90838800836354, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 96.75326022814035, + "p90_ms": 97.85841300617903, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 97.33497442735373, + "p90_ms": 98.68263697717339, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.28661816668256, + "p90_ms": 98.63975096959621, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 97.14815066315147, + "p90_ms": 98.70580595452338, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.1063230296799, + "p90_ms": 98.66256301756948, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 94.78371690426897, + "pooled_p90_ms": 95.95681494101882, + "pooled_samples": 387, + "trial_mean_of_means_ms": 94.78371690426899, + "trial_stddev_of_means_ms": 0.09464944657839716 + }, + "ttft_ms": { + "pooled_mean_ms": 94.73932527026128, + "pooled_p90_ms": 95.90691793709993, + "pooled_samples": 387, + "trial_mean_of_means_ms": 94.73932527026129, + "trial_stddev_of_means_ms": 0.09810418936504331 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 94.80111797740899, + "p90_ms": 95.66861705388874, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.75897805848297, + "p90_ms": 95.61934601515532, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 94.68157430154149, + "p90_ms": 95.95681494101882, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.63288232525305, + "p90_ms": 95.90691793709993, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 94.86845843385645, + "p90_ms": 96.28609393257648, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.82611542704782, + "p90_ms": 96.24539199285209, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 95.65880776170006, + "pooled_p90_ms": 97.55863400641829, + "pooled_samples": 387, + "trial_mean_of_means_ms": 95.65880776170006, + "trial_stddev_of_means_ms": 1.2232525642643362 + }, + "ttft_ms": { + "pooled_mean_ms": 95.61450884031319, + "pooled_p90_ms": 97.50729007646441, + "pooled_samples": 387, + "trial_mean_of_means_ms": 95.61450884031319, + "trial_stddev_of_means_ms": 1.2245345925842415 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 97.06745062893357, + "p90_ms": 99.17883900925517, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 97.02484949686846, + "p90_ms": 99.13210896775126, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 94.86425999920209, + "p90_ms": 96.06455289758742, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.82164932920259, + "p90_ms": 96.02120891213417, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 95.0447126569645, + "p90_ms": 97.03064302448183, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 94.99702769486855, + "p90_ms": 96.98293695691973, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp2_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 65.28745120113297, + "pooled_p90_ms": 70.42863499373198, + "pooled_samples": 387, + "trial_mean_of_means_ms": 65.28745120113297, + "trial_stddev_of_means_ms": 3.4421132551731515 + }, + "ttft_ms": { + "pooled_mean_ms": 65.24474184372936, + "pooled_p90_ms": 70.38743107113987, + "pooled_samples": 387, + "trial_mean_of_means_ms": 65.24474184372936, + "trial_stddev_of_means_ms": 3.440733102883723 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 64.19509824892405, + "p90_ms": 67.92093603871763, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.15208354917203, + "p90_ms": 67.87848006933928, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 69.1431922154039, + "p90_ms": 78.7114379927516, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 69.09912444791908, + "p90_ms": 78.66681204177439, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 62.524063139070954, + "p90_ms": 63.537837006151676, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 62.48301753409698, + "p90_ms": 63.49677708931267, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 64.54067908164875, + "pooled_p90_ms": 69.61812602821738, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.54067908164875, + "trial_stddev_of_means_ms": 0.8919869576553885 + }, + "ttft_ms": { + "pooled_mean_ms": 64.4944863910101, + "pooled_p90_ms": 69.50995896477252, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.49448639101008, + "trial_stddev_of_means_ms": 0.8942503909647054 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 65.55543364614046, + "p90_ms": 71.84744393453002, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 65.51214804161744, + "p90_ms": 71.80331903509796, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 63.88050908684846, + "p90_ms": 66.97378400713205, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 63.83413878312811, + "p90_ms": 66.91711395978928, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 64.18609451195731, + "p90_ms": 69.55521402414888, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.13717234828474, + "p90_ms": 69.50995896477252, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 65.03269931623949, + "pooled_p90_ms": 68.43663903418928, + "pooled_samples": 387, + "trial_mean_of_means_ms": 65.03269931623947, + "trial_stddev_of_means_ms": 1.1339679108088652 + }, + "ttft_ms": { + "pooled_mean_ms": 64.98623655348516, + "pooled_p90_ms": 68.38861701544374, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.98623655348516, + "trial_stddev_of_means_ms": 1.1341449568113504 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 66.32654335125991, + "p90_ms": 70.97568700555712, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 66.28015979965643, + "p90_ms": 70.93840499874204, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 64.56001544761104, + "p90_ms": 67.99875595606863, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.51422280213225, + "p90_ms": 67.94618198182434, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 64.21153914984748, + "p90_ms": 67.55471904762089, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 64.16432705866679, + "p90_ms": 67.51206307671964, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 64.32922621852013, + "pooled_p90_ms": 67.98768497537822, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.32922621852013, + "trial_stddev_of_means_ms": 1.8052761808674234 + }, + "ttft_ms": { + "pooled_mean_ms": 64.2842707174255, + "pooled_p90_ms": 67.94753996655345, + "pooled_samples": 387, + "trial_mean_of_means_ms": 64.2842707174255, + "trial_stddev_of_means_ms": 1.80289690665978 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 62.84650166739183, + "p90_ms": 63.89774801209569, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 62.80200301792271, + "p90_ms": 63.856702065095305, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 66.3395124548945, + "p90_ms": 70.76063798740506, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 66.29134260132447, + "p90_ms": 70.7101090811193, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 63.801664533274064, + "p90_ms": 67.48319591861218, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 63.759466533029325, + "p90_ms": 67.4400629941374, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/fixed-po/real/tp4_mns8/trial3/results/result.json", + "trial": 3 + } + ] + } + }, + "prefill_only": true, + "schema": "qwen30-latency-case-real-audit-v1", + "trace_manifests": { + "tp1": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 0.215, + "last_arrival_s": 595.3488372093024, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po/tp1/private/real_requests.jsonl", + "private_jsonl_sha256": "ce7582fc13050078a243d7f6adfc2b2e071dbe87b5f760c7bf111af57718ccfb", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po/tp1/public/frontier.csv", + "public_csv_sha256": "e6f1ca0354e9d93c60ff18261ae6e08e2e54dbc888e30e244776f9cc8695a8cf", + "requests": 129, + "row_vector_sha256": "7c8dc7cccd2bd874768c1b06ca40d2327452390577b9907bacb76270b46998fa", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 1 + }, + "tp2": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 0.43, + "last_arrival_s": 297.6744186046512, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po/tp2/private/real_requests.jsonl", + "private_jsonl_sha256": "3fe3c01ac31cd776b2458cafb818d889b20c5e14948154bbd716cce7200c8d5b", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po/tp2/public/frontier.csv", + "public_csv_sha256": "78b900d8f47fec3a1c83b748f82cb9623ce3f0cf08265aa20c3ef1511a4a97e0", + "requests": 129, + "row_vector_sha256": "c9382d9007ea1dc572898836f2d0efb8e2244c4febc1ed59d5aeacfcc5475c0a", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 2 + }, + "tp4": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 0.86, + "last_arrival_s": 148.8372093023256, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po/tp4/private/real_requests.jsonl", + "private_jsonl_sha256": "af3ba5a7888ea5f283bb360dd36f1f455906f69f5ad82cef84e82018545710db", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po/tp4/public/frontier.csv", + "public_csv_sha256": "8b1100ccab34d9dac62b7ff1508d36bdf75aa3c3135e6f6642a0d3ac77af2505", + "requests": 129, + "row_vector_sha256": "a5e4959f28790eaa99a59a1b86c449a4e484967f1e35e47900d1a27fa061607f", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 4 + } + }, + "traces_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/fixed-po", + "winners": { + "e2e_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64" + ], + "winner": "tp4_mns8", + "winner_value_ms": 64.32922621852013 + }, + "e2e_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64" + ], + "winner": "tp4_mns8", + "winner_value_ms": 67.98768497537822 + }, + "ttft_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64" + ], + "winner": "tp4_mns8", + "winner_value_ms": 64.2842707174255 + }, + "ttft_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns8", + "tp1_mns64" + ], + "winner": "tp4_mns8", + "winner_value_ms": 67.94753996655345 + } + } +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.md new file mode 100644 index 0000000..2ffe8bf --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.md @@ -0,0 +1,10 @@ +# Qwen30 real latency case audit + +Prefill-only: `True`. + +| Objective | Real winner | Value (ms) | +|---|---|---:| +| ttft_ms:pooled_mean_ms | tp4_mns8 | 64.28 | +| ttft_ms:pooled_p90_ms | tp4_mns8 | 67.95 | +| e2e_ms:pooled_mean_ms | tp4_mns8 | 64.33 | +| e2e_ms:pooled_p90_ms | tp4_mns8 | 67.99 | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.stdout.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.stdout.json new file mode 100644 index 0000000..282995c --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/fixed-po-real-audit.stdout.json @@ -0,0 +1 @@ +{"e2e_ms:pooled_mean_ms": {"ranking": ["tp4_mns8", "tp4_mns32", "tp4_mns64", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns32", "tp1_mns16", "tp1_mns8", "tp1_mns64"], "winner": "tp4_mns8", "winner_value_ms": 64.32922621852013}, "e2e_ms:pooled_p90_ms": {"ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64"], "winner": "tp4_mns8", "winner_value_ms": 67.98768497537822}, "ttft_ms:pooled_mean_ms": {"ranking": ["tp4_mns8", "tp4_mns32", "tp4_mns64", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns32", "tp1_mns16", "tp1_mns8", "tp1_mns64"], "winner": "tp4_mns8", "winner_value_ms": 64.2842707174255}, "ttft_ms:pooled_p90_ms": {"ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns32", "tp1_mns8", "tp1_mns64"], "winner": "tp4_mns8", "winner_value_ms": 67.94753996655345}} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.json new file mode 100644 index 0000000..2d8bdff --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.json @@ -0,0 +1,326 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "e2e_ms" + ], + "cells": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "mean": 340.75522510609915, + "p90": 832.752247743656 + }, + "ttft_ms": { + "mean": 340.75522510609915, + "p90": 832.752247743656 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp1_mns16/tp1/result.json" + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "mean": 340.75598360435777, + "p90": 832.752247743656 + }, + "ttft_ms": { + "mean": 340.75598360435777, + "p90": 832.752247743656 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp1_mns32/tp1/result.json" + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "mean": 340.7569941487134, + "p90": 832.752247743656 + }, + "ttft_ms": { + "mean": 340.7569941487134, + "p90": 832.752247743656 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp1_mns64/tp1/result.json" + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "mean": 340.75522510609915, + "p90": 832.752247743656 + }, + "ttft_ms": { + "mean": 340.75522510609915, + "p90": 832.752247743656 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp1_mns8/tp1/result.json" + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "mean": 222.73961839402438, + "p90": 513.3421414172687 + }, + "ttft_ms": { + "mean": 222.73961839402438, + "p90": 513.3421414172687 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp2_mns16/tp2/result.json" + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "mean": 222.7393083124536, + "p90": 513.3421414172687 + }, + "ttft_ms": { + "mean": 222.7393083124536, + "p90": 513.3421414172687 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp2_mns32/tp2/result.json" + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "mean": 222.73932355314494, + "p90": 513.3421414172687 + }, + "ttft_ms": { + "mean": 222.73932355314494, + "p90": 513.3421414172687 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp2_mns64/tp2/result.json" + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "mean": 222.73961839402438, + "p90": 513.3421414172687 + }, + "ttft_ms": { + "mean": 222.73961839402438, + "p90": 513.3421414172687 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp2_mns8/tp2/result.json" + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "mean": 164.583607484367, + "p90": 355.93888195481327 + }, + "ttft_ms": { + "mean": 164.583607484367, + "p90": 355.93888195481327 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp4_mns16/tp4/result.json" + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "mean": 164.58396574139448, + "p90": 355.93888195481327 + }, + "ttft_ms": { + "mean": 164.58396574139448, + "p90": 355.93888195481327 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp4_mns32/tp4/result.json" + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "mean": 164.58471606968033, + "p90": 355.93888195481327 + }, + "ttft_ms": { + "mean": 164.58471606968033, + "p90": 355.93888195481327 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp4_mns64/tp4/result.json" + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "mean": 164.583607484367, + "p90": 355.93888195481327 + }, + "ttft_ms": { + "mean": 164.583607484367, + "p90": 355.93888195481327 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po/runs/tp4_mns8/tp4/result.json" + } + }, + "prefill_only": true, + "real_audit": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/analysis-r6/trace-po-real-audit.json", + "schema": "qwen30-latency-case-frontier-real-comparison-v1", + "selection": { + "e2e_ms:mean": { + "agreement": 0.8412698412698413, + "concordant_pairs": 53, + "discordant_pairs": 10, + "informative_pairs": 63, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns8", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns64", + "tp1_mns32", + "tp1_mns8" + ], + "real_winner": "tp4_mns64", + "selected_config_real_regret": 0.0318784105178655, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns32", + "tp2_mns64", + "tp2_mns16", + "tp2_mns8", + "tp1_mns16", + "tp1_mns8", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 3, + "winner_match": false + }, + "e2e_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.0033158177113489728, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "ttft_ms:mean": { + "agreement": 0.8412698412698413, + "concordant_pairs": 53, + "discordant_pairs": 10, + "informative_pairs": 63, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns8", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns64", + "tp1_mns32", + "tp1_mns8" + ], + "real_winner": "tp4_mns64", + "selected_config_real_regret": 0.03187213306057872, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns32", + "tp2_mns64", + "tp2_mns16", + "tp2_mns8", + "tp1_mns16", + "tp1_mns8", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 3, + "winner_match": false + }, + "ttft_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.0037779133092611917, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + } + }, + "sim_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/sim/trace-po" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.md new file mode 100644 index 0000000..12ecc66 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.md @@ -0,0 +1,8 @@ +# Qwen30 Frontier vs real latency selection + +| Objective | Frontier | Real | Match | Regret | Pairwise | +|---|---|---|---:|---:|---:| +| ttft_ms:mean | tp4_mns16 | tp4_mns64 | no | 3.2% | 84.1% | +| ttft_ms:p90 | tp4_mns16 | tp4_mns8 | no | 0.4% | 100.0% | +| e2e_ms:mean | tp4_mns16 | tp4_mns64 | no | 3.2% | 84.1% | +| e2e_ms:p90 | tp4_mns16 | tp4_mns8 | no | 0.3% | 100.0% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.stdout.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.stdout.json new file mode 100644 index 0000000..c28456a --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-comparison.stdout.json @@ -0,0 +1 @@ +{"e2e_ms:mean": {"agreement": 0.8412698412698413, "concordant_pairs": 53, "discordant_pairs": 10, "informative_pairs": 63, "real_ranking": ["tp4_mns64", "tp4_mns32", "tp4_mns8", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns64", "tp1_mns32", "tp1_mns8"], "real_winner": "tp4_mns64", "selected_config_real_regret": 0.0318784105178655, "sim_ranking": ["tp4_mns16", "tp4_mns8", "tp4_mns32", "tp4_mns64", "tp2_mns32", "tp2_mns64", "tp2_mns16", "tp2_mns8", "tp1_mns16", "tp1_mns8", "tp1_mns32", "tp1_mns64"], "sim_winner": "tp4_mns16", "tied_pairs": 3, "winner_match": false}, "e2e_ms:p90": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.0033158177113489728, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": false}, "ttft_ms:mean": {"agreement": 0.8412698412698413, "concordant_pairs": 53, "discordant_pairs": 10, "informative_pairs": 63, "real_ranking": ["tp4_mns64", "tp4_mns32", "tp4_mns8", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns64", "tp1_mns32", "tp1_mns8"], "real_winner": "tp4_mns64", "selected_config_real_regret": 0.03187213306057872, "sim_ranking": ["tp4_mns16", "tp4_mns8", "tp4_mns32", "tp4_mns64", "tp2_mns32", "tp2_mns64", "tp2_mns16", "tp2_mns8", "tp1_mns16", "tp1_mns8", "tp1_mns32", "tp1_mns64"], "sim_winner": "tp4_mns16", "tied_pairs": 3, "winner_match": false}, "ttft_ms:p90": {"agreement": 1.0, "concordant_pairs": 48, "discordant_pairs": 0, "informative_pairs": 48, "real_ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64"], "real_winner": "tp4_mns8", "selected_config_real_regret": 0.0037779133092611917, "sim_ranking": ["tp4_mns16", "tp4_mns32", "tp4_mns64", "tp4_mns8", "tp2_mns16", "tp2_mns32", "tp2_mns64", "tp2_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64", "tp1_mns8"], "sim_winner": "tp4_mns16", "tied_pairs": 18, "winner_match": false}} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.json new file mode 100644 index 0000000..9421973 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.json @@ -0,0 +1,997 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "e2e_ms" + ], + "case_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po", + "configs": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 552.8720716136033, + "pooled_p90_ms": 1849.5772210881114, + "pooled_samples": 387, + "trial_mean_of_means_ms": 552.8720716136035, + "trial_stddev_of_means_ms": 2.521785864921604 + }, + "ttft_ms": { + "pooled_mean_ms": 552.8045099093855, + "pooled_p90_ms": 1849.544870085083, + "pooled_samples": 387, + "trial_mean_of_means_ms": 552.8045099093856, + "trial_stddev_of_means_ms": 2.520195001336989 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 551.4591356410912, + "p90_ms": 1849.5772210881114, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 551.3877547012152, + "p90_ms": 1849.544870085083, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 551.3735196675904, + "p90_ms": 1854.1427809977904, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 551.311527398711, + "p90_ms": 1854.09467399586, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 555.7835595321286, + "p90_ms": 1865.3576440410689, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 555.7142476282306, + "p90_ms": 1865.324669983238, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 553.9655365312751, + "pooled_p90_ms": 1858.5613030008972, + "pooled_samples": 387, + "trial_mean_of_means_ms": 553.9655365312751, + "trial_stddev_of_means_ms": 0.562579474030608 + }, + "ttft_ms": { + "pooled_mean_ms": 553.8995644734638, + "pooled_p90_ms": 1858.5308340843767, + "pooled_samples": 387, + "trial_mean_of_means_ms": 553.8995644734638, + "trial_stddev_of_means_ms": 0.5595598051891147 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 554.533127208002, + "p90_ms": 1863.7738740071654, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 554.4650907711263, + "p90_ms": 1863.7414400000125, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 553.4081058838412, + "p90_ms": 1860.4962331010029, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 553.3461683987488, + "p90_ms": 1860.462275100872, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 553.9553765019821, + "p90_ms": 1858.5613030008972, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 553.8874342505163, + "p90_ms": 1858.5308340843767, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 553.5116215725009, + "pooled_p90_ms": 1862.3707490041852, + "pooled_samples": 387, + "trial_mean_of_means_ms": 553.5116215725008, + "trial_stddev_of_means_ms": 2.551946974085908 + }, + "ttft_ms": { + "pooled_mean_ms": 553.4431933351968, + "pooled_p90_ms": 1862.3419440118596, + "pooled_samples": 387, + "trial_mean_of_means_ms": 553.4431933351968, + "trial_stddev_of_means_ms": 2.558476651513527 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 551.9927626163446, + "p90_ms": 1863.004481070675, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 551.9189011646695, + "p90_ms": 1862.9671899834648, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 556.4578829970312, + "p90_ms": 1876.7878300277516, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 556.3969604667392, + "p90_ms": 1876.7514559440315, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 552.0842191041266, + "p90_ms": 1862.3707490041852, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 552.0137183741818, + "p90_ms": 1862.3419440118596, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 554.3623829256859, + "pooled_p90_ms": 1849.5380710810423, + "pooled_samples": 387, + "trial_mean_of_means_ms": 554.3623829256859, + "trial_stddev_of_means_ms": 1.2895027720806873 + }, + "ttft_ms": { + "pooled_mean_ms": 554.2973810096947, + "pooled_p90_ms": 1849.499023053795, + "pooled_samples": 387, + "trial_mean_of_means_ms": 554.2973810096947, + "trial_stddev_of_means_ms": 1.2879745625238963 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 552.8872783905863, + "p90_ms": 1849.5380710810423, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 552.8246594192243, + "p90_ms": 1849.499023053795, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 555.2756262775293, + "p90_ms": 1865.9542039968073, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 555.2131765045572, + "p90_ms": 1865.9242549911141, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 554.9242441089419, + "p90_ms": 1863.5734919225797, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 554.8543071053027, + "p90_ms": 1863.5354900034145, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp1_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 354.36655512622264, + "pooled_p90_ms": 1137.23775499966, + "pooled_samples": 387, + "trial_mean_of_means_ms": 354.36655512622264, + "trial_stddev_of_means_ms": 1.8755237488897505 + }, + "ttft_ms": { + "pooled_mean_ms": 354.2987044818834, + "pooled_p90_ms": 1137.2028539190069, + "pooled_samples": 387, + "trial_mean_of_means_ms": 354.29870448188336, + "trial_stddev_of_means_ms": 1.8738441773930947 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 352.474492817554, + "p90_ms": 1146.7004970181733, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 352.4049650534785, + "p90_ms": 1146.5505469823256, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 356.2250907998532, + "p90_ms": 1142.300286097452, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 356.1519986188198, + "p90_ms": 1142.2789900097996, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 354.40008176126076, + "p90_ms": 1137.23775499966, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 354.3391497733519, + "p90_ms": 1137.2028539190069, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 353.6182792498718, + "pooled_p90_ms": 1133.6436610436067, + "pooled_samples": 387, + "trial_mean_of_means_ms": 353.6182792498718, + "trial_stddev_of_means_ms": 1.6113304304047518 + }, + "ttft_ms": { + "pooled_mean_ms": 353.5506138878872, + "pooled_p90_ms": 1133.6100719636306, + "pooled_samples": 387, + "trial_mean_of_means_ms": 353.5506138878872, + "trial_stddev_of_means_ms": 1.6067873099412449 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 355.363455723769, + "p90_ms": 1137.4261770397425, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 355.2912532689425, + "p90_ms": 1137.4054140178487, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 353.3043994003358, + "p90_ms": 1133.6436610436067, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 353.2365282921684, + "p90_ms": 1133.6100719636306, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 352.1869826255106, + "p90_ms": 1137.214289046824, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 352.12406010255074, + "p90_ms": 1137.1923619881272, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 344.2724434967521, + "pooled_p90_ms": 1112.3684010235593, + "pooled_samples": 387, + "trial_mean_of_means_ms": 344.27244349675215, + "trial_stddev_of_means_ms": 1.2293359433030469 + }, + "ttft_ms": { + "pooled_mean_ms": 344.2076703236325, + "pooled_p90_ms": 1112.340173101984, + "pooled_samples": 387, + "trial_mean_of_means_ms": 344.20767032363256, + "trial_stddev_of_means_ms": 1.2250537007477627 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 342.85445375793955, + "p90_ms": 1112.3684010235593, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 342.79442101431823, + "p90_ms": 1112.340173101984, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 345.03840929702244, + "p90_ms": 1119.2332479404286, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 344.96722287271, + "p90_ms": 1119.2107619717717, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 344.92446743529433, + "p90_ms": 1121.5684060007334, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 344.86136708386937, + "p90_ms": 1121.5376510517672, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 347.7476487716525, + "pooled_p90_ms": 1112.5693990616128, + "pooled_samples": 387, + "trial_mean_of_means_ms": 347.74764877165256, + "trial_stddev_of_means_ms": 0.717530137997859 + }, + "ttft_ms": { + "pooled_mean_ms": 347.67954972228495, + "pooled_p90_ms": 1112.5206090509892, + "pooled_samples": 387, + "trial_mean_of_means_ms": 347.67954972228495, + "trial_stddev_of_means_ms": 0.7137879732940912 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 347.8964949396706, + "p90_ms": 1126.5470329672098, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 347.825654325718, + "p90_ms": 1126.4982499415055, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 348.37908198508296, + "p90_ms": 1108.5135659668595, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 348.3089811246221, + "p90_ms": 1108.4930589422584, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 346.967369390204, + "p90_ms": 1112.5693990616128, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 346.90401371651467, + "p90_ms": 1112.5206090509892, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp2_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 230.30740981957652, + "pooled_p90_ms": 669.3113599903882, + "pooled_samples": 387, + "trial_mean_of_means_ms": 230.30740981957652, + "trial_stddev_of_means_ms": 2.164263687280578 + }, + "ttft_ms": { + "pooled_mean_ms": 230.23591205587212, + "pooled_p90_ms": 669.2857249872759, + "pooled_samples": 387, + "trial_mean_of_means_ms": 230.2359120558721, + "trial_stddev_of_means_ms": 2.1675472527430966 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 230.70611610156737, + "p90_ms": 682.0242760004476, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 230.64041384333356, + "p90_ms": 681.8402550416067, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 232.2445988110014, + "p90_ms": 669.8487129760906, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 232.17271348053603, + "p90_ms": 669.6453359909356, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 227.9715145461608, + "p90_ms": 668.2263769907877, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 227.89460884374674, + "p90_ms": 667.8900560364127, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 227.01489424738475, + "pooled_p90_ms": 668.1078639812768, + "pooled_samples": 387, + "trial_mean_of_means_ms": 227.01489424738475, + "trial_stddev_of_means_ms": 1.0302265785061928 + }, + "ttft_ms": { + "pooled_mean_ms": 226.9508410934046, + "pooled_p90_ms": 668.0838000029325, + "pooled_samples": 387, + "trial_mean_of_means_ms": 226.9508410934046, + "trial_stddev_of_means_ms": 1.0309199236641802 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 227.36105044253256, + "p90_ms": 668.9074879977852, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 227.29304120623212, + "p90_ms": 668.8842560397461, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 227.82746249586054, + "p90_ms": 668.1078639812768, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 227.7671468305192, + "p90_ms": 668.0838000029325, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 225.8561698037611, + "p90_ms": 668.5177159961313, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 225.79233524346247, + "p90_ms": 668.1753649609163, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 223.1923911500318, + "pooled_p90_ms": 668.0814319988713, + "pooled_samples": 387, + "trial_mean_of_means_ms": 223.1923911500318, + "trial_stddev_of_means_ms": 1.0834054130133073 + }, + "ttft_ms": { + "pooled_mean_ms": 223.12445959072676, + "pooled_p90_ms": 668.0591680342332, + "pooled_samples": 387, + "trial_mean_of_means_ms": 223.1244595907268, + "trial_stddev_of_means_ms": 1.078830920161661 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 224.0322316110553, + "p90_ms": 668.6453759903088, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 223.96008559961103, + "p90_ms": 668.1041569681838, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 223.57544556978453, + "p90_ms": 697.0440980512649, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 223.50675472538455, + "p90_ms": 697.0191639848053, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 221.96949626925553, + "p90_ms": 668.0814319988713, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 221.9065384471847, + "p90_ms": 668.0591680342332, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 229.07142115104702, + "pooled_p90_ms": 667.0993800507858, + "pooled_samples": 387, + "trial_mean_of_means_ms": 229.07142115104702, + "trial_stddev_of_means_ms": 1.6982436653662605 + }, + "ttft_ms": { + "pooled_mean_ms": 229.00724306236953, + "pooled_p90_ms": 666.7667380534112, + "pooled_samples": 387, + "trial_mean_of_means_ms": 229.00724306236953, + "trial_stddev_of_means_ms": 1.6999412520227009 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 227.73505919955872, + "p90_ms": 667.3817320261151, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 227.67112628275225, + "p90_ms": 667.0240580569953, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 230.98243522013775, + "p90_ms": 667.0993800507858, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 230.92065048909407, + "p90_ms": 666.7667380534112, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 228.4967690334446, + "p90_ms": 667.9027479840443, + "samples": 129 + }, + "ttft_ms": { + "mean_ms": 228.42995241526225, + "p90_ms": 667.7060039946809, + "samples": 129 + } + }, + "requests": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/real-r6/trace-po/real/tp4_mns8/trial3/results/result.json", + "trial": 3 + } + ] + } + }, + "prefill_only": true, + "schema": "qwen30-latency-case-real-audit-v1", + "trace_manifests": { + "tp1": { + "description": "trace-derived: exact input/arrival/session/prefix; output override only", + "first_arrival_s": 6.698, + "global_offered_request_rate": 0.215, + "last_arrival_s": 597.037, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": true, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po/tp1/private/real_requests.jsonl", + "private_jsonl_sha256": "525bf779bbd111bc3c42ac65af5cfed36ce59806acc521ee16d1c5ce7b3a6152", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po/tp1/public/frontier.csv", + "public_csv_sha256": "eccab2e2f50f566eb4ec78291d126fce5fe9cb426eb89993c1b63b18f83dfc29", + "requests": 129, + "row_vector_sha256": "3df3a57e6a796e76d42f846fbfef59049f2bd804f4d3eda8ecbc9d96b43dc6ce", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 1 + }, + "tp2": { + "description": "trace-derived: exact input/arrival/session/prefix; output override only", + "first_arrival_s": 3.349, + "global_offered_request_rate": 0.43, + "last_arrival_s": 298.5185, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": true, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po/tp2/private/real_requests.jsonl", + "private_jsonl_sha256": "61bdb8a7245426a7c283d0f2944657d3eda46b1c04998c88b025a2411fe15340", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po/tp2/public/frontier.csv", + "public_csv_sha256": "26701486cfb655a301b129acd14ab8d78b94ec843b4ceca8e222cee466e40535", + "requests": 129, + "row_vector_sha256": "f20dd473240fd243d38cb727f7896457e86da9e965b4f23f565aef5f3fc70351", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 2 + }, + "tp4": { + "description": "trace-derived: exact input/arrival/session/prefix; output override only", + "first_arrival_s": 1.6745, + "global_offered_request_rate": 0.86, + "last_arrival_s": 149.25925, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 0.215, + "prefix_caching": true, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po/tp4/private/real_requests.jsonl", + "private_jsonl_sha256": "c38514fa524fc215cd9097d990a2985532f83ac6314bc46ad89ebfc1bd89b4f8", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po/tp4/public/frontier.csv", + "public_csv_sha256": "f4112a2b0366b559bfced6a0986a01e2b7b39899a650d030c3e680b3dc63c92e", + "requests": 129, + "row_vector_sha256": "851e796f6d3e87444b58da87e0ef4b7482a13bb6502cb6873fa80523877ab74e", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 4 + } + }, + "traces_root": "/home/admin/cpfs/wjh/aituner/qwen30-latency-expansion-20260718-r2/traces/trace-po", + "winners": { + "e2e_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns8", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns64", + "tp1_mns32", + "tp1_mns8" + ], + "winner": "tp4_mns64", + "winner_value_ms": 223.1923911500318 + }, + "e2e_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "winner": "tp4_mns8", + "winner_value_ms": 667.0993800507858 + }, + "ttft_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns8", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns16", + "tp1_mns64", + "tp1_mns32", + "tp1_mns8" + ], + "winner": "tp4_mns64", + "winner_value_ms": 223.12445959072676 + }, + "ttft_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "winner": "tp4_mns8", + "winner_value_ms": 666.7667380534112 + } + } +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.md new file mode 100644 index 0000000..fee21bb --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.md @@ -0,0 +1,10 @@ +# Qwen30 real latency case audit + +Prefill-only: `True`. + +| Objective | Real winner | Value (ms) | +|---|---|---:| +| ttft_ms:pooled_mean_ms | tp4_mns64 | 223.12 | +| ttft_ms:pooled_p90_ms | tp4_mns8 | 666.77 | +| e2e_ms:pooled_mean_ms | tp4_mns64 | 223.19 | +| e2e_ms:pooled_p90_ms | tp4_mns8 | 667.10 | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.stdout.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.stdout.json new file mode 100644 index 0000000..a5cdce0 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-expansion-lo/trace-po-real-audit.stdout.json @@ -0,0 +1 @@ +{"e2e_ms:pooled_mean_ms": {"ranking": ["tp4_mns64", "tp4_mns32", "tp4_mns8", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns64", "tp1_mns32", "tp1_mns8"], "winner": "tp4_mns64", "winner_value_ms": 223.1923911500318}, "e2e_ms:pooled_p90_ms": {"ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64"], "winner": "tp4_mns8", "winner_value_ms": 667.0993800507858}, "ttft_ms:pooled_mean_ms": {"ranking": ["tp4_mns64", "tp4_mns32", "tp4_mns8", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns16", "tp1_mns64", "tp1_mns32", "tp1_mns8"], "winner": "tp4_mns64", "winner_value_ms": 223.12445959072676}, "ttft_ms:pooled_p90_ms": {"ranking": ["tp4_mns8", "tp4_mns64", "tp4_mns32", "tp4_mns16", "tp2_mns64", "tp2_mns8", "tp2_mns32", "tp2_mns16", "tp1_mns8", "tp1_mns16", "tp1_mns32", "tp1_mns64"], "winner": "tp4_mns8", "winner_value_ms": 666.7667380534112}} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.json new file mode 100644 index 0000000..c370177 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.json @@ -0,0 +1,453 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "tpot_ms", + "e2e_ms" + ], + "cells": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "mean": 128201.44370110576, + "p90": 216221.8716312423 + }, + "tpot_ms": { + "mean": 106.74127671151493, + "p90": 107.53204073371177 + }, + "ttft_ms": { + "mean": 100982.41813966946, + "p90": 188801.20124415262 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp1_mns16/tp1/result.json" + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "mean": 54134.6392206195, + "p90": 70757.16788718625 + }, + "tpot_ms": { + "mean": 131.73148052557949, + "p90": 134.09269340154515 + }, + "ttft_ms": { + "mean": 20543.111686596734, + "p90": 40978.20939546926 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp1_mns32/tp1/result.json" + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "mean": 36992.839178769755, + "p90": 38253.17393690583 + }, + "tpot_ms": { + "mean": 143.73592141724885, + "p90": 148.50084455017992 + }, + "ttft_ms": { + "mean": 340.1792173712992, + "p90": 390.1667904730175 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp1_mns64/tp1/result.json" + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "mean": 231355.5665072295, + "p90": 401099.3133242681 + }, + "tpot_ms": { + "mean": 79.72075104221494, + "p90": 80.05841803805441 + }, + "ttft_ms": { + "mean": 211026.77499146466, + "p90": 380684.4167245642 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp1_mns8/tp1/result.json" + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "mean": 99415.72204671855, + "p90": 170023.18522015438 + }, + "tpot_ms": { + "mean": 69.3294093088488, + "p90": 69.78173796567563 + }, + "ttft_ms": { + "mean": 81736.72267296212, + "p90": 152228.84203890432 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp2_mns16/tp2/result.json" + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "mean": 47656.99443299207, + "p90": 71358.22494490076 + }, + "tpot_ms": { + "mean": 83.38213205445625, + "p90": 84.68169232450846 + }, + "ttft_ms": { + "mean": 26394.55075910572, + "p90": 52520.58767404907 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp2_mns32/tp2/result.json" + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "mean": 25800.137969948584, + "p90": 26994.699921135867 + }, + "tpot_ms": { + "mean": 100.27798158873513, + "p90": 104.85288258852235 + }, + "ttft_ms": { + "mean": 229.2526648211283, + "p90": 261.37367146904467 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp2_mns64/tp2/result.json" + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "mean": 173225.23923299377, + "p90": 301133.20586389 + }, + "tpot_ms": { + "mean": 53.275061700270285, + "p90": 53.466591976089035 + }, + "ttft_ms": { + "mean": 159640.09849942484, + "p90": 287499.22490998777 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp2_mns8/tp2/result.json" + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "mean": 77014.8840236653, + "p90": 132893.6304418779 + }, + "tpot_ms": { + "mean": 46.95641974752248, + "p90": 47.23194326182317 + }, + "ttft_ms": { + "mean": 65040.99698804708, + "p90": 120849.48491011641 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp4_mns16/tp4/result.json" + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "mean": 41823.75653856865, + "p90": 66900.19803040712 + }, + "tpot_ms": { + "mean": 56.89199563649036, + "p90": 57.75799749592927 + }, + "ttft_ms": { + "mean": 27316.2976512636, + "p90": 54230.649753904916 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp4_mns32/tp4/result.json" + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "mean": 24104.231142330624, + "p90": 29174.179941975835 + }, + "tpot_ms": { + "mean": 69.02049776725552, + "p90": 72.06184134879742 + }, + "ttft_ms": { + "mean": 6504.004211680465, + "p90": 13004.945097644395 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp4_mns64/tp4/result.json" + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "mean": 133968.39678804282, + "p90": 233355.7233519645 + }, + "tpot_ms": { + "mean": 37.645089303294014, + "p90": 37.75522144488961 + }, + "ttft_ms": { + "mean": 124368.89901570287, + "p90": 223728.14188352478 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd/runs/tp4_mns8/tp4/result.json" + } + }, + "prefill_only": false, + "real_audit": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/analysis/fixed-pd/real-audit.json", + "schema": "qwen30-latency-case-frontier-real-comparison-v1", + "selection": { + "e2e_ms:mean": { + "agreement": 0.5151515151515151, + "concordant_pairs": 34, + "discordant_pairs": 32, + "informative_pairs": 66, + "real_ranking": [ + "tp1_mns32", + "tp4_mns32", + "tp1_mns16", + "tp1_mns8", + "tp4_mns16", + "tp4_mns64", + "tp1_mns64", + "tp2_mns8", + "tp2_mns64", + "tp2_mns16", + "tp2_mns32", + "tp4_mns8" + ], + "real_winner": "tp1_mns32", + "selected_config_real_regret": 0.017005214686575575, + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns32", + "tp4_mns16", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": false + }, + "e2e_ms:p90": { + "agreement": 0.5151515151515151, + "concordant_pairs": 34, + "discordant_pairs": 32, + "informative_pairs": 66, + "real_ranking": [ + "tp1_mns32", + "tp1_mns8", + "tp1_mns16", + "tp1_mns64", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp4_mns8" + ], + "real_winner": "tp1_mns32", + "selected_config_real_regret": 0.054933980018932745, + "sim_ranking": [ + "tp2_mns64", + "tp4_mns64", + "tp1_mns64", + "tp4_mns32", + "tp1_mns32", + "tp2_mns32", + "tp4_mns16", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp2_mns64", + "tied_pairs": 0, + "winner_match": false + }, + "tpot_ms:mean": { + "agreement": 0.48484848484848486, + "concordant_pairs": 32, + "discordant_pairs": 34, + "informative_pairs": 66, + "real_ranking": [ + "tp4_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64", + "tp4_mns32", + "tp2_mns8", + "tp4_mns16", + "tp4_mns64", + "tp2_mns64", + "tp2_mns16", + "tp2_mns32" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.0, + "sim_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns16", + "tp1_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns8", + "tied_pairs": 0, + "winner_match": true + }, + "tpot_ms:p90": { + "agreement": 0.42424242424242425, + "concordant_pairs": 28, + "discordant_pairs": 38, + "informative_pairs": 66, + "real_ranking": [ + "tp4_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64", + "tp2_mns8", + "tp4_mns32", + "tp2_mns64", + "tp4_mns64", + "tp4_mns16", + "tp2_mns32", + "tp2_mns16" + ], + "real_winner": "tp4_mns8", + "selected_config_real_regret": 0.0, + "sim_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp4_mns32", + "tp2_mns16", + "tp4_mns64", + "tp1_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns8", + "tied_pairs": 0, + "winner_match": true + }, + "ttft_ms:mean": { + "agreement": 0.5909090909090909, + "concordant_pairs": 39, + "discordant_pairs": 27, + "informative_pairs": 66, + "real_ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp4_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.5797674051508896, + "sim_ranking": [ + "tp2_mns64", + "tp1_mns64", + "tp4_mns64", + "tp1_mns32", + "tp2_mns32", + "tp4_mns32", + "tp4_mns16", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp2_mns64", + "tied_pairs": 0, + "winner_match": false + }, + "ttft_ms:p90": { + "agreement": 0.5909090909090909, + "concordant_pairs": 39, + "discordant_pairs": 27, + "informative_pairs": 66, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns16", + "tp2_mns32", + "tp1_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "selected_config_real_regret": 0.5620663582204116, + "sim_ranking": [ + "tp2_mns64", + "tp1_mns64", + "tp4_mns64", + "tp1_mns32", + "tp2_mns32", + "tp4_mns32", + "tp4_mns16", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp2_mns64", + "tied_pairs": 0, + "winner_match": false + } + }, + "sim_root": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-pd" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.md new file mode 100644 index 0000000..a53acbe --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/comparison.md @@ -0,0 +1,10 @@ +# Qwen30 Frontier vs real latency selection + +| Objective | Frontier | Real | Match | Regret | Pairwise | +|---|---|---|---:|---:|---:| +| ttft_ms:mean | tp2_mns64 | tp4_mns32 | no | 58.0% | 59.1% | +| ttft_ms:p90 | tp2_mns64 | tp4_mns64 | no | 56.2% | 59.1% | +| tpot_ms:mean | tp4_mns8 | tp4_mns8 | yes | 0.0% | 48.5% | +| tpot_ms:p90 | tp4_mns8 | tp4_mns8 | yes | 0.0% | 42.4% | +| e2e_ms:mean | tp4_mns64 | tp1_mns32 | no | 1.7% | 51.5% | +| e2e_ms:p90 | tp2_mns64 | tp1_mns32 | no | 5.5% | 51.5% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.json new file mode 100644 index 0000000..035bf0b --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.json @@ -0,0 +1,1298 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "tpot_ms", + "e2e_ms" + ], + "case_root": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd", + "configs": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3244.8699812067493, + "pooled_p90_ms": 3425.266431993805, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3244.8699812067493, + "trial_stddev_of_means_ms": 54.58553425230737 + }, + "tpot_ms": { + "pooled_mean_ms": 11.469757659740084, + "pooled_p90_ms": 12.171326144872342, + "pooled_samples": 771, + "trial_mean_of_means_ms": 11.469757659740083, + "trial_stddev_of_means_ms": 0.21211086007491214 + }, + "ttft_ms": { + "pooled_mean_ms": 320.0479193761807, + "pooled_p90_ms": 323.83561704773456, + "pooled_samples": 771, + "trial_mean_of_means_ms": 320.0479193761807, + "trial_stddev_of_means_ms": 1.3881860518161795 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3193.4511822196273, + "p90_ms": 3384.1337399790064, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.273388112562651, + "p90_ms": 12.023557262842123, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 318.70415179214734, + "p90_ms": 322.2650409443304, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3239.0094443264234, + "p90_ms": 3415.5735310632735, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.441173873868195, + "p90_ms": 12.136339439152211, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 321.4766235065425, + "p90_ms": 325.45425510033965, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3302.1493170741974, + "p90_ms": 3488.414889900014, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.694710992789403, + "p90_ms": 12.419273937577564, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 319.96298282985225, + "p90_ms": 323.75812309328467, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3203.7226679738205, + "pooled_p90_ms": 3389.1853449167684, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3203.722667973821, + "trial_stddev_of_means_ms": 37.62095572231703 + }, + "tpot_ms": { + "pooled_mean_ms": 11.31386031557959, + "pooled_p90_ms": 12.033569831035885, + "pooled_samples": 771, + "trial_mean_of_means_ms": 11.31386031557959, + "trial_stddev_of_means_ms": 0.13821363848478146 + }, + "ttft_ms": { + "pooled_mean_ms": 318.65480573091116, + "pooled_p90_ms": 322.9008379857987, + "pooled_samples": 771, + "trial_mean_of_means_ms": 318.65480573091116, + "trial_stddev_of_means_ms": 2.378102510617389 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3163.616114210406, + "p90_ms": 3361.8536689318717, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.166290408409983, + "p90_ms": 11.937463062577972, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 316.1799317087203, + "p90_ms": 320.07085403893143, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3238.2305139731907, + "p90_ms": 3415.6174729578197, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.440279400074546, + "p90_ms": 12.137762799986875, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 320.92259243105315, + "p90_ms": 324.3406399851665, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3209.3213757378653, + "p90_ms": 3402.1775929722935, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.33501113825424, + "p90_ms": 12.083764478345127, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 318.86189305296, + "p90_ms": 322.42463901638985, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3260.1686794512834, + "pooled_p90_ms": 3455.085408058949, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3260.168679451284, + "trial_stddev_of_means_ms": 40.661689073362574 + }, + "tpot_ms": { + "pooled_mean_ms": 11.527938706280123, + "pooled_p90_ms": 12.289238744871874, + "pooled_samples": 771, + "trial_mean_of_means_ms": 11.52793870628012, + "trial_stddev_of_means_ms": 0.15742476320695403 + }, + "ttft_ms": { + "pooled_mean_ms": 320.50949874761045, + "pooled_p90_ms": 324.3287180084735, + "pooled_samples": 771, + "trial_mean_of_means_ms": 320.50949874761045, + "trial_stddev_of_means_ms": 1.1136627349407815 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3238.780882805658, + "p90_ms": 3410.9200169332325, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.449106841169336, + "p90_ms": 12.123953999823653, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 319.22388932548085, + "p90_ms": 322.88106298074126, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3307.060569075864, + "p90_ms": 3503.4443179611117, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.709205648183815, + "p90_ms": 12.485718306190535, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 321.1778181112201, + "p90_ms": 324.64756595436484, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3234.6645864723287, + "p90_ms": 3445.0729619711637, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.425503629487213, + "p90_ms": 12.253773529721679, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 321.1267888061304, + "p90_ms": 324.92771092802286, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3245.776986038003, + "pooled_p90_ms": 3423.4000670257956, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3245.776986038003, + "trial_stddev_of_means_ms": 56.42282161792048 + }, + "tpot_ms": { + "pooled_mean_ms": 11.482428719576262, + "pooled_p90_ms": 12.175601455109085, + "pooled_samples": 771, + "trial_mean_of_means_ms": 11.482428719576262, + "trial_stddev_of_means_ms": 0.2240148980484202 + }, + "ttft_ms": { + "pooled_mean_ms": 317.7225427747669, + "pooled_p90_ms": 322.28669500909746, + "pooled_samples": 771, + "trial_mean_of_means_ms": 317.7225427747669, + "trial_stddev_of_means_ms": 2.390798892755192 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3182.410548419822, + "p90_ms": 3377.4496220285073, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.228627621663684, + "p90_ms": 11.996991521514515, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 319.07594205896777, + "p90_ms": 322.90874095633626, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3290.577206677297, + "p90_ms": 3467.5696010235697, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.652589256644216, + "p90_ms": 12.3542864939344, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 319.1296262616755, + "p90_ms": 322.9702590033412, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3264.34320301689, + "p90_ms": 3448.5452079679817, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 11.566069280420887, + "p90_ms": 12.271564404078413, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 314.96206000365737, + "p90_ms": 318.7974439933896, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp1_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3894.695937868006, + "pooled_p90_ms": 4727.010502945632, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3894.6959378680062, + "trial_stddev_of_means_ms": 321.92084658162594 + }, + "tpot_ms": { + "pooled_mean_ms": 14.481473999748076, + "pooled_p90_ms": 17.730250070784606, + "pooled_samples": 771, + "trial_mean_of_means_ms": 14.481473999748076, + "trial_stddev_of_means_ms": 1.2582346470555563 + }, + "ttft_ms": { + "pooled_mean_ms": 201.88473135410493, + "pooled_p90_ms": 207.47957099229097, + "pooled_samples": 771, + "trial_mean_of_means_ms": 201.88473135410493, + "trial_stddev_of_means_ms": 1.1331300161517917 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3589.8835412693184, + "p90_ms": 4331.327080959454, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 13.28914437973162, + "p90_ms": 16.179336294276165, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 201.11680352527662, + "p90_ms": 206.07955392915756, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 4231.357620817479, + "p90_ms": 4734.955659951083, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 15.796608200603078, + "p90_ms": 17.764389682469854, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 203.18613669487144, + "p90_ms": 208.71902198996395, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3862.846651517221, + "p90_ms": 4734.006996965036, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 14.35866941890953, + "p90_ms": 17.76524113317696, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 201.35125384216673, + "p90_ms": 206.80058794096112, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3990.0007042352863, + "pooled_p90_ms": 4719.314776011743, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3990.0007042352863, + "trial_stddev_of_means_ms": 337.87670595445104 + }, + "tpot_ms": { + "pooled_mean_ms": 14.855925269877513, + "pooled_p90_ms": 17.70052198393672, + "pooled_samples": 771, + "trial_mean_of_means_ms": 14.855925269877515, + "trial_stddev_of_means_ms": 1.318249751801272 + }, + "ttft_ms": { + "pooled_mean_ms": 201.7057607532932, + "pooled_p90_ms": 207.7565270010382, + "pooled_samples": 771, + "trial_mean_of_means_ms": 201.70576075329322, + "trial_stddev_of_means_ms": 1.7268857493870262 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 4231.524751395266, + "p90_ms": 4735.202983021736, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 15.798723248864277, + "p90_ms": 17.75633337651836, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 202.81657537468982, + "p90_ms": 208.523430977948, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3603.8893459863953, + "p90_ms": 4285.463593085296, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 13.349571505411829, + "p90_ms": 16.020474662346874, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 199.7162326146642, + "p90_ms": 204.20879207085818, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 4134.588015324197, + "p90_ms": 4732.604659046046, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 15.419481055356435, + "p90_ms": 17.74456359208653, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 202.58447427052556, + "p90_ms": 208.65151204634458, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3354.8816545874283, + "pooled_p90_ms": 3575.366784934886, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3354.8816545874283, + "trial_stddev_of_means_ms": 72.1597865775507 + }, + "tpot_ms": { + "pooled_mean_ms": 12.393283087182931, + "pooled_p90_ms": 13.247703140893696, + "pooled_samples": 771, + "trial_mean_of_means_ms": 12.393283087182931, + "trial_stddev_of_means_ms": 0.2814906609729632 + }, + "ttft_ms": { + "pooled_mean_ms": 194.56193759030603, + "pooled_p90_ms": 198.1358069460839, + "pooled_samples": 771, + "trial_mean_of_means_ms": 194.56193759030603, + "trial_stddev_of_means_ms": 0.3780334869245422 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3309.949615624179, + "p90_ms": 3545.9875999949872, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.218028092730933, + "p90_ms": 13.146208078308286, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 194.32007442482163, + "p90_ms": 197.8240980533883, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3316.578695923362, + "p90_ms": 3547.178103006445, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.243842540580335, + "p90_ms": 13.162248380317846, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 194.3681693571558, + "p90_ms": 197.80025607906282, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3438.1166522147437, + "p90_ms": 3960.4067360050976, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.71797862823753, + "p90_ms": 14.748573207807745, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 194.99756898894066, + "p90_ms": 198.64740199409425, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3300.440718642715, + "pooled_p90_ms": 3546.2497010594234, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3300.4407186427147, + "trial_stddev_of_means_ms": 5.520242664690669 + }, + "tpot_ms": { + "pooled_mean_ms": 12.177555298535195, + "pooled_p90_ms": 13.137051212035265, + "pooled_samples": 771, + "trial_mean_of_means_ms": 12.177555298535195, + "trial_stddev_of_means_ms": 0.02014276811960413 + }, + "ttft_ms": { + "pooled_mean_ms": 195.13009636540295, + "pooled_p90_ms": 198.6226630397141, + "pooled_samples": 771, + "trial_mean_of_means_ms": 195.13009636540292, + "trial_stddev_of_means_ms": 0.6728905571074729 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3302.7315898458673, + "p90_ms": 3547.509171999991, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.188114766245736, + "p90_ms": 13.144916544814466, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 194.72804888747706, + "p90_ms": 198.29899398609996, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3304.4466916761626, + "p90_ms": 3553.687784005888, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.190222830175609, + "p90_ms": 13.150935062645551, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 195.90692395201236, + "p90_ms": 199.7501190053299, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3294.143874406115, + "p90_ms": 3543.0204999865964, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.154328299184236, + "p90_ms": 13.12024300397538, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 194.75531625671942, + "p90_ms": 198.02888797130436, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp2_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3252.7993474094965, + "pooled_p90_ms": 3511.0875230748206, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3252.7993474094965, + "trial_stddev_of_means_ms": 13.124080948502684 + }, + "tpot_ms": { + "pooled_mean_ms": 12.267737219892378, + "pooled_p90_ms": 13.2822172821262, + "pooled_samples": 771, + "trial_mean_of_means_ms": 12.26773721989238, + "trial_stddev_of_means_ms": 0.04262875248570821 + }, + "ttft_ms": { + "pooled_mean_ms": 124.49453797538061, + "pooled_p90_ms": 127.14553298428655, + "pooled_samples": 771, + "trial_mean_of_means_ms": 124.4945379753806, + "trial_stddev_of_means_ms": 2.4015198039164893 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3266.5248520723053, + "p90_ms": 3540.4481209116057, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.310757102663121, + "p90_ms": 13.360472113423635, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 127.24864069084322, + "p90_ms": 131.06893200892955, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3240.373377299121, + "p90_ms": 3492.592430091463, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.225510671562784, + "p90_ms": 13.21439097279354, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 122.83733301136483, + "p90_ms": 126.26808194909245, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3251.4998128570633, + "p90_ms": 3508.000510977581, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.266943885451232, + "p90_ms": 13.268142372515856, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 123.39764022393376, + "p90_ms": 126.87448901124299, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3227.015463910283, + "pooled_p90_ms": 3487.1332910843194, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3227.0154639102825, + "trial_stddev_of_means_ms": 9.757849039220336 + }, + "tpot_ms": { + "pooled_mean_ms": 12.171863019540417, + "pooled_p90_ms": 13.192119505986863, + "pooled_samples": 771, + "trial_mean_of_means_ms": 12.171863019540416, + "trial_stddev_of_means_ms": 0.03973904147877756 + }, + "ttft_ms": { + "pooled_mean_ms": 123.15859724408143, + "pooled_p90_ms": 126.9288290059194, + "pooled_samples": 771, + "trial_mean_of_means_ms": 123.15859724408143, + "trial_stddev_of_means_ms": 0.49114501616099215 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3219.0692696932356, + "p90_ms": 3485.3774840012193, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.140566183956079, + "p90_ms": 13.175986364812536, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 123.19124268154081, + "p90_ms": 126.52519403491169, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3237.906589348536, + "p90_ms": 3513.072752044536, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.216572966532839, + "p90_ms": 13.287458070279921, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 122.65194388847537, + "p90_ms": 126.55710394028574, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3224.0705326890775, + "p90_ms": 3485.7966180425137, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.158449908132331, + "p90_ms": 13.179041823262677, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 123.63260516222813, + "p90_ms": 127.68025300465524, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 3258.202659738964, + "pooled_p90_ms": 3510.0540370913222, + "pooled_samples": 771, + "trial_mean_of_means_ms": 3258.2026597389645, + "trial_stddev_of_means_ms": 26.16015239977281 + }, + "tpot_ms": { + "pooled_mean_ms": 12.29409478300949, + "pooled_p90_ms": 13.276502498261193, + "pooled_samples": 771, + "trial_mean_of_means_ms": 12.29409478300949, + "trial_stddev_of_means_ms": 0.10176478535551588 + }, + "ttft_ms": { + "pooled_mean_ms": 123.17715882596677, + "pooled_p90_ms": 126.84211903251708, + "pooled_samples": 771, + "trial_mean_of_means_ms": 123.17715882596677, + "trial_stddev_of_means_ms": 0.21946599752752585 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 3248.8852222309656, + "p90_ms": 3485.874078935012, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.257590223944844, + "p90_ms": 13.18505671395756, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 123.16796821379012, + "p90_ms": 127.00659106485546, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3287.745963928384, + "p90_ms": 3542.219298076816, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.409076760226009, + "p90_ms": 13.403489419222609, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 123.40107575332536, + "p90_ms": 126.91527209244668, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 3237.9767930575426, + "p90_ms": 3510.0540370913222, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 12.215617364857616, + "p90_ms": 13.270442501879206, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 122.96243251078484, + "p90_ms": 126.39114900957793, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 9930.415717170099, + "pooled_p90_ms": 16230.610172031447, + "pooled_samples": 771, + "trial_mean_of_means_ms": 9930.415717170099, + "trial_stddev_of_means_ms": 265.43228327053174 + }, + "tpot_ms": { + "pooled_mean_ms": 8.417185619746073, + "pooled_p90_ms": 8.771115207734207, + "pooled_samples": 771, + "trial_mean_of_means_ms": 8.417185619746073, + "trial_stddev_of_means_ms": 0.07114582388337083 + }, + "ttft_ms": { + "pooled_mean_ms": 7783.999912441683, + "pooled_p90_ms": 14005.500467028469, + "pooled_samples": 771, + "trial_mean_of_means_ms": 7783.999912441683, + "trial_stddev_of_means_ms": 247.57894746806267 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 9796.72206207704, + "p90_ms": 15780.092388973571, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 8.369231803923293, + "p90_ms": 8.733943933347131, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 7662.533099055091, + "p90_ms": 13565.21666701883, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 10236.111454999053, + "p90_ms": 16542.091568931937, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 8.498929749479789, + "p90_ms": 8.837188466671197, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 8068.853142362809, + "p90_ms": 14296.956199919805, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 9758.413634434204, + "p90_ms": 15677.250495995395, + "samples": 257 + }, + "tpot_ms": { + "mean_ms": 8.383395305835137, + "p90_ms": 8.721436341019238, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 7620.613495907149, + "p90_ms": 13464.818625012413, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-pd/real/tp4_mns8/trial3/results/result.json", + "trial": 3 + } + ] + } + }, + "prefill_only": false, + "schema": "qwen30-latency-case-real-audit-v1", + "trace_manifests": { + "tp1": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 1.125, + "last_arrival_s": 227.55555555555554, + "output_tokens": [ + 256 + ], + "per_gpu_offered_request_rate": 1.125, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd/tp1/private/real_requests.jsonl", + "private_jsonl_sha256": "86cf52a5016ff06c3d5728605a63fc5b5f1712a9e8d17a0b2935a21f991ca4c3", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd/tp1/public/frontier.csv", + "public_csv_sha256": "8257aefe7b57cd24056cde49e07a1be8a5a05c3279742bc71439671626a06051", + "requests": 257, + "row_vector_sha256": "a92a626fc5d89c625b2f63dbb353165a544e07c21523027103ffe1bc9a4f64ae", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 1 + }, + "tp2": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 2.25, + "last_arrival_s": 113.77777777777777, + "output_tokens": [ + 256 + ], + "per_gpu_offered_request_rate": 1.125, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd/tp2/private/real_requests.jsonl", + "private_jsonl_sha256": "b60dd3dd128b18905497a50223dfd7a88cad6e262f650794ac2a71cb4db0608f", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd/tp2/public/frontier.csv", + "public_csv_sha256": "3a2250170a362bd640416309fc04a4cb503454f1e01554b2af7d1577d21be554", + "requests": 257, + "row_vector_sha256": "1c92d235e3f7006367e2e0ad1a70ef4a8cf472b1fecc8aebae7f95218c20205d", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 2 + }, + "tp4": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 4.5, + "last_arrival_s": 56.888888888888886, + "output_tokens": [ + 256 + ], + "per_gpu_offered_request_rate": 1.125, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd/tp4/private/real_requests.jsonl", + "private_jsonl_sha256": "aa08175b73187df17f69ef13946e947929ddf40cc0b5caf53e8209b9c342e174", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd/tp4/public/frontier.csv", + "public_csv_sha256": "5fbb14f2d04287096d9e5902db94041167cf6926d8c155dfc7d4b831fa94048c", + "requests": 257, + "row_vector_sha256": "2b6ecbd4c729db310300082f8362826c0ec407ae2451751c340dcf81c7a11859", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 4 + } + }, + "traces_root": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-pd", + "winners": { + "e2e_ms:pooled_mean_ms": { + "ranking": [ + "tp1_mns32", + "tp4_mns32", + "tp1_mns16", + "tp1_mns8", + "tp4_mns16", + "tp4_mns64", + "tp1_mns64", + "tp2_mns8", + "tp2_mns64", + "tp2_mns16", + "tp2_mns32", + "tp4_mns8" + ], + "winner": "tp1_mns32", + "winner_value_ms": 3203.7226679738205 + }, + "e2e_ms:pooled_p90_ms": { + "ranking": [ + "tp1_mns32", + "tp1_mns8", + "tp1_mns16", + "tp1_mns64", + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp4_mns8" + ], + "winner": "tp1_mns32", + "winner_value_ms": 3389.1853449167684 + }, + "tpot_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64", + "tp4_mns32", + "tp2_mns8", + "tp4_mns16", + "tp4_mns64", + "tp2_mns64", + "tp2_mns16", + "tp2_mns32" + ], + "winner": "tp4_mns8", + "winner_value_ms": 8.417185619746073 + }, + "tpot_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns8", + "tp1_mns64", + "tp2_mns8", + "tp4_mns32", + "tp2_mns64", + "tp4_mns64", + "tp4_mns16", + "tp2_mns32", + "tp2_mns16" + ], + "winner": "tp4_mns8", + "winner_value_ms": 8.771115207734207 + }, + "ttft_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns32", + "tp2_mns16", + "tp1_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp4_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 123.15859724408143 + }, + "ttft_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns64", + "tp2_mns8", + "tp2_mns16", + "tp2_mns32", + "tp1_mns8", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp4_mns8" + ], + "winner": "tp4_mns64", + "winner_value_ms": 126.84211903251708 + } + } +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.md new file mode 100644 index 0000000..cd51259 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-pd/real-audit.md @@ -0,0 +1,12 @@ +# Qwen30 real latency case audit + +Prefill-only: `False`. + +| Objective | Real winner | Value (ms) | +|---|---|---:| +| ttft_ms:pooled_mean_ms | tp4_mns32 | 123.16 | +| ttft_ms:pooled_p90_ms | tp4_mns64 | 126.84 | +| tpot_ms:pooled_mean_ms | tp4_mns8 | 8.42 | +| tpot_ms:pooled_p90_ms | tp4_mns8 | 8.77 | +| e2e_ms:pooled_mean_ms | tp1_mns32 | 3203.72 | +| e2e_ms:pooled_p90_ms | tp1_mns32 | 3389.19 | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.json new file mode 100644 index 0000000..9074b19 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.json @@ -0,0 +1,326 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "e2e_ms" + ], + "cells": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + }, + "ttft_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp1_mns16/tp1/result.json" + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + }, + "ttft_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp1_mns32/tp1/result.json" + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + }, + "ttft_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp1_mns64/tp1/result.json" + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + }, + "ttft_ms": { + "mean": 267.46878507222704, + "p90": 267.46878507223215 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp1_mns8/tp1/result.json" + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + }, + "ttft_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp2_mns16/tp2/result.json" + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + }, + "ttft_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp2_mns32/tp2/result.json" + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + }, + "ttft_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp2_mns64/tp2/result.json" + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + }, + "ttft_ms": { + "mean": 175.26431810890125, + "p90": 175.2643181089013 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp2_mns8/tp2/result.json" + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + }, + "ttft_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp4_mns16/tp4/result.json" + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + }, + "ttft_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp4_mns32/tp4/result.json" + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + }, + "ttft_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp4_mns64/tp4/result.json" + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + }, + "ttft_ms": { + "mean": 127.7919646347385, + "p90": 127.79196463473852 + } + }, + "path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po/runs/tp4_mns8/tp4/result.json" + } + }, + "prefill_only": true, + "real_audit": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/analysis/fixed-po/real-audit.json", + "schema": "qwen30-latency-case-frontier-real-comparison-v1", + "selection": { + "e2e_ms:mean": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.0034531419781375313, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "e2e_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.005277055274057908, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "ttft_ms:mean": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.003463041945107654, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + }, + "ttft_ms:p90": { + "agreement": 1.0, + "concordant_pairs": 48, + "discordant_pairs": 0, + "informative_pairs": 48, + "real_ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "real_winner": "tp4_mns32", + "selected_config_real_regret": 0.005266030780421245, + "sim_ranking": [ + "tp4_mns16", + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp1_mns8" + ], + "sim_winner": "tp4_mns16", + "tied_pairs": 18, + "winner_match": false + } + }, + "sim_root": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/sim/fixed-po" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.md new file mode 100644 index 0000000..d38638c --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/comparison.md @@ -0,0 +1,8 @@ +# Qwen30 Frontier vs real latency selection + +| Objective | Frontier | Real | Match | Regret | Pairwise | +|---|---|---|---:|---:|---:| +| ttft_ms:mean | tp4_mns16 | tp4_mns32 | no | 0.3% | 100.0% | +| ttft_ms:p90 | tp4_mns16 | tp4_mns32 | no | 0.5% | 100.0% | +| e2e_ms:mean | tp4_mns16 | tp4_mns32 | no | 0.3% | 100.0% | +| e2e_ms:p90 | tp4_mns16 | tp4_mns32 | no | 0.5% | 100.0% | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.json new file mode 100644 index 0000000..74c5c48 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.json @@ -0,0 +1,997 @@ +{ + "applicable_metrics": [ + "ttft_ms", + "e2e_ms" + ], + "case_root": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po", + "configs": { + "tp1_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 311.5405924270961, + "pooled_p90_ms": 313.7628498952836, + "pooled_samples": 771, + "trial_mean_of_means_ms": 311.5405924270961, + "trial_stddev_of_means_ms": 1.3039412575877052 + }, + "ttft_ms": { + "pooled_mean_ms": 311.49589566449873, + "pooled_p90_ms": 313.7203580699861, + "pooled_samples": 771, + "trial_mean_of_means_ms": 311.49589566449873, + "trial_stddev_of_means_ms": 1.3039649961427384 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 310.6955070939125, + "p90_ms": 311.31368898786604, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 310.65253322356983, + "p90_ms": 311.2668279791251, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 310.8839521212648, + "p90_ms": 311.4629740593955, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 310.837354891071, + "p90_ms": 311.4192739594728, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 313.04231806611097, + "p90_ms": 314.1881680348888, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 312.99779887885535, + "p90_ms": 314.14560007397085, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 311.5105919916504, + "pooled_p90_ms": 312.67331005074084, + "pooled_samples": 771, + "trial_mean_of_means_ms": 311.5105919916504, + "trial_stddev_of_means_ms": 0.8370728024636384 + }, + "ttft_ms": { + "pooled_mean_ms": 311.4647780706316, + "pooled_p90_ms": 312.62694601900876, + "pooled_samples": 771, + "trial_mean_of_means_ms": 311.4647780706316, + "trial_stddev_of_means_ms": 0.8370818779367518 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 311.46654921424386, + "p90_ms": 311.97385501582175, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 311.4168197754589, + "p90_ms": 311.92471098620445, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 310.69641002473793, + "p90_ms": 311.3162890076637, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 310.6527063394951, + "p90_ms": 311.2770210718736, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 312.36881673596946, + "p90_ms": 313.099671038799, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 312.3248080969408, + "p90_ms": 313.04874701891094, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 312.1343500969265, + "pooled_p90_ms": 313.89150698669255, + "pooled_samples": 771, + "trial_mean_of_means_ms": 312.1343500969265, + "trial_stddev_of_means_ms": 0.46642112108308753 + }, + "ttft_ms": { + "pooled_mean_ms": 312.0841491107084, + "pooled_p90_ms": 313.84513492230326, + "pooled_samples": 771, + "trial_mean_of_means_ms": 312.0841491107083, + "trial_stddev_of_means_ms": 0.46656234571063265 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 311.59666514998946, + "p90_ms": 313.3960220729932, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 311.546319629997, + "p90_ms": 313.33198107313365, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 312.4300223219857, + "p90_ms": 314.37386700417846, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 312.3801749132588, + "p90_ms": 314.32278105057776, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 312.37636281880424, + "p90_ms": 313.45780298579484, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 312.32595278886924, + "p90_ms": 313.3977819234133, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp1_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 312.4610948317168, + "pooled_p90_ms": 314.16700792033225, + "pooled_samples": 771, + "trial_mean_of_means_ms": 312.4610948317168, + "trial_stddev_of_means_ms": 0.7149524029740935 + }, + "ttft_ms": { + "pooled_mean_ms": 312.4132300384316, + "pooled_p90_ms": 314.1121099470183, + "pooled_samples": 771, + "trial_mean_of_means_ms": 312.4132300384316, + "trial_stddev_of_means_ms": 0.7170007678929775 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 313.2865619732444, + "p90_ms": 314.3677569460124, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 313.24100631591773, + "p90_ms": 314.32040000800043, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 312.0378761661895, + "p90_ms": 313.87826695572585, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 311.9859282132999, + "p90_ms": 313.8229319592938, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 312.05884635571664, + "p90_ms": 314.0185490483418, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 312.01275558607716, + "p90_ms": 313.97431797813624, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp1_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 190.31096146856925, + "pooled_p90_ms": 191.60501298028976, + "pooled_samples": 771, + "trial_mean_of_means_ms": 190.31096146856922, + "trial_stddev_of_means_ms": 0.5354377240256494 + }, + "ttft_ms": { + "pooled_mean_ms": 190.26420441538883, + "pooled_p90_ms": 191.55984604731202, + "pooled_samples": 771, + "trial_mean_of_means_ms": 190.26420441538883, + "trial_stddev_of_means_ms": 0.5389874750392776 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 190.07371114938363, + "p90_ms": 191.55416695866734, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 190.0275621526052, + "p90_ms": 191.50883494876325, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 190.92403356246794, + "p90_ms": 191.83196197263896, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 190.88103114138084, + "p90_ms": 191.79061893373728, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 189.93513969385612, + "p90_ms": 191.3305459311232, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 189.88401995218044, + "p90_ms": 191.23233994469047, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 190.1976155063099, + "pooled_p90_ms": 191.3924120599404, + "pooled_samples": 771, + "trial_mean_of_means_ms": 190.19761550630986, + "trial_stddev_of_means_ms": 0.4305067654025827 + }, + "ttft_ms": { + "pooled_mean_ms": 190.15199505472157, + "pooled_p90_ms": 191.34706107433885, + "pooled_samples": 771, + "trial_mean_of_means_ms": 190.1519950547216, + "trial_stddev_of_means_ms": 0.4287092219589841 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 190.51239040683853, + "p90_ms": 191.31595105864108, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 190.46796200088505, + "p90_ms": 191.2707129959017, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 189.70702594537505, + "p90_ms": 191.25314499251544, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 189.66398845564444, + "p90_ms": 191.21390499640256, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 190.37343016671605, + "p90_ms": 191.65610091295093, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 190.32403470763524, + "p90_ms": 191.5953279240057, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 188.49150093478283, + "pooled_p90_ms": 190.28858200181276, + "pooled_samples": 771, + "trial_mean_of_means_ms": 188.49150093478283, + "trial_stddev_of_means_ms": 1.6533226552993832 + }, + "ttft_ms": { + "pooled_mean_ms": 188.44684911725727, + "pooled_p90_ms": 190.2463739970699, + "pooled_samples": 771, + "trial_mean_of_means_ms": 188.44684911725724, + "trial_stddev_of_means_ms": 1.650697495689325 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 189.15035290614583, + "p90_ms": 190.26379100978374, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 189.106691004038, + "p90_ms": 190.2244269149378, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 189.7138195680382, + "p90_ms": 190.8034710213542, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 189.66555941971345, + "p90_ms": 190.7602889696136, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 186.61033033016446, + "p90_ms": 187.4971800716594, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 186.56829692802035, + "p90_ms": 187.45643505826592, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp2_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 185.58736601101546, + "pooled_p90_ms": 186.94222904741764, + "pooled_samples": 771, + "trial_mean_of_means_ms": 185.58736601101546, + "trial_stddev_of_means_ms": 0.17900602117493175 + }, + "ttft_ms": { + "pooled_mean_ms": 185.54133709128124, + "pooled_p90_ms": 186.88921502325684, + "pooled_samples": 771, + "trial_mean_of_means_ms": 185.54133709128124, + "trial_stddev_of_means_ms": 0.17412945433635296 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 185.46277399905068, + "p90_ms": 186.92227499559522, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 185.41920935401714, + "p90_ms": 186.8766910629347, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 185.79249331095266, + "p90_ms": 187.07626103423536, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 185.74072911579827, + "p90_ms": 187.01596499886364, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 185.50683072304304, + "p90_ms": 186.73917709384114, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 185.46407280402832, + "p90_ms": 186.69728806708008, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp2_mns8/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns16": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 113.83082875217904, + "pooled_p90_ms": 115.34429900348186, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.83082875217904, + "trial_stddev_of_means_ms": 0.9461418127163538 + }, + "ttft_ms": { + "pooled_mean_ms": 113.78785713766635, + "pooled_p90_ms": 115.29833707027137, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.78785713766636, + "trial_stddev_of_means_ms": 0.9438950942019103 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 114.32171626612616, + "p90_ms": 115.71828299202025, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 114.27366546969427, + "p90_ms": 115.66144204698503, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns16/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 112.74012975786098, + "p90_ms": 113.76826802734286, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 112.70000880352197, + "p90_ms": 113.72840602416545, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns16/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 114.43064023254998, + "p90_ms": 115.64736906439066, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 114.38989713978283, + "p90_ms": 115.60670402832329, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns16/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns32": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 113.43910740842456, + "pooled_p90_ms": 114.73881592974067, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.43910740842455, + "trial_stddev_of_means_ms": 0.15342403653521097 + }, + "ttft_ms": { + "pooled_mean_ms": 113.39516492515813, + "pooled_p90_ms": 114.69435307662934, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.39516492515811, + "trial_stddev_of_means_ms": 0.15129782609682924 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.3981759986996, + "p90_ms": 114.83101104386151, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.35384492909152, + "p90_ms": 114.78637403342873, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns32/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.60884601692398, + "p90_ms": 115.0080730440095, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.56283011230194, + "p90_ms": 114.94788806885481, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns32/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.3103002096501, + "p90_ms": 114.50691497884691, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.2688197340809, + "p90_ms": 114.4664689199999, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns32/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns64": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 113.57268320527, + "pooled_p90_ms": 115.08622206747532, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.57268320527, + "trial_stddev_of_means_ms": 0.1834744740593822 + }, + "ttft_ms": { + "pooled_mean_ms": 113.52880459490815, + "pooled_p90_ms": 115.04431103821844, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.52880459490815, + "trial_stddev_of_means_ms": 0.18387162741378107 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.70978420210734, + "p90_ms": 115.44408102054149, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.66415427361727, + "p90_ms": 115.39141100365669, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns64/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.64400897406998, + "p90_ms": 114.92579500190914, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.60279529025698, + "p90_ms": 114.8861589608714, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns64/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.36425643963268, + "p90_ms": 114.78174000512809, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.31946422085021, + "p90_ms": 114.745571045205, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns64/trial3/results/result.json", + "trial": 3 + } + ] + }, + "tp4_mns8": { + "metrics": { + "e2e_ms": { + "pooled_mean_ms": 113.80060324454426, + "pooled_p90_ms": 114.74568990524858, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.80060324454426, + "trial_stddev_of_means_ms": 0.1793280070989901 + }, + "ttft_ms": { + "pooled_mean_ms": 113.75673118469592, + "pooled_p90_ms": 114.70199096947908, + "pooled_samples": 771, + "trial_mean_of_means_ms": 113.75673118469592, + "trial_stddev_of_means_ms": 0.17717556416711291 + } + }, + "trials": [ + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.60963180313314, + "p90_ms": 114.72724401392043, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.56837538357259, + "p90_ms": 114.6864800248295, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns8/trial1/results/result.json", + "trial": 1 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.82676389363706, + "p90_ms": 115.33373803831637, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.78175165850293, + "p90_ms": 115.29060895554721, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns8/trial2/results/result.json", + "trial": 2 + }, + { + "metrics": { + "e2e_ms": { + "mean_ms": 113.96541403686258, + "p90_ms": 114.28226600401103, + "samples": 257 + }, + "ttft_ms": { + "mean_ms": 113.92006651201224, + "p90_ms": 114.24182495102286, + "samples": 257 + } + }, + "requests": 257, + "result_path": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/real/fixed-po/real/tp4_mns8/trial3/results/result.json", + "trial": 3 + } + ] + } + }, + "prefill_only": true, + "schema": "qwen30-latency-case-real-audit-v1", + "trace_manifests": { + "tp1": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 1.125, + "last_arrival_s": 227.55555555555554, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 1.125, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po/tp1/private/real_requests.jsonl", + "private_jsonl_sha256": "eb048c65428f2530bdea135e6607405fd7ebaefb103267daaec29839462aa3ab", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po/tp1/public/frontier.csv", + "public_csv_sha256": "82c186222779c4a176f18e425d371966012ca7c1c6560f13d2c7036ac4f38d86", + "requests": 257, + "row_vector_sha256": "9829ec5834913fa49f900f4e07c8e83206726fc5a70d88de1498426ec91c51f3", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 1 + }, + "tp2": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 2.25, + "last_arrival_s": 113.77777777777777, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 1.125, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po/tp2/private/real_requests.jsonl", + "private_jsonl_sha256": "aa61aed87875ed792c37efdd62bfeee4753bd3de110a1de92fa32273be13ca12", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po/tp2/public/frontier.csv", + "public_csv_sha256": "b32676281c8f5651f47ee3d88a88d433a01a0863d8794751d2d638b988e1b8b2", + "requests": 257, + "row_vector_sha256": "1c032691cc4624b125e5589ee8466e46a67ddad7fe9e7380d5857bb81633cc3c", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 2 + }, + "tp4": { + "description": "fixed-shape: deterministic token IDs, uniform TP-normalized QPS, no prefix reuse", + "first_arrival_s": 0.0, + "global_offered_request_rate": 4.5, + "last_arrival_s": 56.888888888888886, + "output_tokens": [ + 1 + ], + "per_gpu_offered_request_rate": 1.125, + "prefix_caching": false, + "private_jsonl": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po/tp4/private/real_requests.jsonl", + "private_jsonl_sha256": "b82a17cd707c3c54069298b764031a1c18775571aa6e54c55be0746dd1fe94ca", + "public_csv": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po/tp4/public/frontier.csv", + "public_csv_sha256": "67429bf430436a23979a0007707a03f4c67af962b9466cd230294a3c62696931", + "requests": 257, + "row_vector_sha256": "ab5af2eddc7d07420c6fcdf28b3a014d7241b2b35471ee581c6d7a8e3afb93e6", + "schema": "qwen30-latency-case-v1", + "tensor_parallel_size": 4 + } + }, + "traces_root": "/home/admin/cpfs/wjh/aituner/qwen30-fixed-pressure-surface-20260719-r1/traces/fixed-po", + "winners": { + "e2e_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 113.43910740842456 + }, + "e2e_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 114.73881592974067 + }, + "ttft_ms:pooled_mean_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 113.39516492515813 + }, + "ttft_ms:pooled_p90_ms": { + "ranking": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64", + "tp4_mns16", + "tp2_mns8", + "tp2_mns64", + "tp2_mns32", + "tp2_mns16", + "tp1_mns32", + "tp1_mns16", + "tp1_mns64", + "tp1_mns8" + ], + "winner": "tp4_mns32", + "winner_value_ms": 114.69435307662934 + } + } +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.md new file mode 100644 index 0000000..44d6ecb --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-fixed-hi/fixed-po/real-audit.md @@ -0,0 +1,10 @@ +# Qwen30 real latency case audit + +Prefill-only: `True`. + +| Objective | Real winner | Value (ms) | +|---|---|---:| +| ttft_ms:pooled_mean_ms | tp4_mns32 | 113.40 | +| ttft_ms:pooled_p90_ms | tp4_mns32 | 114.69 | +| e2e_ms:pooled_mean_ms | tp4_mns32 | 113.44 | +| e2e_ms:pooled_p90_ms | tp4_mns32 | 114.74 | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.json new file mode 100644 index 0000000..f07a37a --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.json @@ -0,0 +1,726 @@ +{ + "cells": { + "tp1_mns16": { + "config": "tp1_mns16", + "elapsed_seconds": 351.88990092277527, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 13.842098628638448, + "p90_ratio_sim_over_real": 13.072241203568879, + "real_mean_ms": 87355.16047904849, + "real_p90_ms": 156177.17167094816, + "sim_mean_ms": 1209178.7470715286, + "sim_p90_ms": 2041585.6585738186 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.816528397308329, + "p90_ratio_sim_over_real": 4.062740013130375, + "real_mean_ms": 20.58492915882586, + "real_p90_ms": 25.316827059621797, + "sim_mean_ms": 99.14789585006503, + "sim_p90_ms": 102.85568630062728 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 50.0951473194418, + "p90_ratio_sim_over_real": 40.15634837465801, + "real_mean_ms": 17378.17525871318, + "real_p90_ms": 42739.809082006104, + "sim_mean_ms": 870562.2497283154, + "sim_p90_ms": 1716274.6629634094 + } + }, + "mns": 16, + "offered_request_rate": 0.215, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp1_mns16/tp1/result.json", + "result_sha256": "d892cbc79c7ac3a2158310d346aea87fdd4a4515ada6465d02087066e412fe89", + "tp": 1, + "trace_label": "tp1", + "trace_sha256": "0014176c946a4c838f2ba127915fda8f2728e8cbfed070a001800b2f02f02d2a" + }, + "tp1_mns32": { + "config": "tp1_mns32", + "elapsed_seconds": 342.20933651924133, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 8.911637753525204, + "p90_ratio_sim_over_real": 7.8084062855710945, + "real_mean_ms": 81051.19884917597, + "real_p90_ms": 162908.61000702716, + "sim_mean_ms": 722298.9236327951, + "sim_p90_ms": 1272056.614352521 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 5.03371341949048, + "p90_ratio_sim_over_real": 4.17277168119042, + "real_mean_ms": 23.75712112165005, + "real_p90_ms": 29.99736783063116, + "sim_mean_ms": 119.5865393985106, + "sim_p90_ms": 125.1721669939102 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 510.8831583325707, + "p90_ratio_sim_over_real": 384.77102901825737, + "real_mean_ms": 620.4562074374239, + "real_p90_ms": 1931.474626995623, + "sim_mean_ms": 316980.6268626798, + "sim_p90_ms": 743175.4797517607 + } + }, + "mns": 32, + "offered_request_rate": 0.215, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp1_mns32/tp1/result.json", + "result_sha256": "babdafcbea1bd890e9d2af8043ef104fac262ef2b2ae6f9eca9ed6e3787824b8", + "tp": 1, + "trace_label": "tp1", + "trace_sha256": "0014176c946a4c838f2ba127915fda8f2728e8cbfed070a001800b2f02f02d2a" + }, + "tp1_mns64": { + "config": "tp1_mns64", + "elapsed_seconds": 347.8728907108307, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 6.680377846313092, + "p90_ratio_sim_over_real": 5.889817911531751, + "real_mean_ms": 82253.7312629709, + "real_p90_ms": 165355.2623600699, + "sim_mean_ms": 549486.0041057414, + "sim_p90_ms": 973912.3860143718 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 5.715675260466855, + "p90_ratio_sim_over_real": 4.93808404053013, + "real_mean_ms": 24.114592194742286, + "real_p90_ms": 30.355145227612027, + "sim_mean_ms": 137.83117802373562, + "sim_p90_ms": 149.8962581964453 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 169.41590110493394, + "p90_ratio_sim_over_real": 153.2295314740789, + "real_mean_ms": 619.7960944975623, + "real_p90_ms": 1956.7296199966222, + "sim_mean_ms": 105003.31385062331, + "sim_p90_ms": 299828.76289353485 + } + }, + "mns": 64, + "offered_request_rate": 0.215, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp1_mns64/tp1/result.json", + "result_sha256": "a870a95f9f088e0c098025d3d7d4001409b28ab26f8633ff27ea878d2bbd50d2", + "tp": 1, + "trace_label": "tp1", + "trace_sha256": "0014176c946a4c838f2ba127915fda8f2728e8cbfed070a001800b2f02f02d2a" + }, + "tp1_mns8": { + "config": "tp1_mns8", + "elapsed_seconds": 369.526850938797, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 13.991474955968794, + "p90_ratio_sim_over_real": 15.108002258550664, + "real_mean_ms": 137996.3827215202, + "real_p90_ms": 222136.04307791684, + "sim_mean_ms": 1930772.9328624348, + "sim_p90_ms": 3356031.8405266753 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 5.3194009645510905, + "p90_ratio_sim_over_real": 4.790770710747499, + "real_mean_ms": 14.282724020345517, + "real_p90_ms": 16.331995667962982, + "sim_mean_ms": 75.97553593024297, + "sim_p90_ms": 78.2428464941321 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 18.86307572133342, + "p90_ratio_sim_over_real": 18.60057703879594, + "real_mean_ms": 88479.94003801016, + "real_p90_ms": 168185.5451229494, + "sim_mean_ms": 1669003.8087560262, + "sim_p90_ms": 3128348.188871311 + } + }, + "mns": 8, + "offered_request_rate": 0.215, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp1_mns8/tp1/result.json", + "result_sha256": "0db2d1f388f20252bea08c982cd53c24c3d33c2d3b36b70bda82c4e501b694e6", + "tp": 1, + "trace_label": "tp1", + "trace_sha256": "0014176c946a4c838f2ba127915fda8f2728e8cbfed070a001800b2f02f02d2a" + }, + "tp2_mns16": { + "config": "tp2_mns16", + "elapsed_seconds": 282.5357069969177, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 9.98451139764714, + "p90_ratio_sim_over_real": 10.19790282414335, + "real_mean_ms": 82936.70731938194, + "real_p90_ms": 137726.37015290093, + "sim_mean_ms": 828082.499513694, + "sim_p90_ms": 1404520.1391412807 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.569770850102063, + "p90_ratio_sim_over_real": 4.120000340068115, + "real_mean_ms": 14.09701977962943, + "real_p90_ms": 16.149621762221777, + "sim_mean_ms": 64.42015006226278, + "sim_p90_ms": 66.53644715232515 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 17.620001287194583, + "p90_ratio_sim_over_real": 15.324208422508217, + "real_mean_ms": 34442.970551674625, + "real_p90_ms": 77922.3588249879, + "sim_mean_ms": 606885.185455312, + "sim_p90_ms": 1194098.467407587 + } + }, + "mns": 16, + "offered_request_rate": 0.43, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp2_mns16/tp2/result.json", + "result_sha256": "20b811f38251d62930977529a55c434d62aede91b22ccaeec812a493999edbba", + "tp": 2, + "trace_label": "tp2", + "trace_sha256": "8bab0da359e55feda0f228157a88a5ac2d0537881e8efbd55325f4dd343bf0ef" + }, + "tp2_mns32": { + "config": "tp2_mns32", + "elapsed_seconds": 341.36838245391846, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 7.698077489599209, + "p90_ratio_sim_over_real": 7.1828008112452935, + "real_mean_ms": 62267.50376182025, + "real_p90_ms": 117239.33770309668, + "sim_mean_ms": 479340.0690424025, + "sim_p90_ms": 842106.8099636638 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.155703711688009, + "p90_ratio_sim_over_real": 3.6490372704567418, + "real_mean_ms": 17.99748422275332, + "real_p90_ms": 21.280696114935413, + "sim_mean_ms": 74.79221198554237, + "sim_p90_ms": 77.6540532646633 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 213.67619737350176, + "p90_ratio_sim_over_real": 204.45454462882793, + "real_mean_ms": 1050.6337350342683, + "real_p90_ms": 2521.7670870479196, + "sim_mean_ms": 224495.42133444166, + "sim_p90_ms": 515586.7414423483 + } + }, + "mns": 32, + "offered_request_rate": 0.43, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp2_mns32/tp2/result.json", + "result_sha256": "38b6ff12a60024e98bbb27ddea682439059b5b8481b661bd7b1ac720b3351b7d", + "tp": 2, + "trace_label": "tp2", + "trace_sha256": "8bab0da359e55feda0f228157a88a5ac2d0537881e8efbd55325f4dd343bf0ef" + }, + "tp2_mns64": { + "config": "tp2_mns64", + "elapsed_seconds": 342.2184634208679, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 4.990247689497755, + "p90_ratio_sim_over_real": 4.806085707327923, + "real_mean_ms": 62353.63015175185, + "real_p90_ms": 118392.33276096638, + "sim_mean_ms": 311160.0587965772, + "sim_p90_ms": 569003.698339692 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.529200811393724, + "p90_ratio_sim_over_real": 4.064210807294688, + "real_mean_ms": 18.239052597893746, + "real_p90_ms": 21.560091553416488, + "sim_mean_ms": 82.60833182543317, + "sim_p90_ms": 87.6247570976582 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 81.23526532158742, + "p90_ratio_sim_over_real": 98.0031513549519, + "real_mean_ms": 375.75464864569483, + "real_p90_ms": 1148.593939957209, + "sim_mean_ms": 30524.52857855288, + "sim_p90_ms": 112565.82574300688 + } + }, + "mns": 64, + "offered_request_rate": 0.43, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp2_mns64/tp2/result.json", + "result_sha256": "2293c4ab15356f6f0753a0cec6e4113b4c74f89f7564032a0c1d58ebd97383ee", + "tp": 2, + "trace_label": "tp2", + "trace_sha256": "8bab0da359e55feda0f228157a88a5ac2d0537881e8efbd55325f4dd343bf0ef" + }, + "tp2_mns8": { + "config": "tp2_mns8", + "elapsed_seconds": 369.0675718784332, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 10.511662746977503, + "p90_ratio_sim_over_real": 10.881956427090019, + "real_mean_ms": 128296.94038681783, + "real_p90_ms": 215848.26136403717, + "sim_mean_ms": 1348614.1688153066, + "sim_p90_ms": 2348851.3750265907 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 5.523719280021353, + "p90_ratio_sim_over_real": 5.149568696131382, + "real_mean_ms": 9.244370614307101, + "real_p90_ms": 10.190386958999568, + "sim_mean_ms": 51.06330819391097, + "sim_p90_ms": 52.476097685529645 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 12.214904033795035, + "p90_ratio_sim_over_real": 11.92062856279977, + "real_mean_ms": 95920.08463817694, + "real_p90_ms": 183878.83744493593, + "sim_mean_ms": 1171654.6287688287, + "sim_p90_ms": 2191951.3217405193 + } + }, + "mns": 8, + "offered_request_rate": 0.43, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp2_mns8/tp2/result.json", + "result_sha256": "0d75820000a471d607f5c0eac3571355d6666235e3bb1ae69080fa20fbf36160", + "tp": 2, + "trace_label": "tp2", + "trace_sha256": "8bab0da359e55feda0f228157a88a5ac2d0537881e8efbd55325f4dd343bf0ef" + }, + "tp4_mns16": { + "config": "tp4_mns16", + "elapsed_seconds": 353.6330111026764, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 8.790176207252758, + "p90_ratio_sim_over_real": 8.919807800227431, + "real_mean_ms": 65779.08377038215, + "real_p90_ms": 110374.3328540586, + "sim_mean_ms": 578209.7370932992, + "sim_p90_ms": 984517.8351365307 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.905169954916736, + "p90_ratio_sim_over_real": 4.616446999000005, + "real_mean_ms": 8.806983272811275, + "real_p90_ms": 9.626243685920313, + "sim_mean_ms": 43.19974974324813, + "sim_p90_ms": 44.439043775509575 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 12.245054441740509, + "p90_ratio_sim_over_real": 11.334316081110904, + "real_mean_ms": 35042.61012925094, + "real_p90_ms": 74281.28085809294, + "sim_mean_ms": 429098.66881336516, + "sim_p90_ms": 841927.5161553983 + } + }, + "mns": 16, + "offered_request_rate": 0.86, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp4_mns16/tp4/result.json", + "result_sha256": "c174b3fec57e9bebcd3e41a407c4ea17b6b44929f440336489e529c2ec4e1ffc", + "tp": 4, + "trace_label": "tp4", + "trace_sha256": "cc2caa329990414496d3cbf6fb54af73e6e73027766deaf5885d56f4e362ab69" + }, + "tp4_mns32": { + "config": "tp4_mns32", + "elapsed_seconds": 342.3954610824585, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 7.0145630517428215, + "p90_ratio_sim_over_real": 6.923394844590732, + "real_mean_ms": 47944.52887711636, + "real_p90_ms": 83825.7212981116, + "sim_mean_ms": 336309.9207946372, + "sim_p90_ms": 580358.5666794453 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.058731155235696, + "p90_ratio_sim_over_real": 3.7164401630936927, + "real_mean_ms": 12.181116414313188, + "real_p90_ms": 13.75045588274547, + "sim_mean_ms": 49.43987669632586, + "sim_p90_ms": 51.1027465034832 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 26.481641572689746, + "p90_ratio_sim_over_real": 19.75959391638082, + "real_mean_ms": 6296.228585964807, + "real_p90_ms": 19159.870272967964, + "sim_mean_ms": 166734.46867324322, + "sim_p90_ms": 378591.2560843835 + } + }, + "mns": 32, + "offered_request_rate": 0.86, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp4_mns32/tp4/result.json", + "result_sha256": "46efd5bd348ce93a9dc075441ebfd1f2df5ff1646c53610e8f6bdd72105071e4", + "tp": 4, + "trace_label": "tp4", + "trace_sha256": "cc2caa329990414496d3cbf6fb54af73e6e73027766deaf5885d56f4e362ab69" + }, + "tp4_mns64": { + "config": "tp4_mns64", + "elapsed_seconds": 340.36316752433777, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 4.663503091378936, + "p90_ratio_sim_over_real": 4.414200438612224, + "real_mean_ms": 44985.13828221082, + "real_p90_ms": 83763.61756504048, + "sim_mean_ms": 209788.3314451991, + "sim_p90_ms": 369749.3973953483 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 4.078641583467541, + "p90_ratio_sim_over_real": 3.6320345146531077, + "real_mean_ms": 13.178025610291787, + "real_p90_ms": 15.389331985205848, + "sim_mean_ms": 53.748443242136304, + "sim_p90_ms": 55.89458492772267 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 108.51050461378274, + "p90_ratio_sim_over_real": 152.34030824222364, + "real_mean_ms": 245.9527667526406, + "real_p90_ms": 685.5076659703627, + "sim_mean_ms": 26688.458831485037, + "sim_p90_ms": 104430.44913633233 + } + }, + "mns": 64, + "offered_request_rate": 0.86, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp4_mns64/tp4/result.json", + "result_sha256": "c6c34b800a646938f507dde0a5e2530f3e94358b9580050845cfd255176dd391", + "tp": 4, + "trace_label": "tp4", + "trace_sha256": "cc2caa329990414496d3cbf6fb54af73e6e73027766deaf5885d56f4e362ab69" + }, + "tp4_mns8": { + "config": "tp4_mns8", + "elapsed_seconds": 379.0038528442383, + "metrics": { + "e2e_ms": { + "mean_ratio_sim_over_real": 7.5775112842809955, + "p90_ratio_sim_over_real": 7.997579501403945, + "real_mean_ms": 126405.41922729714, + "real_p90_ms": 209092.4072249327, + "sim_mean_ms": 957838.490589114, + "sim_p90_ms": 1672233.1499213278 + }, + "tpot_ms": { + "mean_ratio_sim_over_real": 5.242973269896895, + "p90_ratio_sim_over_real": 4.960553326136223, + "real_mean_ms": 6.757398869596114, + "real_p90_ms": 7.242299378971089, + "sim_mean_ms": 35.42886164732392, + "sim_p90_ms": 35.92581227322934 + }, + "ttft_ms": { + "mean_ratio_sim_over_real": 8.133065025278983, + "p90_ratio_sim_over_real": 8.084332290199812, + "real_mean_ms": 102605.87212059843, + "real_p90_ms": 193359.7398570273, + "sim_mean_ms": 834500.2299322869, + "sim_p90_ms": 1563184.3885508017 + } + }, + "mns": 8, + "offered_request_rate": 0.86, + "offered_request_rate_per_gpu": 0.215, + "request_count": 129, + "result_path": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/runs/tp4_mns8/tp4/result.json", + "result_sha256": "9361fe342d3b0394d6a9b130965304923a6edf424d0b964368079b0baacf9e75", + "tp": 4, + "trace_label": "tp4", + "trace_sha256": "cc2caa329990414496d3cbf6fb54af73e6e73027766deaf5885d56f4e362ab69" + } + }, + "contract": { + "configs": [ + "tp1_mns8", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp2_mns8", + "tp2_mns16", + "tp2_mns32", + "tp2_mns64", + "tp4_mns8", + "tp4_mns16", + "tp4_mns32", + "tp4_mns64" + ], + "graph_semantics": "Frontier piecewise; CUDA_EVENT for prefill/mixed and KERNEL_ONLY for captured decode", + "real_trials_per_cell": 3, + "request_count_per_cell": 129, + "trace_policy": "TP-normalized arrivals with full 16-token prefix blocks only" + }, + "real_audit": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/ground-truth/qwen30-tracepd-u0p01-real-audit.json", + "real_audit_sha256": "6e2c17bce5b0edb5f6f92aae4cc1b00f9390f692d31d059efe647158b386c8e9", + "schema": "frontier-qwen30-piecewise-graph-comparison-v1", + "selection": { + "e2e_ms:mean": { + "concordant_pairs": 61, + "discordant_pairs": 5, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.9242424242424242, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp2_mns32", + "tp2_mns64", + "tp4_mns16", + "tp1_mns32", + "tp1_mns64", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns64", + "tp4_mns16", + "tp1_mns32", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + }, + "e2e_ms:p90": { + "concordant_pairs": 55, + "discordant_pairs": 11, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.8333333333333334, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns64", + "tp4_mns16", + "tp1_mns32", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + }, + "tpot_ms:mean": { + "concordant_pairs": 64, + "discordant_pairs": 2, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.9696969696969697, + "real_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns16", + "tp1_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "sim_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp4_mns32", + "tp2_mns8", + "tp4_mns64", + "tp2_mns16", + "tp2_mns32", + "tp1_mns8", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns8", + "tied_pairs": 0, + "winner_match": true + }, + "tpot_ms:p90": { + "concordant_pairs": 64, + "discordant_pairs": 2, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.9696969696969697, + "real_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns16", + "tp1_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "sim_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp4_mns32", + "tp2_mns8", + "tp4_mns64", + "tp2_mns16", + "tp2_mns32", + "tp1_mns8", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns8", + "tied_pairs": 0, + "winner_match": true + }, + "ttft_ms:mean": { + "concordant_pairs": 56, + "discordant_pairs": 10, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.8484848484848485, + "real_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp1_mns32", + "tp2_mns32", + "tp4_mns32", + "tp1_mns16", + "tp2_mns16", + "tp4_mns16", + "tp1_mns8", + "tp2_mns8", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns32", + "tp4_mns16", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + }, + "ttft_ms:p90": { + "concordant_pairs": 56, + "discordant_pairs": 10, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.8484848484848485, + "real_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns32", + "tp1_mns64", + "tp2_mns32", + "tp4_mns32", + "tp1_mns16", + "tp4_mns16", + "tp2_mns16", + "tp1_mns8", + "tp2_mns8", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns32", + "tp4_mns16", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + } + }, + "sim_root": "/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2" +} diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.md b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.md new file mode 100644 index 0000000..83f66a7 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/comparison.md @@ -0,0 +1,29 @@ +# Frontier piecewise graph-profile vs. real vLLM + +Each cell uses its TP-normalized, 129-request trace. Frontier values are one deterministic simulation; real values pool three fresh-server trials (387 requests/cell). + +| Config | TTFT sim / real mean (ms) | TPOT sim / real mean (ms) | E2E sim / real mean (ms) | +|---|---:|---:|---:| +| tp1_mns8 | 1669003.8 / 88479.9 | 76.0 / 14.3 | 1930772.9 / 137996.4 | +| tp1_mns16 | 870562.2 / 17378.2 | 99.1 / 20.6 | 1209178.7 / 87355.2 | +| tp1_mns32 | 316980.6 / 620.5 | 119.6 / 23.8 | 722298.9 / 81051.2 | +| tp1_mns64 | 105003.3 / 619.8 | 137.8 / 24.1 | 549486.0 / 82253.7 | +| tp2_mns8 | 1171654.6 / 95920.1 | 51.1 / 9.2 | 1348614.2 / 128296.9 | +| tp2_mns16 | 606885.2 / 34443.0 | 64.4 / 14.1 | 828082.5 / 82936.7 | +| tp2_mns32 | 224495.4 / 1050.6 | 74.8 / 18.0 | 479340.1 / 62267.5 | +| tp2_mns64 | 30524.5 / 375.8 | 82.6 / 18.2 | 311160.1 / 62353.6 | +| tp4_mns8 | 834500.2 / 102605.9 | 35.4 / 6.8 | 957838.5 / 126405.4 | +| tp4_mns16 | 429098.7 / 35042.6 | 43.2 / 8.8 | 578209.7 / 65779.1 | +| tp4_mns32 | 166734.5 / 6296.2 | 49.4 / 12.2 | 336309.9 / 47944.5 | +| tp4_mns64 | 26688.5 / 246.0 | 53.7 / 13.2 | 209788.3 / 44985.1 | + +## Selection agreement + +| Target | Frontier winner | Real winner | Match | Pairwise agreement | +|---|---|---|---:|---:| +| ttft_ms:mean | tp4_mns64 | tp4_mns64 | yes | 84.8% (56/66) | +| ttft_ms:p90 | tp4_mns64 | tp4_mns64 | yes | 84.8% (56/66) | +| tpot_ms:mean | tp4_mns8 | tp4_mns8 | yes | 97.0% (64/66) | +| tpot_ms:p90 | tp4_mns8 | tp4_mns8 | yes | 97.0% (64/66) | +| e2e_ms:mean | tp4_mns64 | tp4_mns64 | yes | 92.4% (61/66) | +| e2e_ms:p90 | tp4_mns64 | tp4_mns64 | yes | 83.3% (55/66) | diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/launch.log b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/launch.log new file mode 100644 index 0000000..4b641d8 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/launch.log @@ -0,0 +1,2 @@ +ANALYSIS_LAUNCH_ECHO sim_root=/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2 real_audit=/home/admin/cpfs/wjh/aituner/simulator-tuning-latency-q30-tp-normalized-u0p01-20260717/qwen30-tracepd-u0p01-real-audit.json outputs=/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/analysis expected=12 completed cells, rank+latency comparison +ANALYSIS_RETRY_ECHO sim_root=/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2 real_audit_sha256=6e2c17bce5b0edb5f6f92aae4cc1b00f9390f692d31d059efe647158b386c8e9 output=/home/admin/cpfs/wjh/aituner/graph-piecewise-qwen30-20260717/simulator-piecewise-surface-v2/analysis diff --git a/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/summary.json b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/summary.json new file mode 100644 index 0000000..7ffaba6 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/frozen-inputs/q30-trace-pd/summary.json @@ -0,0 +1,230 @@ +{ + "e2e_ms:mean": { + "concordant_pairs": 61, + "discordant_pairs": 5, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.9242424242424242, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp2_mns32", + "tp2_mns64", + "tp4_mns16", + "tp1_mns32", + "tp1_mns64", + "tp2_mns16", + "tp1_mns16", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns64", + "tp4_mns16", + "tp1_mns32", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + }, + "e2e_ms:p90": { + "concordant_pairs": 55, + "discordant_pairs": 11, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.8333333333333334, + "real_ranking": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns16", + "tp2_mns32", + "tp2_mns64", + "tp2_mns16", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64", + "tp4_mns8", + "tp2_mns8", + "tp1_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns64", + "tp4_mns16", + "tp1_mns32", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + }, + "tpot_ms:mean": { + "concordant_pairs": 64, + "discordant_pairs": 2, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.9696969696969697, + "real_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns16", + "tp1_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "sim_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp4_mns32", + "tp2_mns8", + "tp4_mns64", + "tp2_mns16", + "tp2_mns32", + "tp1_mns8", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns8", + "tied_pairs": 0, + "winner_match": true + }, + "tpot_ms:p90": { + "concordant_pairs": 64, + "discordant_pairs": 2, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.9696969696969697, + "real_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8", + "tp4_mns32", + "tp4_mns64", + "tp2_mns16", + "tp1_mns8", + "tp2_mns32", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "real_winner": "tp4_mns8", + "sim_ranking": [ + "tp4_mns8", + "tp4_mns16", + "tp4_mns32", + "tp2_mns8", + "tp4_mns64", + "tp2_mns16", + "tp2_mns32", + "tp1_mns8", + "tp2_mns64", + "tp1_mns16", + "tp1_mns32", + "tp1_mns64" + ], + "sim_winner": "tp4_mns8", + "tied_pairs": 0, + "winner_match": true + }, + "ttft_ms:mean": { + "concordant_pairs": 56, + "discordant_pairs": 10, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.8484848484848485, + "real_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp1_mns32", + "tp2_mns32", + "tp4_mns32", + "tp1_mns16", + "tp2_mns16", + "tp4_mns16", + "tp1_mns8", + "tp2_mns8", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns32", + "tp4_mns16", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + }, + "ttft_ms:p90": { + "concordant_pairs": 56, + "discordant_pairs": 10, + "informative_pairs": 66, + "pairwise_agreement_fraction": 0.8484848484848485, + "real_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns32", + "tp1_mns64", + "tp2_mns32", + "tp4_mns32", + "tp1_mns16", + "tp4_mns16", + "tp2_mns16", + "tp1_mns8", + "tp2_mns8", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "sim_ranking": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64", + "tp4_mns32", + "tp2_mns32", + "tp1_mns32", + "tp4_mns16", + "tp2_mns16", + "tp4_mns8", + "tp1_mns16", + "tp2_mns8", + "tp1_mns8" + ], + "sim_winner": "tp4_mns64", + "tied_pairs": 0, + "winner_match": true + } +} diff --git a/runs/frontier-split-rootcause-v0/results/decision-pair-axis.png b/runs/frontier-split-rootcause-v0/results/decision-pair-axis.png new file mode 100644 index 0000000000000000000000000000000000000000..6d0bc0b04e6251f3140d9adbcf7490c7ec9e6da7 GIT binary patch literal 127495 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 literal 0 HcmV?d00001 diff --git a/runs/frontier-split-rootcause-v0/results/decomposition.json b/runs/frontier-split-rootcause-v0/results/decomposition.json new file mode 100644 index 0000000..d96b226 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/results/decomposition.json @@ -0,0 +1,7410 @@ +{ + "anomalies": [], + "cross_checks": [ + { + "expected_percent": 58.0, + "name": "q30 high-pressure fixed-pd TTFT mean regret", + "observed_percent": 57.97674051508896, + "passed": true + }, + { + "expected_percent": 33.0, + "name": "q235 A0 fixed-pd TPOT mean regret", + "observed_percent": 33.025510615656906, + "passed": true + }, + { + "expected_percent": 33.0, + "name": "q235 A1 fixed-pd TPOT mean regret", + "observed_percent": 33.025510615656906, + "passed": true + }, + { + "expected_percent": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "name": "q30 trace-pd all-objective regret", + "observed_percent": [ + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ], + "passed": true + }, + { + "expected_percent": [ + 21.2, + 0.3 + ], + "name": "q235 Trace-PO TTFT p90 A0 to A1 regret", + "observed_percent": [ + 21.17895828808376, + 0.2607797240047338 + ], + "passed": true + }, + { + "expected_percent": [ + 33.0, + 37.2, + 30.7, + 34.6, + 33.0, + 37.2, + 30.7, + 34.6 + ], + "name": "q235 Fixed-PD TPOT/E2E regrets unchanged from A0 to A1", + "observed_percent": [ + 33.025510615656906, + 37.228890038064755, + 30.67524317507717, + 34.56375801249614, + 33.025510615656906, + 37.228890038064755, + 30.67524317507717, + 34.56375801249614 + ], + "passed": true + } + ], + "data_gaps": [], + "definitions": { + "config_uniform_scale": "geomean_c(sim_c / real_c) over paired configs", + "failure": "regret > 0.05", + "fragile_success": "winner match and real best-vs-second relative margin < 0.01", + "h_scale_verdict": "HOLDS iff failure equals (top-3 log-ratio spread > log1p(real relative margin))", + "log_ratio_spread_all": "max_c(log(sim_c / real_c)) - min_c(log(sim_c / real_c))", + "log_ratio_spread_real_top3": "log-ratio spread over the three configs with lowest real objective values", + "objective_direction": "all objectives are minimized", + "pair_inversion": "real_c > real_w and sim_c < sim_w, equivalently delta_c < -m_c", + "real_pair_margin_percent": "100 * log(real_c / real_w)", + "real_relative_margin_best_vs_second": "real_second / real_best - 1", + "regret": "real_sim_winner / real_best - 1, recomputed from per-config values", + "signed_pairwise_delta_percent": "100 * (log(sim_c / sim_w) - log(real_c / real_w)); negative favors c relative to real", + "winner_deciding_axis": "axis difference between real winner w and sim winner s; none for a winner match", + "winner_pair_tie": "sim_s == sim_w with real_s > real_w; a decision-boundary winner-label mismatch, not a strict inversion" + }, + "directional_summary": { + "axis_inversions_by_case": [ + { + "case": "q30 trace-pd", + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q30 fixed-pd high", + "n_inv_mixed": 6, + "n_inv_mns": 3, + "n_inv_tp": 7, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q30 fixed-po high", + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 4, + "n_tie_tp": 0 + }, + { + "case": "q30 fixed-pd low", + "n_inv_mixed": 24, + "n_inv_mns": 0, + "n_inv_tp": 8, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q30 fixed-po low", + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 4, + "n_tie_tp": 0 + }, + { + "case": "q30 trace-po low", + "n_inv_mixed": 0, + "n_inv_mns": 6, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 2, + "n_tie_tp": 0 + }, + { + "case": "q235 A0 fixed-pd", + "n_inv_mixed": 5, + "n_inv_mns": 0, + "n_inv_tp": 5, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0 + }, + { + "case": "q235 A0 fixed-po", + "n_inv_mixed": 4, + "n_inv_mns": 0, + "n_inv_tp": 4, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q235 A0 trace-pd", + "n_inv_mixed": 0, + "n_inv_mns": 2, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q235 A0 trace-po", + "n_inv_mixed": 4, + "n_inv_mns": 2, + "n_inv_tp": 4, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q235 A1 fixed-pd", + "n_inv_mixed": 4, + "n_inv_mns": 0, + "n_inv_tp": 4, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0 + }, + { + "case": "q235 A1 fixed-po", + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q235 A1 trace-pd", + "n_inv_mixed": 0, + "n_inv_mns": 2, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0 + }, + { + "case": "q235 A1 trace-po", + "n_inv_mixed": 0, + "n_inv_mns": 2, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 2, + "n_tie_tp": 0 + } + ], + "axis_inversions_total": { + "mixed": 47, + "mns-axis": 17, + "tp-axis": 32 + }, + "axis_ties_total": { + "mixed": 0, + "mns-axis": 14, + "tp-axis": 0 + }, + "boundary_winner_ties": [ + { + "case": "q30 fixed-po high", + "objective": "ttft_mean_ms", + "real_winner": "tp4_mns32", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po high", + "objective": "ttft_p90_ms", + "real_winner": "tp4_mns32", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po high", + "objective": "e2e_mean_ms", + "real_winner": "tp4_mns32", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po high", + "objective": "e2e_p90_ms", + "real_winner": "tp4_mns32", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po low", + "objective": "ttft_mean_ms", + "real_winner": "tp4_mns8", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po low", + "objective": "ttft_p90_ms", + "real_winner": "tp4_mns8", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po low", + "objective": "e2e_mean_ms", + "real_winner": "tp4_mns8", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 fixed-po low", + "objective": "e2e_p90_ms", + "real_winner": "tp4_mns8", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 trace-po low", + "objective": "ttft_p90_ms", + "real_winner": "tp4_mns8", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q30 trace-po low", + "objective": "e2e_p90_ms", + "real_winner": "tp4_mns8", + "sim_winner": "tp4_mns16", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q235 A0 fixed-pd", + "objective": "ttft_p90_ms", + "real_winner": "tp8_ep8_mns64", + "sim_winner": "tp8_ep8_mns128", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q235 A1 fixed-pd", + "objective": "ttft_p90_ms", + "real_winner": "tp8_ep8_mns64", + "sim_winner": "tp8_ep8_mns128", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q235 A1 trace-po", + "objective": "ttft_p90_ms", + "real_winner": "tp8_ep8_mns64", + "sim_winner": "tp8_ep8_mns128", + "winner_deciding_axis": "mns-axis" + }, + { + "case": "q235 A1 trace-po", + "objective": "e2e_p90_ms", + "real_winner": "tp8_ep8_mns64", + "sim_winner": "tp8_ep8_mns128", + "winner_deciding_axis": "mns-axis" + } + ], + "fragile_success_count": 6, + "fragile_successes": [ + { + "case": "q30 trace-pd", + "objective": "e2e_p90_ms", + "real_relative_margin_percent": 0.07414165586019372 + }, + { + "case": "q235 A1 fixed-pd", + "objective": "ttft_mean_ms", + "real_relative_margin_percent": 0.37425080108803854 + }, + { + "case": "q235 A1 fixed-po", + "objective": "ttft_mean_ms", + "real_relative_margin_percent": 0.20104594953702648 + }, + { + "case": "q235 A1 fixed-po", + "objective": "ttft_p90_ms", + "real_relative_margin_percent": 0.26166420965441084 + }, + { + "case": "q235 A1 fixed-po", + "objective": "e2e_mean_ms", + "real_relative_margin_percent": 0.20087777023818365 + }, + { + "case": "q235 A1 fixed-po", + "objective": "e2e_p90_ms", + "real_relative_margin_percent": 0.26228330848965253 + } + ], + "margin_robust_success_count": 17, + "material_failures": [ + { + "case": "q30 fixed-pd high", + "objective": "ttft_mean_ms", + "regret": 0.5797674051508896, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -523.7691675731886, + "winner_pair_m_s_percent": 45.7277624272319 + }, + { + "case": "q30 fixed-pd high", + "objective": "ttft_p90_ms", + "regret": 0.5620663582204115, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -435.31434147282096, + "winner_pair_m_s_percent": 44.600953337070045 + }, + { + "case": "q30 fixed-pd high", + "objective": "e2e_p90_ms", + "regret": 0.05493398001893279, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -101.70914835555358, + "winner_pair_m_s_percent": 5.3478186788827395 + }, + { + "case": "q30 fixed-pd low", + "objective": "tpot_mean_ms", + "regret": 0.13962124906187534, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -52.50428401638987, + "winner_pair_m_s_percent": 13.069596953822204 + }, + { + "case": "q30 fixed-pd low", + "objective": "tpot_p90_ms", + "regret": 0.1335710369665437, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -52.8208410178207, + "winner_pair_m_s_percent": 12.537285946185337 + }, + { + "case": "q30 fixed-pd low", + "objective": "e2e_mean_ms", + "regret": 0.2692193946565338, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -59.60969731665489, + "winner_pair_m_s_percent": 23.840206161907986 + }, + { + "case": "q30 fixed-pd low", + "objective": "e2e_p90_ms", + "regret": 0.2573048300400054, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -59.778209091748444, + "winner_pair_m_s_percent": 22.897040620669692 + }, + { + "case": "q235 A0 fixed-pd", + "objective": "tpot_mean_ms", + "regret": 0.33025510615656906, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -63.96663007689711, + "winner_pair_m_s_percent": 28.537073298091865 + }, + { + "case": "q235 A0 fixed-pd", + "objective": "tpot_p90_ms", + "regret": 0.37228890038064755, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -62.84476021464781, + "winner_pair_m_s_percent": 31.648007592775677 + }, + { + "case": "q235 A0 fixed-pd", + "objective": "e2e_mean_ms", + "regret": 0.3067524317507717, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -61.50853261890787, + "winner_pair_m_s_percent": 26.754499952423572 + }, + { + "case": "q235 A0 fixed-pd", + "objective": "e2e_p90_ms", + "regret": 0.3456375801249614, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -60.36185233190644, + "winner_pair_m_s_percent": 29.686793800126072 + }, + { + "case": "q235 A0 fixed-po", + "objective": "ttft_mean_ms", + "regret": 0.058746722254088946, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -12.020280158083734, + "winner_pair_m_s_percent": 5.708587111542836 + }, + { + "case": "q235 A0 fixed-po", + "objective": "e2e_mean_ms", + "regret": 0.05873813644442971, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -12.019469213946493, + "winner_pair_m_s_percent": 5.707776167405595 + }, + { + "case": "q235 A0 trace-pd", + "objective": "e2e_p90_ms", + "regret": 0.062164651568153984, + "winner_deciding_axis": "mns-axis", + "winner_pair_delta_s_percent": -16.715978521917112, + "winner_pair_m_s_percent": 6.030894994380943 + }, + { + "case": "q235 A0 trace-po", + "objective": "ttft_mean_ms", + "regret": 0.07039370625209918, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -36.29522004071061, + "winner_pair_m_s_percent": 6.802653056521642 + }, + { + "case": "q235 A0 trace-po", + "objective": "ttft_p90_ms", + "regret": 0.2117895828808376, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -31.606834004650835, + "winner_pair_m_s_percent": 19.209826109044702 + }, + { + "case": "q235 A0 trace-po", + "objective": "e2e_mean_ms", + "regret": 0.07037121566091509, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -36.29311886734452, + "winner_pair_m_s_percent": 6.800551883155552 + }, + { + "case": "q235 A0 trace-po", + "objective": "e2e_p90_ms", + "regret": 0.21167227304868486, + "winner_deciding_axis": "mixed", + "winner_pair_delta_s_percent": -31.59715282630199, + "winner_pair_m_s_percent": 19.20014493069586 + }, + { + "case": "q235 A1 fixed-pd", + "objective": "tpot_mean_ms", + "regret": 0.33025510615656906, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -60.056263771346096, + "winner_pair_m_s_percent": 28.537073298091865 + }, + { + "case": "q235 A1 fixed-pd", + "objective": "tpot_p90_ms", + "regret": 0.37228890038064755, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -61.12091996120764, + "winner_pair_m_s_percent": 31.648007592775677 + }, + { + "case": "q235 A1 fixed-pd", + "objective": "e2e_mean_ms", + "regret": 0.3067524317507717, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -58.25805162281401, + "winner_pair_m_s_percent": 26.754499952423572 + }, + { + "case": "q235 A1 fixed-pd", + "objective": "e2e_p90_ms", + "regret": 0.3456375801249614, + "winner_deciding_axis": "tp-axis", + "winner_pair_delta_s_percent": -59.1984798883988, + "winner_pair_m_s_percent": 29.686793800126072 + }, + { + "case": "q235 A1 trace-pd", + "objective": "e2e_p90_ms", + "regret": 0.062164651568153984, + "winner_deciding_axis": "mns-axis", + "winner_pair_delta_s_percent": -17.372678635438426, + "winner_pair_m_s_percent": 6.030894994380943 + } + ], + "sim_tie_winner_mismatch_count": 14, + "strict_winner_reversal_count": 33 + }, + "known_attribution": { + "q235_state": { + "components": [ + { + "component": "total", + "exact_state_tp8_minus_tp4_ms": 10.902788634037428, + "own_composition_tp8_minus_tp4_ms": -20.06625468177714 + }, + { + "component": "moe_compute", + "exact_state_tp8_minus_tp4_ms": -1.9774463255033616, + "own_composition_tp8_minus_tp4_ms": -32.45444243169211 + }, + { + "component": "attention", + "exact_state_tp8_minus_tp4_ms": -2.130420408899373, + "own_composition_tp8_minus_tp4_ms": -7.461942625219683 + }, + { + "component": "tp_dp_communication", + "exact_state_tp8_minus_tp4_ms": -6.471757614086094, + "own_composition_tp8_minus_tp4_ms": -6.571107062807271 + }, + { + "component": "ep_communication", + "exact_state_tp8_minus_tp4_ms": 6.535508227248577, + "own_composition_tp8_minus_tp4_ms": 6.235402017662346 + }, + { + "component": "moe_routing", + "exact_state_tp8_minus_tp4_ms": 0.13840596821076812, + "own_composition_tp8_minus_tp4_ms": -0.2861742505642797 + }, + { + "component": "dense_mlp_compute", + "exact_state_tp8_minus_tp4_ms": -0.030752152939768296, + "own_composition_tp8_minus_tp4_ms": -0.12314137296116046 + }, + { + "component": "pipeline_communication", + "exact_state_tp8_minus_tp4_ms": 0.0, + "own_composition_tp8_minus_tp4_ms": 0.0 + }, + { + "component": "runtime_overhead", + "exact_state_tp8_minus_tp4_ms": 0.0, + "own_composition_tp8_minus_tp4_ms": 0.0 + } + ], + "configs": [ + { + "config": "tp4_ep1_mns64", + "exact_state_coverage": 1.0, + "exact_state_matched_sim_ms": 34.25746674314369, + "real_exact_decode_batch_mean": 3.8896771904930825, + "real_token_weighted_iteration_ms": 18.47097461620307, + "sim_own_decode_batch_mean": 13.537037037037036 + }, + { + "config": "tp8_ep8_mns64", + "exact_state_coverage": 1.0, + "exact_state_matched_sim_ms": 45.160255377181116, + "real_exact_decode_batch_mean": 10.921314741035857, + "real_token_weighted_iteration_ms": 27.588699194406445, + "sim_own_decode_batch_mean": 18.93782383419689 + } + ], + "contrast_decomposition": { + "exact_state_matched_tp8_minus_tp4_ms": 10.902788634037428, + "residual_vs_exact_iteration_ms": 1.7850640558340523, + "residual_vs_frozen_real_tpot_ms": 3.9527886340374287, + "simulator_internal_tp8_minus_tp4_ms": -20.06625468177714, + "state_composition_shift_ms": 30.969043315814567 + }, + "reference": { + "exact_iteration_tp8_minus_tp4_ms": 9.117724578203376, + "observed_real_tp8_minus_tp4_ms": 6.949999999999999, + "real_tpot_ms": { + "tp4_ep1_mns64": 21.0442, + "tp8_ep8_mns64": 27.9942 + } + }, + "source": "q235-state-diag/state-diagnosis-exact.json", + "verdict": "Exact real state composition flips Frontier to the correct TP4 winner; the ranking error is caused by closed-loop state/composition mismatch, not a conditional stage reversal." + }, + "q30_admission": { + "cells": [ + { + "config": "tp2_mns64", + "mns": 64, + "real_required_slots_upper_bound": 7.548483722821714, + "real_ttft_ms": 194.56193759030603, + "real_waiting_max": 0, + "sim_first_scheduling_wait_ms": 38.22329108338011, + "sim_queue_free_ttft_ms": 191.02937373774816, + "sim_required_slots": 57.96430802744742, + "sim_tpot_over_real": 8.091316956395687, + "sim_ttft_ms": 229.2526648211283 + }, + { + "config": "tp4_mns16", + "mns": 16, + "real_required_slots_upper_bound": 14.637597063342735, + "real_ttft_ms": 124.49453797538061, + "real_waiting_max": 0, + "sim_first_scheduling_wait_ms": 64906.25631809643, + "sim_queue_free_ttft_ms": 134.74066995065758, + "sim_required_slots": 54.488824675063235, + "sim_tpot_over_real": 3.8276349505907024, + "sim_ttft_ms": 65040.99698804708 + }, + { + "config": "tp4_mns32", + "mns": 32, + "real_required_slots_upper_bound": 14.521569587596273, + "real_ttft_ms": 123.15859724408143, + "real_waiting_max": 0, + "sim_first_scheduling_wait_ms": 27180.676177927482, + "sim_queue_free_ttft_ms": 135.62147333612225, + "sim_required_slots": 65.89386162288272, + "sim_tpot_over_real": 4.6740581573385525, + "sim_ttft_ms": 27316.2976512636 + }, + { + "config": "tp4_mns64", + "mns": 64, + "real_required_slots_upper_bound": 14.661911968825338, + "real_ttft_ms": 123.17715882596677, + "real_waiting_max": 0, + "sim_first_scheduling_wait_ms": 6367.273779218055, + "sim_queue_free_ttft_ms": 136.7304324624105, + "sim_required_slots": 79.81630813400574, + "sim_tpot_over_real": 5.614117914776633, + "sim_ttft_ms": 6504.004211680465 + } + ], + "contrasts": { + "observed_sim_ttft_tp4_minus_tp2_ms": 27087.044986442474, + "queue_free_sim_ttft_tp4_minus_tp2_ms": -55.40790040162591, + "real_ttft_tp4_minus_tp2_ms": -71.4033403462246 + }, + "source": "q30-admission-diag/result.json", + "verdict": "Frontier overpredicts decode service time, so TP4's higher global arrival rate crosses the MNS admission cap only in simulation. The resulting first-scheduling queue reverses the TP topology ranking; without that queue Frontier itself predicts TP4 faster than TP2, matching real hardware." + } + }, + "rows": [ + { + "case": "q30 trace-pd", + "config_uniform_scale": 45.899648513700804, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 4.140203056697399, + "log_ratio_spread_real_top3": 0.7350071901442927, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 425.7830890012937, + "signed_pairwise_delta_percent": -77.29228415027549 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 92.53155134784632, + "signed_pairwise_delta_percent": 154.92939260781299 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 92.42510316771971, + "signed_pairwise_delta_percent": 44.55096600091358 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 588.5391626639711, + "signed_pairwise_delta_percent": -174.96406393770422 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 494.19206953478573, + "signed_pairwise_delta_percent": -181.7812291449898 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 145.20093058332228, + "signed_pairwise_delta_percent": 67.76147877390028 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 42.379688777532195, + "signed_pairwise_delta_percent": -28.94975301351572 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 596.613115965754, + "signed_pairwise_delta_percent": -218.41901367549661 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 495.91805198396617, + "signed_pairwise_delta_percent": -218.17248485782983 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 324.25665835499575, + "signed_pairwise_delta_percent": -141.03952629372947 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 603.3510930798824, + "signed_pairwise_delta_percent": -259.0909130619269 + } + ], + "real_relative_margin_best_vs_second": 0.5277512573119312, + "real_top3_configs": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns64" + ], + "real_winner": "tp4_mns64", + "regret": 0.0, + "sim_winner": "tp4_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-trace-pd/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-pd", + "config_uniform_scale": 43.38413908996929, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 3.8627205241706646, + "log_ratio_spread_real_top3": 1.3676487927064054, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 413.27263799256224, + "signed_pairwise_delta_percent": -133.33363440024485 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 103.58793636206667, + "signed_pairwise_delta_percent": 92.65315392171725 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 104.88701154249979, + "signed_pairwise_delta_percent": 0.5820114595004977 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 550.2663402226464, + "signed_pairwise_delta_percent": -210.29242844968587 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 473.3308528278175, + "signed_pairwise_delta_percent": -229.66830605288865 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 130.25554778064452, + "signed_pairwise_delta_percent": 29.42287867963369 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 51.61341304162133, + "signed_pairwise_delta_percent": -44.11172534892322 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 559.1872645568208, + "signed_pairwise_delta_percent": -254.7846496300535 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 468.54545769902376, + "signed_pairwise_delta_percent": -259.82819430980805 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 333.04135988053577, + "signed_pairwise_delta_percent": -204.24777470078647 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 564.214798802028, + "signed_pairwise_delta_percent": -293.6188984953492 + } + ], + "real_relative_margin_best_vs_second": 0.6755377028954586, + "real_top3_configs": [ + "tp4_mns64", + "tp2_mns64", + "tp1_mns32" + ], + "real_winner": "tp4_mns64", + "regret": 0.0, + "sim_winner": "tp4_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-trace-pd/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-pd", + "config_uniform_scale": 4.798699439392796, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.34234204465206575, + "log_ratio_spread_real_top3": 0.11876167427448592, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 111.39211804152, + "signed_pairwise_delta_percent": -8.483533629441165 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 125.72442888367388, + "signed_pairwise_delta_percent": -4.073078922372719 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 127.21791091204592, + "signed_pairwise_delta_percent": 8.632369074762082 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 74.84126630438477, + "signed_pairwise_delta_percent": 1.447194103380467 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 73.532537849401, + "signed_pairwise_delta_percent": -13.742569389219161 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 97.95939493225517, + "signed_pairwise_delta_percent": -23.240697633755538 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 99.29270089893359, + "signed_pairwise_delta_percent": -14.63432527265468 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 31.337675062299986, + "signed_pairwise_delta_percent": 5.216266068044573 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 26.49069271125039, + "signed_pairwise_delta_percent": -6.6599013594039915 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 58.92488843099623, + "signed_pairwise_delta_percent": -25.60183539044448 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 66.79126824994552, + "signed_pairwise_delta_percent": -25.112476758256985 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.3033096673391522, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8" + ], + "real_winner": "tp4_mns8", + "regret": 0.0, + "sim_winner": "tp4_mns8", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-trace-pd/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-pd", + "config_uniform_scale": 4.291364819104713, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.349119999217536, + "log_ratio_spread_real_top3": 0.10928760145539185, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 125.15305260666022, + "signed_pairwise_delta_percent": -19.96596661376333 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 142.11708890779718, + "signed_pairwise_delta_percent": -17.29368054409164 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 143.30272831211315, + "signed_pairwise_delta_percent": -0.4539882281926477 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 81.3187358452952, + "signed_pairwise_delta_percent": -3.482599377639306 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 80.19578793426079, + "signed_pairwise_delta_percent": -18.566404630125845 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 107.78616263504968, + "signed_pairwise_delta_percent": -30.705392091898254 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 109.09052427237363, + "signed_pairwise_delta_percent": -19.929771139892004 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 34.15060711443027, + "signed_pairwise_delta_percent": 3.7395670641060086 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 28.455433619208037, + "signed_pairwise_delta_percent": -7.189193081433193 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 64.11332289157903, + "signed_pairwise_delta_percent": -28.87510274879303 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 75.37357913831967, + "signed_pairwise_delta_percent": -31.172432857647596 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.32916953334893906, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns16", + "tp2_mns8" + ], + "real_winner": "tp4_mns8", + "regret": 0.0, + "sim_winner": "tp4_mns8", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-trace-pd/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-pd", + "config_uniform_scale": 8.262858317506733, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 1.0986813103518063, + "log_ratio_spread_real_top3": 0.5012037189370788, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 66.36499381882803, + "signed_pairwise_delta_percent": 108.79476716386034 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 58.8748864721832, + "signed_pairwise_delta_percent": 64.75911332399981 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 60.347657868883765, + "signed_pairwise_delta_percent": 35.940764769548515 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 112.0895297823733, + "signed_pairwise_delta_percent": 109.86813103518062 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 61.17455796538679, + "signed_pairwise_delta_percent": 76.12681299620277 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 32.51075059215534, + "signed_pairwise_delta_percent": 50.12037189370784 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 32.64897177653879, + "signed_pairwise_delta_percent": 6.771864363272045 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 104.80152491744161, + "signed_pairwise_delta_percent": 81.27184764853052 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 37.99697371409521, + "signed_pairwise_delta_percent": 63.386785575481056 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 6.3712519410935915, + "signed_pairwise_delta_percent": 40.82215218358013 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 103.31621796003591, + "signed_pairwise_delta_percent": 48.54179170585697 + } + ], + "real_relative_margin_best_vs_second": 0.06578596194014197, + "real_top3_configs": [ + "tp4_mns64", + "tp4_mns32", + "tp2_mns32" + ], + "real_winner": "tp4_mns64", + "regret": 0.0, + "sim_winner": "tp4_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-trace-pd/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-pd", + "config_uniform_scale": 8.066172032770895, + "expected_config_count": 12, + "failure": false, + "fragile_success": true, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 1.2303978377958356, + "log_ratio_spread_real_top3": 0.7034476827520184, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 62.299232337248434, + "signed_pairwise_delta_percent": 108.56642733247624 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 66.51906134872392, + "signed_pairwise_delta_percent": 57.03741657339753 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 68.00975092247843, + "signed_pairwise_delta_percent": 28.839836578727095 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 97.52912455611215, + "signed_pairwise_delta_percent": 123.03978377958349 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 49.72701364992361, + "signed_pairwise_delta_percent": 83.73553771263259 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 33.62187114781614, + "signed_pairwise_delta_percent": 48.68626755803108 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 34.60052079875263, + "signed_pairwise_delta_percent": 8.505625400877559 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 94.65769118557269, + "signed_pairwise_delta_percent": 90.22793273806666 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 27.58788592694011, + "signed_pairwise_delta_percent": 70.3447682752018 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.07411418451216154, + "signed_pairwise_delta_percent": 45.007951726273106 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 91.4777538802895, + "signed_pairwise_delta_percent": 59.43122170260607 + } + ], + "real_relative_margin_best_vs_second": 0.0007414165586019372, + "real_top3_configs": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns16" + ], + "real_winner": "tp4_mns64", + "regret": 0.0, + "sim_winner": "tp4_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-trace-pd/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-pd high", + "config_uniform_scale": 80.27356282971952, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 6.647450003760477, + "log_ratio_spread_real_top3": 2.2919615656812473, + "missing_configs": [], + "n_inv_mixed": 2, + "n_inv_mns": 1, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 95.49977993455686, + "signed_pairwise_delta_percent": 35.24651168874489 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": true, + "real_pair_margin_percent": 95.063546989325, + "signed_pairwise_delta_percent": -123.55932905047267 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 95.64389799119368, + "signed_pairwise_delta_percent": -534.2205177871797 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 94.7705561639161, + "signed_pairwise_delta_percent": 109.67959518505891 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 49.422396437751175, + "signed_pairwise_delta_percent": 60.17959107930238 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": true, + "real_pair_margin_percent": 49.333707226264345, + "signed_pairwise_delta_percent": -52.766300168579974 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 45.7277624272319, + "signed_pairwise_delta_percent": -523.7691675731886 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 46.01935636714559, + "signed_pairwise_delta_percent": 130.52448258886798 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 1.0788909971033689, + "signed_pairwise_delta_percent": 85.67453763656644 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": true, + "real_pair_margin_percent": 0.015070148334617827, + "signed_pairwise_delta_percent": -143.52161893155832 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 414.6352679329693, + "signed_pairwise_delta_percent": -263.0584045824042 + } + ], + "real_relative_margin_best_vs_second": 0.00015071283938516977, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns16" + ], + "real_winner": "tp4_mns32", + "regret": 0.5797674051508896, + "sim_winner": "tp2_mns64", + "sim_winner_real_relative_loss": 0.5797674051508896, + "sources": [ + "q30-fixed-hi/fixed-pd/comparison.json", + "q30-fixed-hi/fixed-pd/real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -523.7691675731886, + "winner_pair_m_s_percent": 45.7277624272319, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-pd high", + "config_uniform_scale": 130.66346534057038, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 7.092751831801099, + "log_ratio_spread_real_top3": 2.2268269641383185, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 93.72928763800273, + "signed_pairwise_delta_percent": 173.8072062575841 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 93.44021170742349, + "signed_pairwise_delta_percent": 21.330865292892188 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 93.88144073535756, + "signed_pairwise_delta_percent": -444.53250480136165 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 93.24983507093198, + "signed_pairwise_delta_percent": 244.41427013677844 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 49.20897259013651, + "signed_pairwise_delta_percent": 196.79655252285477 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 49.34236949428588, + "signed_pairwise_delta_percent": 90.24518667005819 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 44.600953337070045, + "signed_pairwise_delta_percent": -435.31434147282096 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 44.846370322374355, + "signed_pairwise_delta_percent": 264.74267837874817 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.23892035198680692, + "signed_pairwise_delta_percent": 222.6826964138318 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.06833719734037036, + "signed_pairwise_delta_percent": 142.72331929981317 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 470.42622660647976, + "signed_pairwise_delta_percent": -185.91602808451228 + } + ], + "real_relative_margin_best_vs_second": 0.0006836055252286144, + "real_top3_configs": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns16" + ], + "real_winner": "tp4_mns64", + "regret": 0.5620663582204115, + "sim_winner": "tp2_mns64", + "sim_winner_real_relative_loss": 0.5620663582204115, + "sources": [ + "q30-fixed-hi/fixed-pd/comparison.json", + "q30-fixed-hi/fixed-pd/real-audit.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -435.31434147282096, + "winner_pair_m_s_percent": 44.600953337070045, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-pd high", + "config_uniform_scale": 6.313105858122109, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 1.1809570890904728, + "log_ratio_spread_real_top3": 0.9568100689791217, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 30.94382797908889, + "signed_pairwise_delta_percent": 73.27671364429281 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 29.57530277436313, + "signed_pairwise_delta_percent": 95.68100689791214 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 31.449801879589334, + "signed_pairwise_delta_percent": 102.52772025706145 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 31.054240651015142, + "signed_pairwise_delta_percent": 43.97849942435047 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 54.259465439535774, + "signed_pairwise_delta_percent": 6.807202298146797 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 56.81232707946078, + "signed_pairwise_delta_percent": 22.71082561174641 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 38.68791163842329, + "signed_pairwise_delta_percent": 59.286451340060744 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 36.9319004785833, + "signed_pairwise_delta_percent": -2.2053184202783296 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 37.66973031153608, + "signed_pairwise_delta_percent": -15.567988651985809 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 36.885145529252576, + "signed_pairwise_delta_percent": 4.4100686169577905 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 37.88435252075483, + "signed_pairwise_delta_percent": 22.735748881633384 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.34413815100360146, + "real_top3_configs": [ + "tp4_mns8", + "tp1_mns32", + "tp1_mns16" + ], + "real_winner": "tp4_mns8", + "regret": 0.0, + "sim_winner": "tp4_mns8", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-fixed-hi/fixed-pd/comparison.json", + "q30-fixed-hi/fixed-pd/real-audit.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-pd high", + "config_uniform_scale": 5.885039491382665, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 1.2232223312082269, + "log_ratio_spread_real_top3": 0.9511712499899991, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 32.76189094601604, + "signed_pairwise_delta_percent": 71.90461644842226 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 31.623627006928796, + "signed_pairwise_delta_percent": 95.11712499899991 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 33.72600206831461, + "signed_pairwise_delta_percent": 103.22068421989188 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 32.79701086217899, + "signed_pairwise_delta_percent": 42.366270249175436 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 70.38082644168276, + "signed_pairwise_delta_percent": -8.955970516126776 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 70.213016980584, + "signed_pairwise_delta_percent": 10.564547864752338 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 41.23602295916777, + "signed_pairwise_delta_percent": 60.90742373262441 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 40.39726148279639, + "signed_pairwise_delta_percent": -5.603938757169219 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 41.49621341698774, + "signed_pairwise_delta_percent": -19.101548900930826 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 40.815568423340856, + "signed_pairwise_delta_percent": 1.6982357807242388 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 41.453178330956014, + "signed_pairwise_delta_percent": 23.186909212748937 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.3719543690892244, + "real_top3_configs": [ + "tp4_mns8", + "tp1_mns32", + "tp1_mns16" + ], + "real_winner": "tp4_mns8", + "regret": 0.0, + "sim_winner": "tp4_mns8", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-fixed-hi/fixed-pd/comparison.json", + "q30-fixed-hi/fixed-pd/real-audit.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-pd high", + "config_uniform_scale": 18.86746837736289, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 2.2653893343616147, + "log_ratio_spread_real_top3": 1.1146207125801464, + "missing_configs": [], + "n_inv_mixed": 2, + "n_inv_mns": 1, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mns-axis", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 1.276181452945976, + "signed_pairwise_delta_percent": 84.93667289106678 + }, + { + "axis_vs_real_winner": "none", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 1.7465468803864743, + "signed_pairwise_delta_percent": -39.82153729011294 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 1.3041295093334115, + "signed_pairwise_delta_percent": 143.94402186459692 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 19.530214414414008, + "signed_pairwise_delta_percent": 41.253386419289285 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": true, + "real_pair_margin_percent": 21.947794000268598, + "signed_pairwise_delta_percent": -34.6922795296003 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 4.610302806179068, + "signed_pairwise_delta_percent": -78.71974507782036 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 2.974254325999045, + "signed_pairwise_delta_percent": 113.33759030038964 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 1.5202495868550074, + "signed_pairwise_delta_percent": 33.73219440118163 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_mns32", + "inversion": true, + "real_pair_margin_percent": 0.7244237698333954, + "signed_pairwise_delta_percent": -26.525398366947872 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_mns64", + "inversion": true, + "real_pair_margin_percent": 1.6862244572033922, + "signed_pairwise_delta_percent": -82.59491157156452 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 113.12888745520367, + "signed_pairwise_delta_percent": -22.515920958436265 + } + ], + "real_relative_margin_best_vs_second": 0.007270540664867875, + "real_top3_configs": [ + "tp1_mns32", + "tp4_mns32", + "tp1_mns16" + ], + "real_winner": "tp1_mns32", + "regret": 0.017005214686575565, + "sim_winner": "tp4_mns64", + "sim_winner_real_relative_loss": 0.017005214686575565, + "sources": [ + "q30-fixed-hi/fixed-pd/comparison.json", + "q30-fixed-hi/fixed-pd/real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -82.59491157156452, + "winner_pair_m_s_percent": 1.6862244572033922, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-pd high", + "config_uniform_scale": 24.706368987570023, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 2.74200205248491, + "log_ratio_spread_real_top3": 1.7249105689293742, + "missing_configs": [], + "n_inv_mixed": 2, + "n_inv_mns": 1, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mns-axis", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 1.058967777283412, + "signed_pairwise_delta_percent": 110.6461541912706 + }, + { + "axis_vs_real_winner": "none", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 1.925759576793605, + "signed_pairwise_delta_percent": -63.428490447993504 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 1.0044647579152355, + "signed_pairwise_delta_percent": 172.49105689293737 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 33.27033924347824, + "signed_pairwise_delta_percent": 54.397757467940764 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 33.10740332058363, + "signed_pairwise_delta_percent": -32.26152641791503 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 5.3478186788827395, + "signed_pairwise_delta_percent": -101.70914835555358 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 4.530104156426464, + "signed_pairwise_delta_percent": 140.29978254043905 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 3.5336243843482795, + "signed_pairwise_delta_percent": 59.4958948992397 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_mns32", + "inversion": true, + "real_pair_margin_percent": 2.849041083001832, + "signed_pairwise_delta_percent": -8.454232788907941 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_mns64", + "inversion": true, + "real_pair_margin_percent": 3.5041851262986916, + "signed_pairwise_delta_percent": -92.1011626014233 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 156.6309394860069, + "signed_pairwise_delta_percent": -37.29992401503031 + } + ], + "real_relative_margin_best_vs_second": 0.010095264385685976, + "real_top3_configs": [ + "tp1_mns32", + "tp1_mns8", + "tp1_mns16" + ], + "real_winner": "tp1_mns32", + "regret": 0.05493398001893279, + "sim_winner": "tp2_mns64", + "sim_winner_real_relative_loss": 0.05493398001893279, + "sources": [ + "q30-fixed-hi/fixed-pd/comparison.json", + "q30-fixed-hi/fixed-pd/real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -101.70914835555358, + "winner_pair_m_s_percent": 5.3478186788827395, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-po high", + "config_uniform_scale": 0.964228039140724, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.2748488109291796, + "log_ratio_spread_real_top3": 0.0031834782899782255, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 101.05074090634112, + "signed_pairwise_delta_percent": -27.19082062892747 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 101.04075067896244, + "signed_pairwise_delta_percent": -27.180830401548782 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 101.23941070924307, + "signed_pairwise_delta_percent": -27.379490431829424 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 101.34480137033162, + "signed_pairwise_delta_percent": -27.484881092917966 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 51.753490275609735, + "signed_pairwise_delta_percent": -20.164334456356727 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 51.69449732837048, + "signed_pairwise_delta_percent": -20.10534150911747 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 50.79372465396658, + "signed_pairwise_delta_percent": -19.204568834713566 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 49.239894564408196, + "signed_pairwise_delta_percent": -17.650738745155188 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.3457059423188482, + "signed_pairwise_delta_percent": -0.3457059423188482 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.11778366602921966, + "signed_pairwise_delta_percent": -0.11778366602921966 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.3183478289978128, + "signed_pairwise_delta_percent": -0.3183478289978128 + } + ], + "real_relative_margin_best_vs_second": 0.0011785305823068803, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns8" + ], + "real_winner": "tp4_mns32", + "regret": 0.0034630419451076033, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.0034630419451076033, + "sources": [ + "q30-fixed-hi/fixed-po/comparison.json", + "q30-fixed-hi/fixed-po/real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.3457059423188482, + "winner_pair_m_s_percent": 0.3457059423188482, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-po high", + "config_uniform_scale": 0.9564015690834595, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.26887996664870883, + "log_ratio_spread_real_top3": 0.00304657671462559, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 100.62312189015677, + "signed_pairwise_delta_percent": -26.763201612741206 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 100.27398231390275, + "signed_pairwise_delta_percent": -26.414062036487184 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 100.66288725500065, + "signed_pairwise_delta_percent": -26.802966977585097 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 100.74791694228644, + "signed_pairwise_delta_percent": -26.887996664870883 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 51.29294809851041, + "signed_pairwise_delta_percent": -19.703792279257375 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 51.1818062042697, + "signed_pairwise_delta_percent": -19.59265038501667 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 50.60491466017445, + "signed_pairwise_delta_percent": -19.01575884092142 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 48.82452174557843, + "signed_pairwise_delta_percent": -17.235365926325404 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.5252213726458267, + "signed_pairwise_delta_percent": -0.5252213726458267 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.3046576714625563, + "signed_pairwise_delta_percent": -0.3046576714625563 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0066591234348748005, + "signed_pairwise_delta_percent": -0.0066591234348748005 + } + ], + "real_relative_margin_best_vs_second": 6.659345159421015e-05, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64" + ], + "real_winner": "tp4_mns32", + "regret": 0.005266030780421316, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.005266030780421316, + "sources": [ + "q30-fixed-hi/fixed-po/comparison.json", + "q30-fixed-hi/fixed-po/real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.5252213726458267, + "winner_pair_m_s_percent": 0.5252213726458267, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-po high", + "config_uniform_scale": 0.9639779985207279, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.2746145677630782, + "log_ratio_spread_real_top3": 0.0031816282464492696, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 101.02634481547024, + "signed_pairwise_delta_percent": -27.16642453805659 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 101.01671464824831, + "signed_pairwise_delta_percent": -27.156794370834657 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 101.21675100585334, + "signed_pairwise_delta_percent": -27.356830728439697 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 101.32137705372146, + "signed_pairwise_delta_percent": -27.461456776307813 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 51.73931792837375, + "signed_pairwise_delta_percent": -20.15016210912074 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 51.679741891211606, + "signed_pairwise_delta_percent": -20.090586071958594 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 50.77867236420423, + "signed_pairwise_delta_percent": -19.189516544951225 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 49.225955262342325, + "signed_pairwise_delta_percent": -17.636799443089313 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.3447193573234837, + "signed_pairwise_delta_percent": -0.3447193573234837 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.11768182780294648, + "signed_pairwise_delta_percent": -0.11768182780294648 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.31816282464494144, + "signed_pairwise_delta_percent": -0.31816282464494144 + } + ], + "real_relative_margin_best_vs_second": 0.0011775110003686695, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns64", + "tp4_mns8" + ], + "real_winner": "tp4_mns32", + "regret": 0.0034531419781376194, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.0034531419781376194, + "sources": [ + "q30-fixed-hi/fixed-po/comparison.json", + "q30-fixed-hi/fixed-po/real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.3447193573234837, + "winner_pair_m_s_percent": 0.3447193573234837, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-po high", + "config_uniform_scale": 0.9561532784377857, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.26866713457177865, + "log_ratio_spread_real_top3": 0.003023225018183584, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 100.59790659227713, + "signed_pairwise_delta_percent": -26.737986314861562 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 100.2500528083333, + "signed_pairwise_delta_percent": -26.390132530917743 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 100.63890275260015, + "signed_pairwise_delta_percent": -26.778982475184588 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 100.72663373459343, + "signed_pairwise_delta_percent": -26.86671345717787 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 51.27776494486162, + "signed_pairwise_delta_percent": -19.688609125608597 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 51.16674542969726, + "signed_pairwise_delta_percent": -19.577589610444228 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 50.5883392985462, + "signed_pairwise_delta_percent": -18.999183479293176 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 48.81412540227583, + "signed_pairwise_delta_percent": -17.224969583022798 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.5263180408757429, + "signed_pairwise_delta_percent": -0.5263180408757429 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.3023225018183476, + "signed_pairwise_delta_percent": -0.3023225018183476 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.005990797056166493, + "signed_pairwise_delta_percent": -0.005990797056166493 + } + ], + "real_relative_margin_best_vs_second": 5.990976507996848e-05, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64" + ], + "real_winner": "tp4_mns32", + "regret": 0.0052770552740579735, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.0052770552740579735, + "sources": [ + "q30-fixed-hi/fixed-po/comparison.json", + "q30-fixed-hi/fixed-po/real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.5263180408757429, + "winner_pair_m_s_percent": 0.5263180408757429, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-pd low", + "config_uniform_scale": 1.368098672630302, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.4377687692283213, + "log_ratio_spread_real_top3": 0.015340372114717726, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 87.54418992315985, + "signed_pairwise_delta_percent": -43.361639510708514 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 87.65226356157126, + "signed_pairwise_delta_percent": -43.46971314911994 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 87.95942733528346, + "signed_pairwise_delta_percent": -43.77687692283213 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 87.90596709065582, + "signed_pairwise_delta_percent": -43.723416678204494 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 44.441336244863145, + "signed_pairwise_delta_percent": -22.421306800693213 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 42.65776119983087, + "signed_pairwise_delta_percent": -20.63773175566094 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 41.25101894269539, + "signed_pairwise_delta_percent": -19.230989498525457 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 40.74382542815109, + "signed_pairwise_delta_percent": -18.72379598398116 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 1.5340372114717864, + "signed_pairwise_delta_percent": -1.5340372114717864 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 1.3397123950439613, + "signed_pairwise_delta_percent": -1.3397123950439613 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 2.2598323976525228, + "signed_pairwise_delta_percent": -2.2598323976525228 + } + ], + "real_relative_margin_best_vs_second": 0.013487267520547963, + "real_top3_configs": [ + "tp4_mns16", + "tp4_mns64", + "tp4_mns32" + ], + "real_winner": "tp4_mns16", + "regret": 0.0, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-expansion-lo/fixed-pd-comparison.json", + "q30-expansion-lo/fixed-pd-real-audit.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-pd low", + "config_uniform_scale": 1.4015522030046448, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.48740148963773433, + "log_ratio_spread_real_top3": 0.028938391079618264, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 83.24380892439706, + "signed_pairwise_delta_percent": -48.74014896377343 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 83.1240122706535, + "signed_pairwise_delta_percent": -48.620352310029865 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 83.23797700238447, + "signed_pairwise_delta_percent": -48.73431704176084 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 83.20129545481906, + "signed_pairwise_delta_percent": -48.69763549419543 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 41.904473317043724, + "signed_pairwise_delta_percent": -23.31237555807283 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 39.314739780466134, + "signed_pairwise_delta_percent": -20.722642021495243 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 38.33192154778196, + "signed_pairwise_delta_percent": -19.73982378881107 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 36.994448671903356, + "signed_pairwise_delta_percent": -18.402350912932466 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 3.2108167899433555, + "signed_pairwise_delta_percent": -3.2108167899433555 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 1.7450653265328064, + "signed_pairwise_delta_percent": -1.7450653265328064 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 2.8938391079618246, + "signed_pairwise_delta_percent": -2.8938391079618246 + } + ], + "real_relative_margin_best_vs_second": 0.01760380548676732, + "real_top3_configs": [ + "tp4_mns16", + "tp4_mns64", + "tp4_mns8" + ], + "real_winner": "tp4_mns16", + "regret": 0.0, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q30-expansion-lo/fixed-pd-comparison.json", + "q30-expansion-lo/fixed-pd-real-audit.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-pd low", + "config_uniform_scale": 4.951803445364717, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.5265893738689182, + "log_ratio_spread_real_top3": 0.0023698681934412047, + "missing_configs": [], + "n_inv_mixed": 6, + "n_inv_mns": 0, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": true, + "real_pair_margin_percent": 13.069596953822204, + "signed_pairwise_delta_percent": -52.50428401638987 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": true, + "real_pair_margin_percent": 13.062412988745601, + "signed_pairwise_delta_percent": -52.49710005131326 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 12.912704892995365, + "signed_pairwise_delta_percent": -52.347391955563026 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": true, + "real_pair_margin_percent": 13.224250324324174, + "signed_pairwise_delta_percent": -52.658937386891836 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": true, + "real_pair_margin_percent": 7.931511304661838, + "signed_pairwise_delta_percent": -38.89275046110161 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": true, + "real_pair_margin_percent": 9.285385999289323, + "signed_pairwise_delta_percent": -40.2466251557291 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 9.543865055930773, + "signed_pairwise_delta_percent": -40.50510421237055 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": true, + "real_pair_margin_percent": 9.455313972221232, + "signed_pairwise_delta_percent": -40.416553128661 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.7798181655007458, + "signed_pairwise_delta_percent": -0.7798181655007458 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.23698681934411808, + "signed_pairwise_delta_percent": -0.23698681934411808 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.039348303682490725, + "signed_pairwise_delta_percent": -0.039348303682490725 + } + ], + "real_relative_margin_best_vs_second": 0.0003935604614297983, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64" + ], + "real_winner": "tp4_mns32", + "regret": 0.13962124906187534, + "sim_winner": "tp1_mns16", + "sim_winner_real_relative_loss": 0.13962124906187534, + "sources": [ + "q30-expansion-lo/fixed-pd-comparison.json", + "q30-expansion-lo/fixed-pd-real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -52.50428401638987, + "winner_pair_m_s_percent": 13.069596953822204, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-pd low", + "config_uniform_scale": 4.949511590379519, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.5320917895477677, + "log_ratio_spread_real_top3": 0.0027149664654271266, + "missing_configs": [], + "n_inv_mixed": 6, + "n_inv_mns": 0, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": true, + "real_pair_margin_percent": 12.537285946185337, + "signed_pairwise_delta_percent": -52.8208410178207 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": true, + "real_pair_margin_percent": 12.710829179768771, + "signed_pairwise_delta_percent": -52.994384251404135 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 12.566252787665844, + "signed_pairwise_delta_percent": -52.8498078593012 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": true, + "real_pair_margin_percent": 12.925623883141398, + "signed_pairwise_delta_percent": -53.20917895477676 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": true, + "real_pair_margin_percent": 9.207508741892353, + "signed_pairwise_delta_percent": -40.867096818654424 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": true, + "real_pair_margin_percent": 9.12717383854323, + "signed_pairwise_delta_percent": -40.7867619153053 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 9.376587887539571, + "signed_pairwise_delta_percent": -41.03617596430164 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": true, + "real_pair_margin_percent": 9.357480041752579, + "signed_pairwise_delta_percent": -41.01706811851465 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 2.0112043752863755, + "signed_pairwise_delta_percent": -2.0112043752863755 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.2245770721418584, + "signed_pairwise_delta_percent": -0.2245770721418584 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.27149664654272265, + "signed_pairwise_delta_percent": -0.27149664654272265 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.002248294353297764, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64" + ], + "real_winner": "tp4_mns8", + "regret": 0.1335710369665437, + "sim_winner": "tp1_mns16", + "sim_winner_real_relative_loss": 0.1335710369665437, + "sources": [ + "q30-expansion-lo/fixed-pd-comparison.json", + "q30-expansion-lo/fixed-pd-real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -52.8208410178207, + "winner_pair_m_s_percent": 12.537285946185337, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-pd low", + "config_uniform_scale": 4.4225746146806655, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.5980564765480212, + "log_ratio_spread_real_top3": 0.0019192061388726422, + "missing_configs": [], + "n_inv_mixed": 6, + "n_inv_mns": 0, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": true, + "real_pair_margin_percent": 23.840206161907986, + "signed_pairwise_delta_percent": -59.60969731665489 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns32", + "inversion": true, + "real_pair_margin_percent": 23.856001111110555, + "signed_pairwise_delta_percent": -59.625492265857446 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 23.79706751418482, + "signed_pairwise_delta_percent": -59.56655866893173 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": true, + "real_pair_margin_percent": 24.036156500055224, + "signed_pairwise_delta_percent": -59.805647654802115 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": true, + "real_pair_margin_percent": 12.27084643218256, + "signed_pairwise_delta_percent": -41.25705263893593 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns32", + "inversion": true, + "real_pair_margin_percent": 13.179118203297904, + "signed_pairwise_delta_percent": -42.16532441005128 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 13.206003717586201, + "signed_pairwise_delta_percent": -42.19220992433957 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": true, + "real_pair_margin_percent": 13.059567610922084, + "signed_pairwise_delta_percent": -42.04577381767545 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.5379386855583932, + "signed_pairwise_delta_percent": -0.5379386855583932 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.19192061388725232, + "signed_pairwise_delta_percent": -0.19192061388725232 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.11294449835385692, + "signed_pairwise_delta_percent": -0.11294449835385692 + } + ], + "real_relative_margin_best_vs_second": 0.0011300830467204648, + "real_top3_configs": [ + "tp4_mns32", + "tp4_mns8", + "tp4_mns64" + ], + "real_winner": "tp4_mns32", + "regret": 0.2692193946565338, + "sim_winner": "tp1_mns16", + "sim_winner_real_relative_loss": 0.2692193946565338, + "sources": [ + "q30-expansion-lo/fixed-pd-comparison.json", + "q30-expansion-lo/fixed-pd-real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -59.60969731665489, + "winner_pair_m_s_percent": 23.840206161907986, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-pd low", + "config_uniform_scale": 4.421436305428993, + "expected_config_count": 12, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.5995516935141478, + "log_ratio_spread_real_top3": 0.0016899142191908467, + "missing_configs": [], + "n_inv_mixed": 6, + "n_inv_mns": 0, + "n_inv_tp": 2, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": true, + "real_pair_margin_percent": 22.897040620669692, + "signed_pairwise_delta_percent": -59.778209091748444 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": true, + "real_pair_margin_percent": 23.046064773358367, + "signed_pairwise_delta_percent": -59.92723324443712 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": true, + "real_pair_margin_percent": 22.841076346337463, + "signed_pairwise_delta_percent": -59.72224481741621 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": true, + "real_pair_margin_percent": 23.074000880336015, + "signed_pairwise_delta_percent": -59.95516935141476 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": true, + "real_pair_margin_percent": 12.569832422090965, + "signed_pairwise_delta_percent": -42.327734313472305 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": true, + "real_pair_margin_percent": 12.566770407129498, + "signed_pairwise_delta_percent": -42.32467229851083 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": true, + "real_pair_margin_percent": 12.592012573206555, + "signed_pairwise_delta_percent": -42.34991446458789 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": true, + "real_pair_margin_percent": 12.476154151010087, + "signed_pairwise_delta_percent": -42.23405604239143 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.7798712357940356, + "signed_pairwise_delta_percent": -0.7798712357940356 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.16899142191907698, + "signed_pairwise_delta_percent": -0.16899142191907698 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.11976959438291016, + "signed_pairwise_delta_percent": -0.11976959438291016 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.0011984134680460556, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32" + ], + "real_winner": "tp4_mns8", + "regret": 0.2573048300400054, + "sim_winner": "tp1_mns16", + "sim_winner_real_relative_loss": 0.2573048300400054, + "sources": [ + "q30-expansion-lo/fixed-pd-comparison.json", + "q30-expansion-lo/fixed-pd-real-audit.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -59.778209091748444, + "winner_pair_m_s_percent": 22.897040620669692, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 fixed-po low", + "config_uniform_scale": 1.2178864428064151, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.20880946208450285, + "log_ratio_spread_real_top3": 0.01086052419322281, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 85.73029954680493, + "signed_pairwise_delta_percent": -20.172637981772546 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 85.68328241018153, + "signed_pairwise_delta_percent": -20.12562084514915 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 86.43860777348267, + "signed_pairwise_delta_percent": -20.88094620845029 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 86.17619129616834, + "signed_pairwise_delta_percent": -20.618529731135947 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 41.62103939690888, + "signed_pairwise_delta_percent": -10.126432818195235 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 41.189828478080884, + "signed_pairwise_delta_percent": -9.69522189936724 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 38.78141976101907, + "signed_pairwise_delta_percent": -7.286813182305435 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 39.70095967038979, + "signed_pairwise_delta_percent": -8.20635309167615 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 1.4830480235035413, + "signed_pairwise_delta_percent": -1.4830480235035413 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.3264759887775993, + "signed_pairwise_delta_percent": -0.3264759887775993 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 1.0860524193222814, + "signed_pairwise_delta_percent": -1.0860524193222814 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.003270095020734498, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64" + ], + "real_winner": "tp4_mns8", + "regret": 0.014940997472395745, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.014940997472395745, + "sources": [ + "q30-expansion-lo/fixed-po-comparison.json", + "q30-expansion-lo/fixed-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -1.4830480235035413, + "winner_pair_m_s_percent": 1.4830480235035413, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-po low", + "config_uniform_scale": 1.1837027909165883, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.16051303629507518, + "log_ratio_spread_real_top3": 0.02273410040317836, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 80.70853515712606, + "signed_pairwise_delta_percent": -15.150873592066905 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 80.8156741203624, + "signed_pairwise_delta_percent": -15.258012555303235 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 81.60896519456668, + "signed_pairwise_delta_percent": -16.05130362950752 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 81.12861014030412, + "signed_pairwise_delta_percent": -15.570948575244959 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 37.49241217671676, + "signed_pairwise_delta_percent": -5.997805597996803 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 37.08952422311525, + "signed_pairwise_delta_percent": -5.5949176443952915 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 34.46421799160749, + "signed_pairwise_delta_percent": -2.9696114128875353 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 36.11912088646263, + "signed_pairwise_delta_percent": -4.624514307742672 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 3.527877494419683, + "signed_pairwise_delta_percent": -3.527877494419683 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 2.273410040317854, + "signed_pairwise_delta_percent": -2.273410040317854 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.6470456517583268, + "signed_pairwise_delta_percent": -0.6470456517583268 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.0064914351440450435, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32" + ], + "real_winner": "tp4_mns8", + "regret": 0.035908453871728696, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.035908453871728696, + "sources": [ + "q30-expansion-lo/fixed-po-comparison.json", + "q30-expansion-lo/fixed-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -3.527877494419683, + "winner_pair_m_s_percent": 3.527877494419683, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-po low", + "config_uniform_scale": 1.217293846920945, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.20839845449892702, + "log_ratio_spread_real_top3": 0.010876152767897662, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 85.68903876109678, + "signed_pairwise_delta_percent": -20.131377196064392 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 85.64280282131507, + "signed_pairwise_delta_percent": -20.08514125628268 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 86.3975070149251, + "signed_pairwise_delta_percent": -20.839845449892714 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 86.1361690595838, + "signed_pairwise_delta_percent": -20.578507494551413 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 41.599166472131735, + "signed_pairwise_delta_percent": -10.104559893418097 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 41.167571965772595, + "signed_pairwise_delta_percent": -9.672965387058952 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 38.758357485895, + "signed_pairwise_delta_percent": -7.263750907181354 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 39.67737178487652, + "signed_pairwise_delta_percent": -8.182765206162879 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 1.4785789280404857, + "signed_pairwise_delta_percent": -1.4785789280404857 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.3281651404981352, + "signed_pairwise_delta_percent": -0.3281651404981352 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 1.0876152767897598, + "signed_pairwise_delta_percent": -1.0876152767897598 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.003287041917935163, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns32", + "tp4_mns64" + ], + "real_winner": "tp4_mns8", + "regret": 0.014895639803871319, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.014895639803871319, + "sources": [ + "q30-expansion-lo/fixed-po-comparison.json", + "q30-expansion-lo/fixed-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -1.4785789280404857, + "winner_pair_m_s_percent": 1.4785789280404857, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 fixed-po low", + "config_uniform_scale": 1.1830544739129631, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.1602197871525023, + "log_ratio_spread_real_top3": 0.023698379402236264, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 80.67769169969341, + "signed_pairwise_delta_percent": -15.120030134634243 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 80.7830378068094, + "signed_pairwise_delta_percent": -15.225376241750244 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 81.5796402803094, + "signed_pairwise_delta_percent": -16.021978715250242 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 81.09692218428181, + "signed_pairwise_delta_percent": -15.539260619222638 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 37.48755808141785, + "signed_pairwise_delta_percent": -5.992951502697896 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 37.073974944994774, + "signed_pairwise_delta_percent": -5.579368366274817 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 34.45716604214575, + "signed_pairwise_delta_percent": -2.96255946342579 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 36.112698620380655, + "signed_pairwise_delta_percent": -4.618092041660699 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 3.527334206322636, + "signed_pairwise_delta_percent": -3.527334206322636 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 2.369837940223627, + "signed_pairwise_delta_percent": -2.369837940223627 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.6581754137676994, + "signed_pairwise_delta_percent": -0.6581754137676994 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.006603461479437911, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32" + ], + "real_winner": "tp4_mns8", + "regret": 0.03590282591969052, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.03590282591969052, + "sources": [ + "q30-expansion-lo/fixed-po-comparison.json", + "q30-expansion-lo/fixed-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -3.527334206322636, + "winner_pair_m_s_percent": 3.527334206322636, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-po low", + "config_uniform_scale": 0.6570740275710648, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.18223262538030371, + "log_ratio_spread_real_top3": 0.02603063729306998, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 3, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 90.72747001936281, + "signed_pairwise_delta_percent": -17.953572454869516 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 90.92536482192115, + "signed_pairwise_delta_percent": -18.151244664387878 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 90.84293846190077, + "signed_pairwise_delta_percent": -18.06852174527367 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 90.99716010252367, + "signed_pairwise_delta_percent": -18.223262538030372 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 46.24106247791962, + "signed_pairwise_delta_percent": -15.983259499872476 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 46.02969238739204, + "signed_pairwise_delta_percent": -15.772028622022393 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 43.35154374968354, + "signed_pairwise_delta_percent": -13.093873141924501 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 44.35514908862859, + "signed_pairwise_delta_percent": -14.09734611058145 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": true, + "real_pair_margin_percent": 3.137475730979236, + "signed_pairwise_delta_percent": -3.138149298412063 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": true, + "real_pair_margin_percent": 1.700370444058652, + "signed_pairwise_delta_percent": -1.7008263369350451 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": true, + "real_pair_margin_percent": 2.6023901618741747, + "signed_pairwise_delta_percent": -2.6030637293070016 + } + ], + "real_relative_margin_best_vs_second": 0.01714909028663425, + "real_top3_configs": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "regret": 0.03187213306057868, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.03187213306057868, + "sources": [ + "q30-expansion-lo/trace-po-comparison.json", + "q30-expansion-lo/trace-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -3.138149298412063, + "winner_pair_m_s_percent": 3.137475730979236, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 trace-po low", + "config_uniform_scale": 0.4780578821676308, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.17717267764722577, + "log_ratio_spread_real_top3": 0.0019733480856019003, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 102.02546049460537, + "signed_pairwise_delta_percent": -17.02774649052323 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 102.51013137549631, + "signed_pairwise_delta_percent": -17.51241737141418 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 102.71498176880472, + "signed_pairwise_delta_percent": -17.71726776472258 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 102.02298163614279, + "signed_pairwise_delta_percent": -17.025267632060647 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 53.38866226862059, + "signed_pairwise_delta_percent": -16.77030936999181 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 53.072230658401054, + "signed_pairwise_delta_percent": -16.453877759772272 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 51.17810724030649, + "signed_pairwise_delta_percent": -14.55975434167771 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 51.19432721693139, + "signed_pairwise_delta_percent": -14.57597431830261 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.37707949175865374, + "signed_pairwise_delta_percent": -0.37707949175865374 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.1973348085601952, + "signed_pairwise_delta_percent": -0.1973348085601952 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.19364778265184052, + "signed_pairwise_delta_percent": -0.19364778265184052 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.0019383540105721853, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32" + ], + "real_winner": "tp4_mns8", + "regret": 0.0037779133092612494, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.0037779133092612494, + "sources": [ + "q30-expansion-lo/trace-po-comparison.json", + "q30-expansion-lo/trace-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.37707949175865374, + "winner_pair_m_s_percent": 0.37707949175865374, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q30 trace-po low", + "config_uniform_scale": 0.6569411821071235, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.18204547796659498, + "log_ratio_spread_real_top3": 0.0260064332624374, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 3, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 90.70924994261264, + "signed_pairwise_delta_percent": -17.93535237811935 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 90.90683362884803, + "signed_pairwise_delta_percent": -18.132713471314766 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 90.82486083494068, + "signed_pairwise_delta_percent": -18.050444118313578 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 90.97844536115277, + "signed_pairwise_delta_percent": -18.204547796659476 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 46.2297703769945, + "signed_pairwise_delta_percent": -15.971967398947356 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 46.01838840420611, + "signed_pairwise_delta_percent": -15.760724638836459 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 43.33991907299428, + "signed_pairwise_delta_percent": -13.08224846523523 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 44.344292942369236, + "signed_pairwise_delta_percent": -14.08648996432209 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": true, + "real_pair_margin_percent": 3.1380840852501946, + "signed_pairwise_delta_percent": -3.138757652683021 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": true, + "real_pair_margin_percent": 1.6981488657060708, + "signed_pairwise_delta_percent": -1.698604758582464 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns8", + "inversion": true, + "real_pair_margin_percent": 2.599969758810901, + "signed_pairwise_delta_percent": -2.600643326243728 + } + ], + "real_relative_margin_best_vs_second": 0.017126493773631513, + "real_top3_configs": [ + "tp4_mns64", + "tp4_mns32", + "tp4_mns8" + ], + "real_winner": "tp4_mns64", + "regret": 0.03187841051786555, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.03187841051786555, + "sources": [ + "q30-expansion-lo/trace-po-comparison.json", + "q30-expansion-lo/trace-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -3.138757652683021, + "winner_pair_m_s_percent": 3.1380840852501946, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q30 trace-po low", + "config_uniform_scale": 0.4780257567661343, + "expected_config_count": 12, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.17668938090174957, + "log_ratio_spread_real_top3": 0.001510603131868793, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 12, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns16", + "inversion": false, + "real_pair_margin_percent": 101.97733324187712, + "signed_pairwise_delta_percent": -16.979619237794985 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns32", + "inversion": false, + "real_pair_margin_percent": 102.4618944001636, + "signed_pairwise_delta_percent": -17.464180396081463 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp1_mns64", + "inversion": false, + "real_pair_margin_percent": 102.66665209425709, + "signed_pairwise_delta_percent": -17.668938090174958 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp1_mns8", + "inversion": false, + "real_pair_margin_percent": 101.97521651914867, + "signed_pairwise_delta_percent": -16.977502515066533 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns16", + "inversion": false, + "real_pair_margin_percent": 53.34185487949904, + "signed_pairwise_delta_percent": -16.72350198087026 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns32", + "inversion": false, + "real_pair_margin_percent": 53.025317262729466, + "signed_pairwise_delta_percent": -16.406964364100684 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp2_mns64", + "inversion": false, + "real_pair_margin_percent": 51.13076854333851, + "signed_pairwise_delta_percent": -14.51241564470973 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp2_mns8", + "inversion": false, + "real_pair_margin_percent": 51.14883628784737, + "signed_pairwise_delta_percent": -14.530483389218585 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns16", + "inversion": false, + "real_pair_margin_percent": 0.33103325097428193, + "signed_pairwise_delta_percent": -0.33103325097428193 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns32", + "inversion": false, + "real_pair_margin_percent": 0.1510603131868839, + "signed_pairwise_delta_percent": -0.1510603131868839 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_mns64", + "inversion": false, + "real_pair_margin_percent": 0.1471039901586335, + "signed_pairwise_delta_percent": -0.1471039901586335 + }, + { + "axis_vs_real_winner": "none", + "config": "tp4_mns8", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.0014721224115223919, + "real_top3_configs": [ + "tp4_mns8", + "tp4_mns64", + "tp4_mns32" + ], + "real_winner": "tp4_mns8", + "regret": 0.003315817711349034, + "sim_winner": "tp4_mns16", + "sim_winner_real_relative_loss": 0.003315817711349034, + "sources": [ + "q30-expansion-lo/trace-po-comparison.json", + "q30-expansion-lo/trace-po-real-audit.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.33103325097428193, + "winner_pair_m_s_percent": 0.33103325097428193, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A0 fixed-pd", + "config_uniform_scale": 0.9905469229359986, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.060652013241479515, + "log_ratio_spread_real_top3": 0.05042015844107084, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 4.149707946615582, + "signed_pairwise_delta_percent": -5.042015844107099 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 5.172893426656431, + "signed_pairwise_delta_percent": -6.065201324147949 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.3735522251855693, + "signed_pairwise_delta_percent": -0.3735522251855693 + } + ], + "real_relative_margin_best_vs_second": 0.0037425080108803854, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.04237011756982145, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.04237011756982145, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -5.042015844107099, + "winner_pair_m_s_percent": 4.149707946615582, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-pd", + "config_uniform_scale": 1.0202314731471502, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.02402007999917405, + "log_ratio_spread_real_top3": 0.02402007999917405, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 1.0837798588092087, + "signed_pairwise_delta_percent": 2.1933999669826525 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 1.325627595184895, + "signed_pairwise_delta_percent": 1.9515522306069657 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.20860803293475833, + "signed_pairwise_delta_percent": -0.20860803293475833 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.002088257708717345, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.002088257708717345, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.002088257708717345, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.20860803293475833, + "winner_pair_m_s_percent": 0.20860803293475833, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A0 fixed-pd", + "config_uniform_scale": 3.0245083955601917, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.6396663007689712, + "log_ratio_spread_real_top3": 0.6391084715731847, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.6769338761256622, + "signed_pairwise_delta_percent": -0.6769338761256622 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 28.537073298091865, + "signed_pairwise_delta_percent": -63.96663007689711 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 28.481290378513215, + "signed_pairwise_delta_percent": -63.910847157318464 + } + ], + "real_relative_margin_best_vs_second": 0.006792302522137694, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.33025510615656906, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.33025510615656906, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -63.96663007689711, + "winner_pair_m_s_percent": 28.537073298091865, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-pd", + "config_uniform_scale": 3.06180896406935, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.6289288207236795, + "log_ratio_spread_real_top3": 0.628447602146478, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.2660356852052706, + "signed_pairwise_delta_percent": -0.2660356852052706 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 31.648007592775677, + "signed_pairwise_delta_percent": -62.84476021464781 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 31.696129450495825, + "signed_pairwise_delta_percent": -62.89288207236796 + } + ], + "real_relative_margin_best_vs_second": 0.002663898741543047, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.37228890038064755, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.37228890038064755, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -62.84476021464781, + "winner_pair_m_s_percent": 31.648007592775677, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-pd", + "config_uniform_scale": 2.912666802729827, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.6150853261890787, + "log_ratio_spread_real_top3": 0.6147276719238838, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.6988689401937037, + "signed_pairwise_delta_percent": -0.6988689401937037 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 26.754499952423572, + "signed_pairwise_delta_percent": -61.50853261890787 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 26.718734525904075, + "signed_pairwise_delta_percent": -61.47276719238837 + } + ], + "real_relative_margin_best_vs_second": 0.007013167281255672, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.3067524317507717, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.3067524317507717, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -61.50853261890787, + "winner_pair_m_s_percent": 26.754499952423572, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-pd", + "config_uniform_scale": 2.9547444028283523, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.6045691264386757, + "log_ratio_spread_real_top3": 0.6036185233190644, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.2938181405538578, + "signed_pairwise_delta_percent": -0.2938181405538578 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 29.686793800126072, + "signed_pairwise_delta_percent": -60.36185233190644 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 29.781854112087196, + "signed_pairwise_delta_percent": -60.45691264386757 + } + ], + "real_relative_margin_best_vs_second": 0.002942502091140886, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.3456375801249614, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.3456375801249614, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -60.36185233190644, + "winner_pair_m_s_percent": 29.686793800126072, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-po", + "config_uniform_scale": 0.9643054515322584, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.1213620172981578, + "log_ratio_spread_real_top3": 0.12020280158083751, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 5.708587111542836, + "signed_pairwise_delta_percent": -12.020280158083734 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 5.824508683274874, + "signed_pairwise_delta_percent": -12.13620172981577 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.20084412263250578, + "signed_pairwise_delta_percent": -0.20084412263250578 + } + ], + "real_relative_margin_best_vs_second": 0.002010459495370265, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.058746722254088946, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.058746722254088946, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -12.020280158083734, + "winner_pair_m_s_percent": 5.708587111542836, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-po", + "config_uniform_scale": 0.9406625738485695, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.0831623213185602, + "log_ratio_spread_real_top3": 0.07972272936918397, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 1.6605798903418276, + "signed_pairwise_delta_percent": -7.972272936918415 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 2.0045390852794442, + "signed_pairwise_delta_percent": -8.316232131856031 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.26132246488070326, + "signed_pairwise_delta_percent": -0.26132246488070326 + } + ], + "real_relative_margin_best_vs_second": 0.0026166420965441084, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.016744441542810407, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.016744441542810407, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -7.972272936918415, + "winner_pair_m_s_percent": 1.6605798903418276, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-po", + "config_uniform_scale": 0.9641676390687596, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.12135084408558959, + "log_ratio_spread_real_top3": 0.12019469213946486, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 5.707776167405595, + "signed_pairwise_delta_percent": -12.019469213946493 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 5.823391362018052, + "signed_pairwise_delta_percent": -12.13508440855895 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.20067628063206866, + "signed_pairwise_delta_percent": -0.20067628063206866 + } + ], + "real_relative_margin_best_vs_second": 0.0020087777023818365, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.05873813644442971, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.05873813644442971, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -12.019469213946493, + "winner_pair_m_s_percent": 5.707776167405595, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 fixed-po", + "config_uniform_scale": 0.9405407803694738, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.08316619889204555, + "log_ratio_spread_real_top3": 0.07973880510831316, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 1.6621874642547243, + "signed_pairwise_delta_percent": -7.973880510831312 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 2.004926842627968, + "signed_pairwise_delta_percent": -8.316619889204555 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.2619399460772448, + "signed_pairwise_delta_percent": -0.2619399460772448 + } + ], + "real_relative_margin_best_vs_second": 0.0026228330848965253, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.016760786592592503, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.016760786592592503, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -7.973880510831312, + "winner_pair_m_s_percent": 1.6621874642547243, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 trace-pd", + "config_uniform_scale": 1.4928001864415554, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 1.016421300063101, + "log_ratio_spread_real_top3": 1.016421300063101, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 314.42970560873886, + "signed_pairwise_delta_percent": 98.99891938297203 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 331.9449017039404, + "signed_pairwise_delta_percent": 101.64213000631013 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 348.43412520640095, + "signed_pairwise_delta_percent": 34.81502191302237 + } + ], + "real_relative_margin_best_vs_second": 22.203359079184416, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp4_ep1_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A0 trace-pd", + "config_uniform_scale": 1.5105914717935105, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.9648739788503272, + "log_ratio_spread_real_top3": 0.9648739788503272, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 357.1169800531145, + "signed_pairwise_delta_percent": 87.72634904159466 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 376.2523321691806, + "signed_pairwise_delta_percent": 96.48739788503273 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 392.34130165358084, + "signed_pairwise_delta_percent": 24.022421630469815 + } + ], + "real_relative_margin_best_vs_second": 34.55816479168436, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp4_ep1_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A0 trace-pd", + "config_uniform_scale": 1.340235629202675, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.6151851510539637, + "log_ratio_spread_real_top3": 0.43053455008809527, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 23.577777935433357, + "signed_pairwise_delta_percent": 42.06672378709799 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 15.538065881069413, + "signed_pairwise_delta_percent": 43.05345500880952 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 29.89518418107898, + "signed_pairwise_delta_percent": -18.465060096586843 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.16810252500411127, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A0 trace-pd", + "config_uniform_scale": 1.2809934431185706, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.4940487275442631, + "log_ratio_spread_real_top3": 0.2975515038921607, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 38.93167860985212, + "signed_pairwise_delta_percent": 24.34566988904276 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 23.332498967838475, + "signed_pairwise_delta_percent": 29.755150389216045 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 42.55321100556, + "signed_pairwise_delta_percent": -19.649722365210227 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.26279180695073645, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A0 trace-pd", + "config_uniform_scale": 1.414672147250406, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.6925792799032979, + "log_ratio_spread_real_top3": 0.6925792799032979, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 1, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 11.295399365368032, + "signed_pairwise_delta_percent": 50.146824333458675 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 9.087763981481082, + "signed_pairwise_delta_percent": 51.16511829066085 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 0.6135354983447174, + "signed_pairwise_delta_percent": -18.092809699668955 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.006154214824712234, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.006154214824712234, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.006154214824712234, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -18.092809699668955, + "winner_pair_m_s_percent": 0.6135354983447174, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 trace-pd", + "config_uniform_scale": 1.4729688476415597, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.7152768252374071, + "log_ratio_spread_real_top3": 0.7152768252374071, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 1, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 13.943039926940672, + "signed_pairwise_delta_percent": 50.65884104036849 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 10.455222177040667, + "signed_pairwise_delta_percent": 54.81170400182358 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 6.030894994380943, + "signed_pairwise_delta_percent": -16.715978521917112 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.062164651568153984, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.062164651568153984, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.062164651568153984, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -16.715978521917112, + "winner_pair_m_s_percent": 6.030894994380943, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 trace-po", + "config_uniform_scale": 0.753106573816306, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.36295220040710596, + "log_ratio_spread_real_top3": 0.3458080890155827, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 1, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 5.119345640134235, + "signed_pairwise_delta_percent": -34.58080890155828 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 6.802653056521642, + "signed_pairwise_delta_percent": -36.29522004071061 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 1.3657297298272386, + "signed_pairwise_delta_percent": -1.3745139177357077 + } + ], + "real_relative_margin_best_vs_second": 0.013750984200462835, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.07039370625209918, + "sim_winner": "tp4_ep1_mns64", + "sim_winner_real_relative_loss": 0.07039370625209918, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -36.29522004071061, + "winner_pair_m_s_percent": 6.802653056521642, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 trace-po", + "config_uniform_scale": 0.7665080250950821, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.3179742793323852, + "log_ratio_spread_real_top3": 0.3160683400465084, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 19.209826109044702, + "signed_pairwise_delta_percent": -31.606834004650835 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 19.400420037632387, + "signed_pairwise_delta_percent": -31.79742793323852 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.26044028368209854, + "signed_pairwise_delta_percent": -0.26044028368209854 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.002607797240047338, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.2117895828808376, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.2117895828808376, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -31.606834004650835, + "winner_pair_m_s_percent": 19.209826109044702, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 trace-po", + "config_uniform_scale": 0.7530456732974741, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.3629311886734452, + "log_ratio_spread_real_top3": 0.34578727672972004, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 1, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 5.1172644115479695, + "signed_pairwise_delta_percent": -34.57872767297201 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 6.800551883155552, + "signed_pairwise_delta_percent": -36.29311886734452 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 1.3654615828579657, + "signed_pairwise_delta_percent": -1.3742457707664346 + } + ], + "real_relative_margin_best_vs_second": 0.0137482658615673, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.07037121566091509, + "sim_winner": "tp4_ep1_mns64", + "sim_winner_real_relative_loss": 0.07037121566091509, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -36.29311886734452, + "winner_pair_m_s_percent": 6.800551883155552, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A0 trace-po", + "config_uniform_scale": 0.7664791140961692, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.3178774778616069, + "log_ratio_spread_real_top3": 0.3159715282630199, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": true, + "real_pair_margin_percent": 19.20014493069586, + "signed_pairwise_delta_percent": -31.59715282630199 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": true, + "real_pair_margin_percent": 19.390739890554553, + "signed_pairwise_delta_percent": -31.787747786160686 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.2516272531701875, + "signed_pairwise_delta_percent": -0.2516272531701875 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.0025194410024500513, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.21167227304868486, + "sim_winner": "tp4_ep1_mns128", + "sim_winner_real_relative_loss": 0.21167227304868486, + "sources": [ + "q235-fourcase-a0/comparison.json" + ], + "winner_deciding_axis": "mixed", + "winner_match": false, + "winner_pair_delta_s_percent": -31.59715282630199, + "winner_pair_m_s_percent": 19.20014493069586, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 fixed-pd", + "config_uniform_scale": 0.8052174107907835, + "expected_config_count": 4, + "failure": false, + "fragile_success": true, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.2684736063166279, + "log_ratio_spread_real_top3": 0.2684736063166279, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 4.149707946615582, + "signed_pairwise_delta_percent": 26.47380840647722 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 5.172893426656431, + "signed_pairwise_delta_percent": 25.450622926436374 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.3735522251855693, + "signed_pairwise_delta_percent": -0.3735522251855693 + } + ], + "real_relative_margin_best_vs_second": 0.0037425080108803854, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 fixed-pd", + "config_uniform_scale": 0.8369995512232968, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.30454826263257295, + "log_ratio_spread_real_top3": 0.30454826263257295, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 1.0837798588092087, + "signed_pairwise_delta_percent": 30.246218230322537 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 1.325627595184895, + "signed_pairwise_delta_percent": 30.004370493946848 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.20860803293475833, + "signed_pairwise_delta_percent": -0.20860803293475833 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.002088257708717345, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.002088257708717345, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.002088257708717345, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.20860803293475833, + "winner_pair_m_s_percent": 0.20860803293475833, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 fixed-pd", + "config_uniform_scale": 2.608078839444179, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.6005626377134611, + "log_ratio_spread_real_top3": 0.6000048085176745, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.6769338761256622, + "signed_pairwise_delta_percent": -0.6769338761256622 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 28.537073298091865, + "signed_pairwise_delta_percent": -60.056263771346096 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 28.481290378513215, + "signed_pairwise_delta_percent": -60.00048085176745 + } + ], + "real_relative_margin_best_vs_second": 0.006792302522137694, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.33025510615656906, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.33025510615656906, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -60.056263771346096, + "winner_pair_m_s_percent": 28.537073298091865, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 fixed-pd", + "config_uniform_scale": 2.586955736602833, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.6116904181892778, + "log_ratio_spread_real_top3": 0.6112091996120763, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.2660356852052706, + "signed_pairwise_delta_percent": -0.2660356852052706 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 31.648007592775677, + "signed_pairwise_delta_percent": -61.12091996120764 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 31.696129450495825, + "signed_pairwise_delta_percent": -61.169041818927795 + } + ], + "real_relative_margin_best_vs_second": 0.002663898741543047, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.37228890038064755, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.37228890038064755, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -61.12091996120764, + "winner_pair_m_s_percent": 31.648007592775677, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 fixed-pd", + "config_uniform_scale": 2.50822061424693, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.5825805162281401, + "log_ratio_spread_real_top3": 0.5822228619629451, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.6988689401937037, + "signed_pairwise_delta_percent": -0.6988689401937037 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 26.754499952423572, + "signed_pairwise_delta_percent": -58.25805162281401 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 26.718734525904075, + "signed_pairwise_delta_percent": -58.222286196294526 + } + ], + "real_relative_margin_best_vs_second": 0.007013167281255672, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns64" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.3067524317507717, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.3067524317507717, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -58.25805162281401, + "winner_pair_m_s_percent": 26.754499952423572, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 fixed-pd", + "config_uniform_scale": 2.494675463839052, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.5929354020035993, + "log_ratio_spread_real_top3": 0.591984798883988, + "missing_configs": [], + "n_inv_mixed": 1, + "n_inv_mns": 0, + "n_inv_tp": 1, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "none", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 0.2938181405538578, + "signed_pairwise_delta_percent": -0.2938181405538578 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 29.686793800126072, + "signed_pairwise_delta_percent": -59.1984798883988 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 29.781854112087196, + "signed_pairwise_delta_percent": -59.29354020035993 + } + ], + "real_relative_margin_best_vs_second": 0.002942502091140886, + "real_top3_configs": [ + "tp4_ep1_mns128", + "tp4_ep1_mns64", + "tp8_ep8_mns128" + ], + "real_winner": "tp4_ep1_mns128", + "regret": 0.3456375801249614, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.3456375801249614, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "tp-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -59.1984798883988, + "winner_pair_m_s_percent": 29.686793800126072, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 fixed-po", + "config_uniform_scale": 0.7759575081370588, + "expected_config_count": 4, + "failure": false, + "fragile_success": true, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.24794491019938592, + "log_ratio_spread_real_top3": 0.24794491019938592, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 5.708587111542836, + "signed_pairwise_delta_percent": 24.593646897306066 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 5.824508683274874, + "signed_pairwise_delta_percent": 24.477725325574028 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.20084412263250578, + "signed_pairwise_delta_percent": -0.20084412263250578 + } + ], + "real_relative_margin_best_vs_second": 0.002010459495370265, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 fixed-po", + "config_uniform_scale": 0.7569325524828211, + "expected_config_count": 4, + "failure": false, + "fragile_success": true, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.2890297658333315, + "log_ratio_spread_real_top3": 0.2890297658333315, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 1.6605798903418276, + "signed_pairwise_delta_percent": 28.641654118452443 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 2.0045390852794442, + "signed_pairwise_delta_percent": 28.297694923514825 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.26132246488070326, + "signed_pairwise_delta_percent": -0.26132246488070326 + } + ], + "real_relative_margin_best_vs_second": 0.0026166420965441084, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 fixed-po", + "config_uniform_scale": 0.7758466131757196, + "expected_config_count": 4, + "failure": false, + "fragile_success": true, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.24795134122075396, + "log_ratio_spread_real_top3": 0.24795134122075396, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 5.707776167405595, + "signed_pairwise_delta_percent": 24.594457841443305 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 5.823391362018052, + "signed_pairwise_delta_percent": 24.47884264683085 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.20067628063206866, + "signed_pairwise_delta_percent": -0.20067628063206866 + } + ], + "real_relative_margin_best_vs_second": 0.0020087777023818365, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 fixed-po", + "config_uniform_scale": 0.7568345476811307, + "expected_config_count": 4, + "failure": false, + "fragile_success": true, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.28901986490616804, + "log_ratio_spread_real_top3": 0.28901986490616804, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 1.6621874642547243, + "signed_pairwise_delta_percent": 28.640046544539548 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 2.004926842627968, + "signed_pairwise_delta_percent": 28.297307166166302 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.2619399460772448, + "signed_pairwise_delta_percent": -0.2619399460772448 + } + ], + "real_relative_margin_best_vs_second": 0.0026228330848965253, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 trace-pd", + "config_uniform_scale": 1.2167509036113942, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 1.5440051366971033, + "log_ratio_spread_real_top3": 1.5440051366971033, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 314.42970560873886, + "signed_pairwise_delta_percent": 150.7153663041929 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 331.9449017039404, + "signed_pairwise_delta_percent": 154.40051366971034 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 348.43412520640095, + "signed_pairwise_delta_percent": 106.41277848941169 + } + ], + "real_relative_margin_best_vs_second": 22.203359079184416, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp4_ep1_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 trace-pd", + "config_uniform_scale": 1.218869500962875, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 1.511462353051269, + "log_ratio_spread_real_top3": 1.511462353051269, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 357.1169800531145, + "signed_pairwise_delta_percent": 142.91720964148476 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 376.2523321691806, + "signed_pairwise_delta_percent": 151.14623530512694 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 392.34130165358084, + "signed_pairwise_delta_percent": 101.89467468744536 + } + ], + "real_relative_margin_best_vs_second": 34.55816479168436, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp4_ep1_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 trace-pd", + "config_uniform_scale": 1.3379683648861502, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.46724919425743383, + "log_ratio_spread_real_top3": 0.28229702985939353, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 23.577777935433357, + "signed_pairwise_delta_percent": 26.996972943866705 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 15.538065881069413, + "signed_pairwise_delta_percent": 28.229702985939365 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 29.89518418107898, + "signed_pairwise_delta_percent": -18.495216439804036 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.16810252500411127, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 trace-pd", + "config_uniform_scale": 1.220753300748686, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": false, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.4532917510074562, + "log_ratio_spread_real_top3": 0.2226509791024174, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "tpot_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 38.93167860985212, + "signed_pairwise_delta_percent": 15.892799069061242 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 23.332498967838475, + "signed_pairwise_delta_percent": 22.265097910241728 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 42.55321100556, + "signed_pairwise_delta_percent": -23.064077190503873 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.26279180695073645, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp4_ep1_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.0, + "sim_winner": "tp8_ep8_mns64", + "sim_winner_real_relative_loss": 0.0, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "none", + "winner_match": true, + "winner_pair_delta_s_percent": 0.0, + "winner_pair_m_s_percent": 0.0, + "winner_pair_relation": "match", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 trace-pd", + "config_uniform_scale": 1.430237446084041, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.487848464399216, + "log_ratio_spread_real_top3": 0.487848464399216, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 1, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 11.295399365368032, + "signed_pairwise_delta_percent": 30.727731611159037 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 9.087763981481082, + "signed_pairwise_delta_percent": 32.85538085186 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 0.6135354983447174, + "signed_pairwise_delta_percent": -15.929465588061584 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.006154214824712234, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.006154214824712234, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.006154214824712234, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -15.929465588061584, + "winner_pair_m_s_percent": 0.6135354983447174, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 trace-pd", + "config_uniform_scale": 1.4917712567044108, + "expected_config_count": 4, + "failure": true, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "HOLDS", + "log_ratio_spread_all": 0.49679676904370246, + "log_ratio_spread_real_top3": 0.49679676904370246, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 1, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 13.943039926940672, + "signed_pairwise_delta_percent": 29.838662224128264 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 10.455222177040667, + "signed_pairwise_delta_percent": 32.30699826893181 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": true, + "real_pair_margin_percent": 6.030894994380943, + "signed_pairwise_delta_percent": -17.372678635438426 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.062164651568153984, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns64" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.062164651568153984, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.062164651568153984, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -17.372678635438426, + "winner_pair_m_s_percent": 6.030894994380943, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 trace-po", + "config_uniform_scale": 0.5481032351618105, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.3220111524478986, + "log_ratio_spread_real_top3": 0.3220111524478986, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 1, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "ttft_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 5.119345640134235, + "signed_pairwise_delta_percent": 30.823724522814285 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 6.802653056521642, + "signed_pairwise_delta_percent": 29.107141724120687 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 1.3657297298272386, + "signed_pairwise_delta_percent": -1.3773907219755823 + } + ], + "real_relative_margin_best_vs_second": 0.013750984200462835, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.013750984200462835, + "sim_winner": "tp8_ep8_mns64", + "sim_winner_real_relative_loss": 0.013750984200462835, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -1.3773907219755823, + "winner_pair_m_s_percent": 1.3657297298272386, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 trace-po", + "config_uniform_scale": 0.5678289728094312, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.31919899251598766, + "log_ratio_spread_real_top3": 0.31919899251598766, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "ttft_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 19.209826109044702, + "signed_pairwise_delta_percent": 31.659458967916663 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 19.400420037632387, + "signed_pairwise_delta_percent": 31.468865039328982 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.26044028368209854, + "signed_pairwise_delta_percent": -0.26044028368209854 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.002607797240047338, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.002607797240047338, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.002607797240047338, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.26044028368209854, + "winner_pair_m_s_percent": 0.26044028368209854, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + }, + { + "case": "q235 A1 trace-po", + "config_uniform_scale": 0.548058912389237, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.32202928326406854, + "log_ratio_spread_real_top3": 0.32202928326406854, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 1, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 0, + "n_tie_tp": 0, + "objective": "e2e_mean_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 5.1172644115479695, + "signed_pairwise_delta_percent": 30.825805751400548 + }, + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 6.800551883155552, + "signed_pairwise_delta_percent": 29.109242897486777 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns64", + "inversion": true, + "real_pair_margin_percent": 1.3654615828579657, + "signed_pairwise_delta_percent": -1.3771225750063092 + } + ], + "real_relative_margin_best_vs_second": 0.0137482658615673, + "real_top3_configs": [ + "tp8_ep8_mns128", + "tp8_ep8_mns64", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns128", + "regret": 0.0137482658615673, + "sim_winner": "tp8_ep8_mns64", + "sim_winner_real_relative_loss": 0.0137482658615673, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -1.3771225750063092, + "winner_pair_m_s_percent": 1.3654615828579657, + "winner_pair_relation": "reversal", + "winner_pair_strict_reversal": true + }, + { + "case": "q235 A1 trace-po", + "config_uniform_scale": 0.5678075555479308, + "expected_config_count": 4, + "failure": false, + "fragile_success": false, + "h_scale_condition_spread_gt_log_margin": true, + "h_scale_verdict": "COUNTEREXAMPLE", + "log_ratio_spread_all": 0.3192076739943569, + "log_ratio_spread_real_top3": 0.3192076739943569, + "missing_configs": [], + "n_inv_mixed": 0, + "n_inv_mns": 0, + "n_inv_tp": 0, + "n_tie_mixed": 0, + "n_tie_mns": 1, + "n_tie_tp": 0, + "objective": "e2e_p90_ms", + "paired_config_count": 4, + "pairwise_vs_real_winner": [ + { + "axis_vs_real_winner": "mixed", + "config": "tp4_ep1_mns128", + "inversion": false, + "real_pair_margin_percent": 19.20014493069586, + "signed_pairwise_delta_percent": 31.669140146265505 + }, + { + "axis_vs_real_winner": "tp-axis", + "config": "tp4_ep1_mns64", + "inversion": false, + "real_pair_margin_percent": 19.390739890554553, + "signed_pairwise_delta_percent": 31.478545186406816 + }, + { + "axis_vs_real_winner": "mns-axis", + "config": "tp8_ep8_mns128", + "inversion": false, + "real_pair_margin_percent": 0.2516272531701875, + "signed_pairwise_delta_percent": -0.2516272531701875 + }, + { + "axis_vs_real_winner": "none", + "config": "tp8_ep8_mns64", + "inversion": false, + "real_pair_margin_percent": 0.0, + "signed_pairwise_delta_percent": 0.0 + } + ], + "real_relative_margin_best_vs_second": 0.0025194410024500513, + "real_top3_configs": [ + "tp8_ep8_mns64", + "tp8_ep8_mns128", + "tp4_ep1_mns128" + ], + "real_winner": "tp8_ep8_mns64", + "regret": 0.0025194410024500513, + "sim_winner": "tp8_ep8_mns128", + "sim_winner_real_relative_loss": 0.0025194410024500513, + "sources": [ + "q235-ablation-a1/comparison.json" + ], + "winner_deciding_axis": "mns-axis", + "winner_match": false, + "winner_pair_delta_s_percent": -0.2516272531701875, + "winner_pair_m_s_percent": 0.2516272531701875, + "winner_pair_relation": "sim-tie", + "winner_pair_strict_reversal": false + } + ], + "schema": "frontier-split-rootcause-decomposition-v2", + "summary": { + "case_count": 14, + "data_gap_count": 0, + "failure_count": 23, + "h_scale_counterexample_count": 40, + "h_scale_counterexamples": [ + { + "case": "q30 trace-pd", + "objective": "ttft_mean_ms" + }, + { + "case": "q30 trace-pd", + "objective": "ttft_p90_ms" + }, + { + "case": "q30 trace-pd", + "objective": "e2e_mean_ms" + }, + { + "case": "q30 trace-pd", + "objective": "e2e_p90_ms" + }, + { + "case": "q30 fixed-pd high", + "objective": "tpot_mean_ms" + }, + { + "case": "q30 fixed-pd high", + "objective": "tpot_p90_ms" + }, + { + "case": "q30 fixed-pd high", + "objective": "e2e_mean_ms" + }, + { + "case": "q30 fixed-po high", + "objective": "ttft_mean_ms" + }, + { + "case": "q30 fixed-po high", + "objective": "ttft_p90_ms" + }, + { + "case": "q30 fixed-po high", + "objective": "e2e_mean_ms" + }, + { + "case": "q30 fixed-po high", + "objective": "e2e_p90_ms" + }, + { + "case": "q30 fixed-pd low", + "objective": "ttft_mean_ms" + }, + { + "case": "q30 fixed-pd low", + "objective": "ttft_p90_ms" + }, + { + "case": "q30 fixed-po low", + "objective": "ttft_mean_ms" + }, + { + "case": "q30 fixed-po low", + "objective": "ttft_p90_ms" + }, + { + "case": "q30 fixed-po low", + "objective": "e2e_mean_ms" + }, + { + "case": "q30 fixed-po low", + "objective": "e2e_p90_ms" + }, + { + "case": "q30 trace-po low", + "objective": "ttft_mean_ms" + }, + { + "case": "q30 trace-po low", + "objective": "ttft_p90_ms" + }, + { + "case": "q30 trace-po low", + "objective": "e2e_mean_ms" + }, + { + "case": "q30 trace-po low", + "objective": "e2e_p90_ms" + }, + { + "case": "q235 A0 fixed-pd", + "objective": "ttft_mean_ms" + }, + { + "case": "q235 A0 fixed-pd", + "objective": "ttft_p90_ms" + }, + { + "case": "q235 A0 fixed-po", + "objective": "ttft_p90_ms" + }, + { + "case": "q235 A0 fixed-po", + "objective": "e2e_p90_ms" + }, + { + "case": "q235 A0 trace-pd", + "objective": "tpot_mean_ms" + }, + { + "case": "q235 A0 trace-pd", + "objective": "tpot_p90_ms" + }, + { + "case": "q235 A0 trace-pd", + "objective": "e2e_mean_ms" + }, + { + "case": "q235 A1 fixed-pd", + "objective": "ttft_mean_ms" + }, + { + "case": "q235 A1 fixed-pd", + "objective": "ttft_p90_ms" + }, + { + "case": "q235 A1 fixed-po", + "objective": "ttft_mean_ms" + }, + { + "case": "q235 A1 fixed-po", + "objective": "ttft_p90_ms" + }, + { + "case": "q235 A1 fixed-po", + "objective": "e2e_mean_ms" + }, + { + "case": "q235 A1 fixed-po", + "objective": "e2e_p90_ms" + }, + { + "case": "q235 A1 trace-pd", + "objective": "tpot_mean_ms" + }, + { + "case": "q235 A1 trace-pd", + "objective": "e2e_mean_ms" + }, + { + "case": "q235 A1 trace-po", + "objective": "ttft_mean_ms" + }, + { + "case": "q235 A1 trace-po", + "objective": "ttft_p90_ms" + }, + { + "case": "q235 A1 trace-po", + "objective": "e2e_mean_ms" + }, + { + "case": "q235 A1 trace-po", + "objective": "e2e_p90_ms" + } + ], + "row_count": 70, + "winner_mismatch_count": 47 + } +} diff --git a/runs/frontier-split-rootcause-v0/results/decomposition.md b/runs/frontier-split-rootcause-v0/results/decomposition.md new file mode 100644 index 0000000..bac3454 --- /dev/null +++ b/runs/frontier-split-rootcause-v0/results/decomposition.md @@ -0,0 +1,301 @@ +# Frontier good/bad split decomposition + +All 70 rows are recomputed from frozen per-config JSON values. Lower is better for every objective. `scale` is the geometric mean of `sim/real`; spreads are shown as `100 ×` log-space width, while `real margin` is the ordinary relative difference `100 × (real_second / real_best - 1)`. H-SCALE compares the log-space spread with `log1p(real margin)`, not directly with the ordinary relative margin. The real top-3 neighborhood is selected independently for every row. Directional `m_s` and `delta_s` are already expressed in log-percentage points. + +- Rows / case surfaces: 70 / 14. +- Failures (`regret > 5%`): 23. +- Exact winner mismatches: 47. +- H-SCALE counterexamples: 40. + +## Unified decomposition + +| case | objective | sim winner | real winner | regret | scale | spread all | spread real top-3 | real margin (relative) | sim-winner real loss | failure | H-SCALE | deciding axis | m_s | delta_s | n_inv_tp | n_inv_mns | n_inv_mixed | fragile success | +|---|---|---|---|---:|---:|---:|---:|---:|---:|---|---|---|---:|---:|---:|---:|---:|---| +| q30 trace-pd | ttft_mean_ms | tp4_mns64 | tp4_mns64 | 0.0% | 45.900x | 414.0% | 73.5% | 52.8% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 trace-pd | ttft_p90_ms | tp4_mns64 | tp4_mns64 | 0.0% | 43.384x | 386.3% | 136.8% | 67.6% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 trace-pd | tpot_mean_ms | tp4_mns8 | tp4_mns8 | 0.0% | 4.799x | 34.2% | 11.9% | 30.3% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 trace-pd | tpot_p90_ms | tp4_mns8 | tp4_mns8 | 0.0% | 4.291x | 34.9% | 10.9% | 32.9% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 trace-pd | e2e_mean_ms | tp4_mns64 | tp4_mns64 | 0.0% | 8.263x | 109.9% | 50.1% | 6.6% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 trace-pd | e2e_p90_ms | tp4_mns64 | tp4_mns64 | 0.0% | 8.066x | 123.0% | 70.3% | 0.1% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | yes | +| q30 fixed-pd high | ttft_mean_ms | tp2_mns64 | tp4_mns32 | 58.0% | 80.274x | 664.7% | 229.2% | 0.0% | 58.0% | yes | HOLDS | mixed | 45.7% | -523.8% | 2 | 1 | 2 | no | +| q30 fixed-pd high | ttft_p90_ms | tp2_mns64 | tp4_mns64 | 56.2% | 130.663x | 709.3% | 222.7% | 0.1% | 56.2% | yes | HOLDS | tp-axis | 44.6% | -435.3% | 2 | 0 | 0 | no | +| q30 fixed-pd high | tpot_mean_ms | tp4_mns8 | tp4_mns8 | 0.0% | 6.313x | 118.1% | 95.7% | 34.4% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 fixed-pd high | tpot_p90_ms | tp4_mns8 | tp4_mns8 | 0.0% | 5.885x | 122.3% | 95.1% | 37.2% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 fixed-pd high | e2e_mean_ms | tp4_mns64 | tp1_mns32 | 1.7% | 18.867x | 226.5% | 111.5% | 0.7% | 1.7% | no | COUNTEREXAMPLE | mixed | 1.7% | -82.6% | 2 | 1 | 2 | no | +| q30 fixed-pd high | e2e_p90_ms | tp2_mns64 | tp1_mns32 | 5.5% | 24.706x | 274.2% | 172.5% | 1.0% | 5.5% | yes | HOLDS | mixed | 5.3% | -101.7% | 1 | 1 | 2 | no | +| q30 fixed-po high | ttft_mean_ms | tp4_mns16 | tp4_mns32 | 0.3% | 0.964x | 27.5% | 0.3% | 0.1% | 0.3% | no | COUNTEREXAMPLE | mns-axis | 0.3% | -0.3% | 0 | 0 | 0 | no | +| q30 fixed-po high | ttft_p90_ms | tp4_mns16 | tp4_mns32 | 0.5% | 0.956x | 26.9% | 0.3% | 0.0% | 0.5% | no | COUNTEREXAMPLE | mns-axis | 0.5% | -0.5% | 0 | 0 | 0 | no | +| q30 fixed-po high | e2e_mean_ms | tp4_mns16 | tp4_mns32 | 0.3% | 0.964x | 27.5% | 0.3% | 0.1% | 0.3% | no | COUNTEREXAMPLE | mns-axis | 0.3% | -0.3% | 0 | 0 | 0 | no | +| q30 fixed-po high | e2e_p90_ms | tp4_mns16 | tp4_mns32 | 0.5% | 0.956x | 26.9% | 0.3% | 0.0% | 0.5% | no | COUNTEREXAMPLE | mns-axis | 0.5% | -0.5% | 0 | 0 | 0 | no | +| q30 fixed-pd low | ttft_mean_ms | tp4_mns16 | tp4_mns16 | 0.0% | 1.368x | 43.8% | 1.5% | 1.3% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 fixed-pd low | ttft_p90_ms | tp4_mns16 | tp4_mns16 | 0.0% | 1.402x | 48.7% | 2.9% | 1.8% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q30 fixed-pd low | tpot_mean_ms | tp1_mns16 | tp4_mns32 | 14.0% | 4.952x | 52.7% | 0.2% | 0.0% | 14.0% | yes | HOLDS | mixed | 13.1% | -52.5% | 2 | 0 | 6 | no | +| q30 fixed-pd low | tpot_p90_ms | tp1_mns16 | tp4_mns8 | 13.4% | 4.950x | 53.2% | 0.3% | 0.2% | 13.4% | yes | HOLDS | mixed | 12.5% | -52.8% | 2 | 0 | 6 | no | +| q30 fixed-pd low | e2e_mean_ms | tp1_mns16 | tp4_mns32 | 26.9% | 4.423x | 59.8% | 0.2% | 0.1% | 26.9% | yes | HOLDS | mixed | 23.8% | -59.6% | 2 | 0 | 6 | no | +| q30 fixed-pd low | e2e_p90_ms | tp1_mns16 | tp4_mns8 | 25.7% | 4.421x | 60.0% | 0.2% | 0.1% | 25.7% | yes | HOLDS | mixed | 22.9% | -59.8% | 2 | 0 | 6 | no | +| q30 fixed-po low | ttft_mean_ms | tp4_mns16 | tp4_mns8 | 1.5% | 1.218x | 20.9% | 1.1% | 0.3% | 1.5% | no | COUNTEREXAMPLE | mns-axis | 1.5% | -1.5% | 0 | 0 | 0 | no | +| q30 fixed-po low | ttft_p90_ms | tp4_mns16 | tp4_mns8 | 3.6% | 1.184x | 16.1% | 2.3% | 0.6% | 3.6% | no | COUNTEREXAMPLE | mns-axis | 3.5% | -3.5% | 0 | 0 | 0 | no | +| q30 fixed-po low | e2e_mean_ms | tp4_mns16 | tp4_mns8 | 1.5% | 1.217x | 20.8% | 1.1% | 0.3% | 1.5% | no | COUNTEREXAMPLE | mns-axis | 1.5% | -1.5% | 0 | 0 | 0 | no | +| q30 fixed-po low | e2e_p90_ms | tp4_mns16 | tp4_mns8 | 3.6% | 1.183x | 16.0% | 2.4% | 0.7% | 3.6% | no | COUNTEREXAMPLE | mns-axis | 3.5% | -3.5% | 0 | 0 | 0 | no | +| q30 trace-po low | ttft_mean_ms | tp4_mns16 | tp4_mns64 | 3.2% | 0.657x | 18.2% | 2.6% | 1.7% | 3.2% | no | COUNTEREXAMPLE | mns-axis | 3.1% | -3.1% | 0 | 3 | 0 | no | +| q30 trace-po low | ttft_p90_ms | tp4_mns16 | tp4_mns8 | 0.4% | 0.478x | 17.7% | 0.2% | 0.2% | 0.4% | no | COUNTEREXAMPLE | mns-axis | 0.4% | -0.4% | 0 | 0 | 0 | no | +| q30 trace-po low | e2e_mean_ms | tp4_mns16 | tp4_mns64 | 3.2% | 0.657x | 18.2% | 2.6% | 1.7% | 3.2% | no | COUNTEREXAMPLE | mns-axis | 3.1% | -3.1% | 0 | 3 | 0 | no | +| q30 trace-po low | e2e_p90_ms | tp4_mns16 | tp4_mns8 | 0.3% | 0.478x | 17.7% | 0.2% | 0.1% | 0.3% | no | COUNTEREXAMPLE | mns-axis | 0.3% | -0.3% | 0 | 0 | 0 | no | +| q235 A0 fixed-pd | ttft_mean_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | 4.2% | 0.991x | 6.1% | 5.0% | 0.4% | 4.2% | no | COUNTEREXAMPLE | tp-axis | 4.1% | -5.0% | 1 | 0 | 1 | no | +| q235 A0 fixed-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 0.2% | 1.020x | 2.4% | 2.4% | 0.2% | 0.2% | no | COUNTEREXAMPLE | mns-axis | 0.2% | -0.2% | 0 | 0 | 0 | no | +| q235 A0 fixed-pd | tpot_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 33.0% | 3.025x | 64.0% | 63.9% | 0.7% | 33.0% | yes | HOLDS | tp-axis | 28.5% | -64.0% | 1 | 0 | 1 | no | +| q235 A0 fixed-pd | tpot_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 37.2% | 3.062x | 62.9% | 62.8% | 0.3% | 37.2% | yes | HOLDS | tp-axis | 31.6% | -62.8% | 1 | 0 | 1 | no | +| q235 A0 fixed-pd | e2e_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 30.7% | 2.913x | 61.5% | 61.5% | 0.7% | 30.7% | yes | HOLDS | tp-axis | 26.8% | -61.5% | 1 | 0 | 1 | no | +| q235 A0 fixed-pd | e2e_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 34.6% | 2.955x | 60.5% | 60.4% | 0.3% | 34.6% | yes | HOLDS | tp-axis | 29.7% | -60.4% | 1 | 0 | 1 | no | +| q235 A0 fixed-po | ttft_mean_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | 5.9% | 0.964x | 12.1% | 12.0% | 0.2% | 5.9% | yes | HOLDS | tp-axis | 5.7% | -12.0% | 1 | 0 | 1 | no | +| q235 A0 fixed-po | ttft_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | 1.7% | 0.941x | 8.3% | 8.0% | 0.3% | 1.7% | no | COUNTEREXAMPLE | tp-axis | 1.7% | -8.0% | 1 | 0 | 1 | no | +| q235 A0 fixed-po | e2e_mean_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | 5.9% | 0.964x | 12.1% | 12.0% | 0.2% | 5.9% | yes | HOLDS | tp-axis | 5.7% | -12.0% | 1 | 0 | 1 | no | +| q235 A0 fixed-po | e2e_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns128 | 1.7% | 0.941x | 8.3% | 8.0% | 0.3% | 1.7% | no | COUNTEREXAMPLE | tp-axis | 1.7% | -8.0% | 1 | 0 | 1 | no | +| q235 A0 trace-pd | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 1.493x | 101.6% | 101.6% | 2220.3% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A0 trace-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 1.511x | 96.5% | 96.5% | 3455.8% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A0 trace-pd | tpot_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | 0.0% | 1.340x | 61.5% | 43.1% | 16.8% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A0 trace-pd | tpot_p90_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | 0.0% | 1.281x | 49.4% | 29.8% | 26.3% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A0 trace-pd | e2e_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 0.6% | 1.415x | 69.3% | 69.3% | 0.6% | 0.6% | no | COUNTEREXAMPLE | mns-axis | 0.6% | -18.1% | 0 | 1 | 0 | no | +| q235 A0 trace-pd | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 6.2% | 1.473x | 71.5% | 71.5% | 6.2% | 6.2% | yes | HOLDS | mns-axis | 6.0% | -16.7% | 0 | 1 | 0 | no | +| q235 A0 trace-po | ttft_mean_ms | tp4_ep1_mns64 | tp8_ep8_mns128 | 7.0% | 0.753x | 36.3% | 34.6% | 1.4% | 7.0% | yes | HOLDS | mixed | 6.8% | -36.3% | 1 | 1 | 1 | no | +| q235 A0 trace-po | ttft_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns64 | 21.2% | 0.767x | 31.8% | 31.6% | 0.3% | 21.2% | yes | HOLDS | mixed | 19.2% | -31.6% | 1 | 0 | 1 | no | +| q235 A0 trace-po | e2e_mean_ms | tp4_ep1_mns64 | tp8_ep8_mns128 | 7.0% | 0.753x | 36.3% | 34.6% | 1.4% | 7.0% | yes | HOLDS | mixed | 6.8% | -36.3% | 1 | 1 | 1 | no | +| q235 A0 trace-po | e2e_p90_ms | tp4_ep1_mns128 | tp8_ep8_mns64 | 21.2% | 0.766x | 31.8% | 31.6% | 0.3% | 21.2% | yes | HOLDS | mixed | 19.2% | -31.6% | 1 | 0 | 1 | no | +| q235 A1 fixed-pd | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 0.805x | 26.8% | 26.8% | 0.4% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | yes | +| q235 A1 fixed-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 0.2% | 0.837x | 30.5% | 30.5% | 0.2% | 0.2% | no | COUNTEREXAMPLE | mns-axis | 0.2% | -0.2% | 0 | 0 | 0 | no | +| q235 A1 fixed-pd | tpot_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 33.0% | 2.608x | 60.1% | 60.0% | 0.7% | 33.0% | yes | HOLDS | tp-axis | 28.5% | -60.1% | 1 | 0 | 1 | no | +| q235 A1 fixed-pd | tpot_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 37.2% | 2.587x | 61.2% | 61.1% | 0.3% | 37.2% | yes | HOLDS | tp-axis | 31.6% | -61.1% | 1 | 0 | 1 | no | +| q235 A1 fixed-pd | e2e_mean_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 30.7% | 2.508x | 58.3% | 58.2% | 0.7% | 30.7% | yes | HOLDS | tp-axis | 26.8% | -58.3% | 1 | 0 | 1 | no | +| q235 A1 fixed-pd | e2e_p90_ms | tp8_ep8_mns128 | tp4_ep1_mns128 | 34.6% | 2.495x | 59.3% | 59.2% | 0.3% | 34.6% | yes | HOLDS | tp-axis | 29.7% | -59.2% | 1 | 0 | 1 | no | +| q235 A1 fixed-po | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 0.776x | 24.8% | 24.8% | 0.2% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | yes | +| q235 A1 fixed-po | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 0.757x | 28.9% | 28.9% | 0.3% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | yes | +| q235 A1 fixed-po | e2e_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 0.776x | 24.8% | 24.8% | 0.2% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | yes | +| q235 A1 fixed-po | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 0.757x | 28.9% | 28.9% | 0.3% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | yes | +| q235 A1 trace-pd | ttft_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 1.217x | 154.4% | 154.4% | 2220.3% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A1 trace-pd | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns128 | 0.0% | 1.219x | 151.1% | 151.1% | 3455.8% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A1 trace-pd | tpot_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | 0.0% | 1.338x | 46.7% | 28.2% | 16.8% | 0.0% | no | COUNTEREXAMPLE | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A1 trace-pd | tpot_p90_ms | tp8_ep8_mns64 | tp8_ep8_mns64 | 0.0% | 1.221x | 45.3% | 22.3% | 26.3% | 0.0% | no | HOLDS | none | 0.0% | +0.0% | 0 | 0 | 0 | no | +| q235 A1 trace-pd | e2e_mean_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 0.6% | 1.430x | 48.8% | 48.8% | 0.6% | 0.6% | no | COUNTEREXAMPLE | mns-axis | 0.6% | -15.9% | 0 | 1 | 0 | no | +| q235 A1 trace-pd | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 6.2% | 1.492x | 49.7% | 49.7% | 6.2% | 6.2% | yes | HOLDS | mns-axis | 6.0% | -17.4% | 0 | 1 | 0 | no | +| q235 A1 trace-po | ttft_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns128 | 1.4% | 0.548x | 32.2% | 32.2% | 1.4% | 1.4% | no | COUNTEREXAMPLE | mns-axis | 1.4% | -1.4% | 0 | 1 | 0 | no | +| q235 A1 trace-po | ttft_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 0.3% | 0.568x | 31.9% | 31.9% | 0.3% | 0.3% | no | COUNTEREXAMPLE | mns-axis | 0.3% | -0.3% | 0 | 0 | 0 | no | +| q235 A1 trace-po | e2e_mean_ms | tp8_ep8_mns64 | tp8_ep8_mns128 | 1.4% | 0.548x | 32.2% | 32.2% | 1.4% | 1.4% | no | COUNTEREXAMPLE | mns-axis | 1.4% | -1.4% | 0 | 1 | 0 | no | +| q235 A1 trace-po | e2e_p90_ms | tp8_ep8_mns128 | tp8_ep8_mns64 | 0.3% | 0.568x | 31.9% | 31.9% | 0.3% | 0.3% | no | COUNTEREXAMPLE | mns-axis | 0.3% | -0.3% | 0 | 0 | 0 | no | + +## H-SCALE verdict + +H-SCALE is not sufficient as stated; the following rows are counterexamples to the biconditional: + +All 40 observed counterexamples are non-failures with spread > `log1p(margin)`; there are 0 failures with spread <= `log1p(margin)`. Thus the threshold is necessary for the observed failures but not sufficient to predict them. + +| case | objective | failure | spread real top-3 | real margin | counterexample type | +|---|---|---|---:|---:|---| +| q30 trace-pd | ttft_mean_ms | no | 73.5% | 52.8% | non-failure with spread > log1p(margin) | +| q30 trace-pd | ttft_p90_ms | no | 136.8% | 67.6% | non-failure with spread > log1p(margin) | +| q30 trace-pd | e2e_mean_ms | no | 50.1% | 6.6% | non-failure with spread > log1p(margin) | +| q30 trace-pd | e2e_p90_ms | no | 70.3% | 0.1% | non-failure with spread > log1p(margin) | +| q30 fixed-pd high | tpot_mean_ms | no | 95.7% | 34.4% | non-failure with spread > log1p(margin) | +| q30 fixed-pd high | tpot_p90_ms | no | 95.1% | 37.2% | non-failure with spread > log1p(margin) | +| q30 fixed-pd high | e2e_mean_ms | no | 111.5% | 0.7% | non-failure with spread > log1p(margin) | +| q30 fixed-po high | ttft_mean_ms | no | 0.3% | 0.1% | non-failure with spread > log1p(margin) | +| q30 fixed-po high | ttft_p90_ms | no | 0.3% | 0.0% | non-failure with spread > log1p(margin) | +| q30 fixed-po high | e2e_mean_ms | no | 0.3% | 0.1% | non-failure with spread > log1p(margin) | +| q30 fixed-po high | e2e_p90_ms | no | 0.3% | 0.0% | non-failure with spread > log1p(margin) | +| q30 fixed-pd low | ttft_mean_ms | no | 1.5% | 1.3% | non-failure with spread > log1p(margin) | +| q30 fixed-pd low | ttft_p90_ms | no | 2.9% | 1.8% | non-failure with spread > log1p(margin) | +| q30 fixed-po low | ttft_mean_ms | no | 1.1% | 0.3% | non-failure with spread > log1p(margin) | +| q30 fixed-po low | ttft_p90_ms | no | 2.3% | 0.6% | non-failure with spread > log1p(margin) | +| q30 fixed-po low | e2e_mean_ms | no | 1.1% | 0.3% | non-failure with spread > log1p(margin) | +| q30 fixed-po low | e2e_p90_ms | no | 2.4% | 0.7% | non-failure with spread > log1p(margin) | +| q30 trace-po low | ttft_mean_ms | no | 2.6% | 1.7% | non-failure with spread > log1p(margin) | +| q30 trace-po low | ttft_p90_ms | no | 0.2% | 0.2% | non-failure with spread > log1p(margin) | +| q30 trace-po low | e2e_mean_ms | no | 2.6% | 1.7% | non-failure with spread > log1p(margin) | +| q30 trace-po low | e2e_p90_ms | no | 0.2% | 0.1% | non-failure with spread > log1p(margin) | +| q235 A0 fixed-pd | ttft_mean_ms | no | 5.0% | 0.4% | non-failure with spread > log1p(margin) | +| q235 A0 fixed-pd | ttft_p90_ms | no | 2.4% | 0.2% | non-failure with spread > log1p(margin) | +| q235 A0 fixed-po | ttft_p90_ms | no | 8.0% | 0.3% | non-failure with spread > log1p(margin) | +| q235 A0 fixed-po | e2e_p90_ms | no | 8.0% | 0.3% | non-failure with spread > log1p(margin) | +| q235 A0 trace-pd | tpot_mean_ms | no | 43.1% | 16.8% | non-failure with spread > log1p(margin) | +| q235 A0 trace-pd | tpot_p90_ms | no | 29.8% | 26.3% | non-failure with spread > log1p(margin) | +| q235 A0 trace-pd | e2e_mean_ms | no | 69.3% | 0.6% | non-failure with spread > log1p(margin) | +| q235 A1 fixed-pd | ttft_mean_ms | no | 26.8% | 0.4% | non-failure with spread > log1p(margin) | +| q235 A1 fixed-pd | ttft_p90_ms | no | 30.5% | 0.2% | non-failure with spread > log1p(margin) | +| q235 A1 fixed-po | ttft_mean_ms | no | 24.8% | 0.2% | non-failure with spread > log1p(margin) | +| q235 A1 fixed-po | ttft_p90_ms | no | 28.9% | 0.3% | non-failure with spread > log1p(margin) | +| q235 A1 fixed-po | e2e_mean_ms | no | 24.8% | 0.2% | non-failure with spread > log1p(margin) | +| q235 A1 fixed-po | e2e_p90_ms | no | 28.9% | 0.3% | non-failure with spread > log1p(margin) | +| q235 A1 trace-pd | tpot_mean_ms | no | 28.2% | 16.8% | non-failure with spread > log1p(margin) | +| q235 A1 trace-pd | e2e_mean_ms | no | 48.8% | 0.6% | non-failure with spread > log1p(margin) | +| q235 A1 trace-po | ttft_mean_ms | no | 32.2% | 1.4% | non-failure with spread > log1p(margin) | +| q235 A1 trace-po | ttft_p90_ms | no | 31.9% | 0.3% | non-failure with spread > log1p(margin) | +| q235 A1 trace-po | e2e_mean_ms | no | 32.2% | 1.4% | non-failure with spread > log1p(margin) | +| q235 A1 trace-po | e2e_p90_ms | no | 31.9% | 0.3% | non-failure with spread > log1p(margin) | + +## S0b directional conclusions + +Directional pair statistics remove the S0 range statistic's ambiguity by measuring every config against the real winner. Strict inversions use the frozen-value test `real_c > real_w and sim_c < sim_w`; simulator ties are not counted as inversions. + +### (a) Which config axis decides each material failure? + +| case | objective | real winner → sim winner | deciding axis | m_s | delta_s | -delta_s | regret | +|---|---|---|---|---:|---:|---:|---:| +| q30 fixed-pd high | ttft_mean_ms | tp4_mns32 → tp2_mns64 | mixed | 45.7% | -523.8% | 523.8% | 58.0% | +| q30 fixed-pd high | ttft_p90_ms | tp4_mns64 → tp2_mns64 | tp-axis | 44.6% | -435.3% | 435.3% | 56.2% | +| q30 fixed-pd high | e2e_p90_ms | tp1_mns32 → tp2_mns64 | mixed | 5.3% | -101.7% | 101.7% | 5.5% | +| q30 fixed-pd low | tpot_mean_ms | tp4_mns32 → tp1_mns16 | mixed | 13.1% | -52.5% | 52.5% | 14.0% | +| q30 fixed-pd low | tpot_p90_ms | tp4_mns8 → tp1_mns16 | mixed | 12.5% | -52.8% | 52.8% | 13.4% | +| q30 fixed-pd low | e2e_mean_ms | tp4_mns32 → tp1_mns16 | mixed | 23.8% | -59.6% | 59.6% | 26.9% | +| q30 fixed-pd low | e2e_p90_ms | tp4_mns8 → tp1_mns16 | mixed | 22.9% | -59.8% | 59.8% | 25.7% | +| q235 A0 fixed-pd | tpot_mean_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 28.5% | -64.0% | 64.0% | 33.0% | +| q235 A0 fixed-pd | tpot_p90_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 31.6% | -62.8% | 62.8% | 37.2% | +| q235 A0 fixed-pd | e2e_mean_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 26.8% | -61.5% | 61.5% | 30.7% | +| q235 A0 fixed-pd | e2e_p90_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 29.7% | -60.4% | 60.4% | 34.6% | +| q235 A0 fixed-po | ttft_mean_ms | tp8_ep8_mns128 → tp4_ep1_mns128 | tp-axis | 5.7% | -12.0% | 12.0% | 5.9% | +| q235 A0 fixed-po | e2e_mean_ms | tp8_ep8_mns128 → tp4_ep1_mns128 | tp-axis | 5.7% | -12.0% | 12.0% | 5.9% | +| q235 A0 trace-pd | e2e_p90_ms | tp8_ep8_mns64 → tp8_ep8_mns128 | mns-axis | 6.0% | -16.7% | 16.7% | 6.2% | +| q235 A0 trace-po | ttft_mean_ms | tp8_ep8_mns128 → tp4_ep1_mns64 | mixed | 6.8% | -36.3% | 36.3% | 7.0% | +| q235 A0 trace-po | ttft_p90_ms | tp8_ep8_mns64 → tp4_ep1_mns128 | mixed | 19.2% | -31.6% | 31.6% | 21.2% | +| q235 A0 trace-po | e2e_mean_ms | tp8_ep8_mns128 → tp4_ep1_mns64 | mixed | 6.8% | -36.3% | 36.3% | 7.0% | +| q235 A0 trace-po | e2e_p90_ms | tp8_ep8_mns64 → tp4_ep1_mns128 | mixed | 19.2% | -31.6% | 31.6% | 21.2% | +| q235 A1 fixed-pd | tpot_mean_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 28.5% | -60.1% | 60.1% | 33.0% | +| q235 A1 fixed-pd | tpot_p90_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 31.6% | -61.1% | 61.1% | 37.2% | +| q235 A1 fixed-pd | e2e_mean_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 26.8% | -58.3% | 58.3% | 30.7% | +| q235 A1 fixed-pd | e2e_p90_ms | tp4_ep1_mns128 → tp8_ep8_mns128 | tp-axis | 29.7% | -59.2% | 59.2% | 34.6% | +| q235 A1 trace-pd | e2e_p90_ms | tp8_ep8_mns64 → tp8_ep8_mns128 | mns-axis | 6.0% | -17.4% | 17.4% | 6.2% | + +### (b) Where do TP-axis and MNS-axis inversions and boundary ties concentrate? + +`n_inv_*` counts sum strict `(real winner, c)` pair inversions across all objectives in each case; a row can contain more than one inverted pair. `n_tie_*` counts cover exact simulator ties only for the simulator-selected winner versus the real winner. Ties remain decision-boundary winner-label mismatches, not strict reversals. + +| case | n_inv_tp | n_inv_mns | n_inv_mixed | n_tie_tp | n_tie_mns | n_tie_mixed | +|---|---:|---:|---:|---:|---:|---:| +| q30 trace-pd | 0 | 0 | 0 | 0 | 0 | 0 | +| q30 fixed-pd high | 7 | 3 | 6 | 0 | 0 | 0 | +| q30 fixed-po high | 0 | 0 | 0 | 0 | 4 | 0 | +| q30 fixed-pd low | 8 | 0 | 24 | 0 | 0 | 0 | +| q30 fixed-po low | 0 | 0 | 0 | 0 | 4 | 0 | +| q30 trace-po low | 0 | 6 | 0 | 0 | 2 | 0 | +| q235 A0 fixed-pd | 5 | 0 | 5 | 0 | 1 | 0 | +| q235 A0 fixed-po | 4 | 0 | 4 | 0 | 0 | 0 | +| q235 A0 trace-pd | 0 | 2 | 0 | 0 | 0 | 0 | +| q235 A0 trace-po | 4 | 2 | 4 | 0 | 0 | 0 | +| q235 A1 fixed-pd | 4 | 0 | 4 | 0 | 1 | 0 | +| q235 A1 fixed-po | 0 | 0 | 0 | 0 | 0 | 0 | +| q235 A1 trace-pd | 0 | 2 | 0 | 0 | 0 | 0 | +| q235 A1 trace-po | 0 | 2 | 0 | 0 | 2 | 0 | +| **total** | **32** | **17** | **47** | **0** | **14** | **0** | + +- Among strict inversions, TP-axis cases are most concentrated in: q30 fixed-pd low (8), q30 fixed-pd high (7), q235 A0 fixed-pd (5), q235 A0 fixed-po (4), q235 A0 trace-po (4). +- Among strict inversions, MNS-axis cases are most concentrated in: q30 trace-po low (6), q30 fixed-pd high (3), q235 A0 trace-pd (2), q235 A0 trace-po (2), q235 A1 trace-pd (2). +- The eight Q235 A0/A1 Fixed-PD failures are all tp-axis. This does not conflict with the A0/MNS64 state-drift diagnosis, but does not constitute additional state-drift evidence for A1/MNS128. +- Q30 admission evidence does not map one-to-one to an MNS-axis deciding pair: high-pressure Fixed-PD TTFT mean is **mixed** and p90 is **tp-axis**. This is an axis/mechanism mismatch, not a direct causal contradiction: changing TP changes offered arrival pressure, while the diagnosed nonlinear event is crossing the MNS admission cap. It rules out the simpler claim that an MNS-threshold mechanism must appear as an mns-axis winner pair. +- All 14 exact simulator winner ties are mns-axis. Including these boundary errors gives MNS **17 + 14 = 31**, comparable to TP's **32** strict inversions. + +The exact ties below show that Frontier is completely insensitive to MNS changes within the corresponding case/objective cell: + +| case | objective | real winner ↔ simulator-selected tied winner (MNS pair) | +|---|---|---| +| q30 fixed-po high | ttft_mean_ms | tp4_mns32 ↔ tp4_mns16 | +| q30 fixed-po high | ttft_p90_ms | tp4_mns32 ↔ tp4_mns16 | +| q30 fixed-po high | e2e_mean_ms | tp4_mns32 ↔ tp4_mns16 | +| q30 fixed-po high | e2e_p90_ms | tp4_mns32 ↔ tp4_mns16 | +| q30 fixed-po low | ttft_mean_ms | tp4_mns8 ↔ tp4_mns16 | +| q30 fixed-po low | ttft_p90_ms | tp4_mns8 ↔ tp4_mns16 | +| q30 fixed-po low | e2e_mean_ms | tp4_mns8 ↔ tp4_mns16 | +| q30 fixed-po low | e2e_p90_ms | tp4_mns8 ↔ tp4_mns16 | +| q30 trace-po low | ttft_p90_ms | tp4_mns8 ↔ tp4_mns16 | +| q30 trace-po low | e2e_p90_ms | tp4_mns8 ↔ tp4_mns16 | +| q235 A0 fixed-pd | ttft_p90_ms | tp8_ep8_mns64 ↔ tp8_ep8_mns128 | +| q235 A1 fixed-pd | ttft_p90_ms | tp8_ep8_mns64 ↔ tp8_ep8_mns128 | +| q235 A1 trace-po | ttft_p90_ms | tp8_ep8_mns64 ↔ tp8_ep8_mns128 | +| q235 A1 trace-po | e2e_p90_ms | tp8_ep8_mns64 ↔ tp8_ep8_mns128 | + +### (c) How many exact-winner successes are margin-robust? + +Among exact winner matches, **17** are margin-robust (`margin >= 1%`) and **6** are fragile (`margin < 1%`). Separately, 14 winner-label mismatches come from exact simulator ties and sit on the decision boundary rather than being strict inversions. + +| fragile-success case | objective | real margin | +|---|---|---:| +| q30 trace-pd | e2e_p90_ms | 0.1% | +| q235 A1 fixed-pd | ttft_mean_ms | 0.4% | +| q235 A1 fixed-po | ttft_mean_ms | 0.2% | +| q235 A1 fixed-po | ttft_p90_ms | 0.3% | +| q235 A1 fixed-po | e2e_mean_ms | 0.2% | +| q235 A1 fixed-po | e2e_p90_ms | 0.3% | + +## Cross-checks + +| check | observed | frozen expectation | result | +|---|---:|---:|---| +| q30 high-pressure fixed-pd TTFT mean regret | 58.0% | 58.0% | PASS | +| q235 A0 fixed-pd TPOT mean regret | 33.0% | 33.0% | PASS | +| q235 A1 fixed-pd TPOT mean regret | 33.0% | 33.0% | PASS | +| q30 trace-pd all-objective regret | 0.0%, 0.0%, 0.0%, 0.0%, 0.0%, 0.0% | 0.0%, 0.0%, 0.0%, 0.0%, 0.0%, 0.0% | PASS | +| q235 Trace-PO TTFT p90 A0 to A1 regret | 21.2%, 0.3% | 21.2%, 0.3% | PASS | +| q235 Fixed-PD TPOT/E2E regrets unchanged from A0 to A1 | 33.0%, 37.2%, 30.7%, 34.6%, 33.0%, 37.2%, 30.7%, 34.6% | 33.0%, 37.2%, 30.7%, 34.6%, 33.0%, 37.2%, 30.7%, 34.6% | PASS | + +## Data gaps + +No per-config sim/real pairing gaps were found in the requested surfaces. + +## 异常 + +- 无。重算 winner/regret 与 frozen JSON 一致,硬性交叉核对均通过。 + +## Figure + +`margin-vs-residual.png` uses x = `100 × log1p(real best-vs-second relative margin)` and y = `100 ×` real-top-3 log-ratio spread. Both axes are logarithmic because the real margins span six orders of magnitude. Green means exact winner match; red means winner mismatch. The diagonal is the H-SCALE threshold, while failure itself is defined by regret, not by exact winner match. + +`decision-pair-axis.png` is a mechanism census, not a hypothesis test: for a strict winner reversal, `-delta_s > m_s` is algebraically equivalent to the mismatch. The frozen surfaces also contain deterministic winner-label mismatches caused by exact simulator ties; those points lie on `-delta_s = m_s` and are not counted as strict inversions. Color identifies the winner-deciding config axis and marker area is proportional to regret. + +## A0 vs A1 对照 + +A1 repairs the Q235 Trace-PO p90 ranking error but leaves the four large Fixed-PD TPOT/E2E regrets unchanged. + +| case / objective | A0 regret | A1 regret | +|---|---:|---:| +| trace-po / ttft_p90_ms | 21.2% | 0.3% | +| fixed-pd / tpot_mean_ms | 33.0% | 33.0% | +| fixed-pd / tpot_p90_ms | 37.2% | 37.2% | +| fixed-pd / e2e_mean_ms | 30.7% | 30.7% | +| fixed-pd / e2e_p90_ms | 34.6% | 34.6% | + +Thus Trace-PO TTFT p90 changes **21.2% → 0.3%**, whereas Fixed-PD remains **33.0% / 37.2% / 30.7% / 34.6%** in both A0 and A1. + +## 已知分量归因摘要 + +### Q30 high-pressure Fixed-PD TTFT: first-scheduling wait vs execution-side TTFT + +`queue-free TTFT` is the execution-side TTFT after removing first-scheduling wait; in the frozen diagnostic, simulated TTFT is their sum (up to floating-point rounding). + +| config | sim TPOT / real | sim slots / MNS | real slots upper / MNS | first-scheduling wait | queue-free TTFT | sim TTFT | real TTFT | real waiting max | +|---|---:|---:|---:|---:|---:|---:|---:|---:| +| tp2_mns64 | 8.09x | 58.0/64 | 7.5/64 | 38.2 ms | 191.0 ms | 229.3 ms | 194.6 ms | 0 | +| tp4_mns16 | 3.83x | 54.5/16 | 14.6/16 | 64906.3 ms | 134.7 ms | 65041.0 ms | 124.5 ms | 0 | +| tp4_mns32 | 4.67x | 65.9/32 | 14.5/32 | 27180.7 ms | 135.6 ms | 27316.3 ms | 123.2 ms | 0 | +| tp4_mns64 | 5.61x | 79.8/64 | 14.7/64 | 6367.3 ms | 136.7 ms | 6504.0 ms | 123.2 ms | 0 | + +For TP4/MNS32 minus TP2/MNS64, the observed simulator contrast is **+27087.0 ms**; removing first-scheduling wait changes it to **-55.4 ms**, aligned with the real contrast **-71.4 ms**. This localizes the Q30 high-pressure TTFT reversal to admission queueing, while the upstream service-time overprediction remains unattributed in the frozen data. + +### Q235 Fixed-PD: own-composition vs exact-state contrast + +Positive TP8−TP4 means TP8 is slower and therefore agrees with the real TP4 winner. + +| config | sim own decode batch mean | real exact decode batch mean | real token-weighted iteration | exact-state matched sim | coverage | +|---|---:|---:|---:|---:|---:| +| tp4_ep1_mns64 | 13.537 | 3.890 | 18.4710 ms | 34.2575 ms | 100.0% | +| tp8_ep8_mns64 | 18.938 | 10.921 | 27.5887 ms | 45.1603 ms | 100.0% | + +| component | own-composition TP8−TP4 | exact-state TP8−TP4 | +|---|---:|---:| +| total | -20.0663 ms | +10.9028 ms | +| moe_compute | -32.4544 ms | -1.9774 ms | +| attention | -7.4619 ms | -2.1304 ms | +| tp_dp_communication | -6.5711 ms | -6.4718 ms | +| ep_communication | +6.2354 ms | +6.5355 ms | +| moe_routing | -0.2862 ms | +0.1384 ms | +| dense_mlp_compute | -0.1231 ms | -0.0308 ms | +| pipeline_communication | +0.0000 ms | +0.0000 ms | +| runtime_overhead | +0.0000 ms | +0.0000 ms | + +The total contrast flips from **-20.0663 ms** on Frontier's own composition to **+10.9028 ms** at exact real state, a **+30.9690 ms** state-composition shift. The exact real iteration contrast is **+9.1177 ms** and the frozen real TPOT contrast is **+6.9500 ms**. This supports closed-loop state/composition drift for Q235 Fixed-PD; it does not by itself attribute every remaining conditional execution residual. diff --git a/runs/frontier-split-rootcause-v0/results/margin-vs-residual.png b/runs/frontier-split-rootcause-v0/results/margin-vs-residual.png new file mode 100644 index 0000000000000000000000000000000000000000..f4e93965384cca8c3b7d1b107b72ef879d1faa93 GIT binary patch literal 222845 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