ASW_Basic 时延模型审查: A0 drain 量级 bug (evaluate 路径) + 周长型尾轮残余未建模 #37
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
背景
用户审查 ASW_Basic
evaluate时延口径(整芯片稳态聚合 总量/(used×单核速率) + 三段 max + t_drain)时提出: 没有 ⌈N_blk/C⌉ 波次量化、没有"每核分到多少块、逐块流水、末块三段相加"的逻辑, 是否合理。经与《ASW_Basic分支分析 v1.91》§3.1/§5.1、《BMM尾轮处理策略对比分析 v1.5》§2.1/§3.3/§4.3/§5 全文交叉核对, 结论与修复方案如下(用户已审核通过)。分析结论(主口径保留不改)
T = max(T_MTE2, T_MMAD, T_FIX) + T_drain; 数学上均匀分块下N_blk/C ≡ n_wave−1+ρ, 恰等于 v1.5 §4.3 面积型 A1b/方案B 的严格相等式T = (n_wave−1+ρ)·T_block—— 面积型主导下(主流 case)当前模型即理论最优口径。(w−1)·max+Σ朴素流水式与尾轮重切机制(A1b/方案B 的存在目的就是消除 ⌈⌉ 惩罚)冲突, 且 w=1 时与 UnitFlag 假设冲突, 不采用。发现的问题
tail_strategy=="A0" and tail_block_cnt>0时t_drain = max(t_mmad, t_gm+t_l2, t_fix)用的是全 case 总量级时延 → t_total ≈ 2×稳态。recommend 路径打不到(_decide_tail仅 r=0 返回 A0, 该分支为死代码), 但 evaluate 评估用户自供 A0 方案时触发 —— 而 A0 恰是线上 kernel 的真实行为(v1.91:UpdateBasicIndex尾轮空转跳过)。正确残余 =(1−ρ)·T_block(块级):T_A0 = n_wave·T_block = 稳态(n_wave−1+ρ)·T_block + (1−ρ)·T_block。(√ρ−ρ)·T_load; 方案B 少(√(n_wave·(n_wave−1+ρ))−(n_wave−1+ρ))·T_load(v1.5 §5)。面积型残余恒 0(严格相等), 不受影响。T_drain=O(T_comp+T_write)首块填充/末块排空未计入。UnitFlag 细粒度流水下真实暴露为 16-granule 级小量, 量级未标定, 决议只写文档标注、不入模型。修复方案(方案甲, 用户审核通过)
evaluate的t_drain改闭式(块级时延与_decide_tail同源_block_times, L2 命中口径):docs/02_分支理论/06_ASW_Basic分支.md§3 补 drain 闭式表 + P3/P4 边界标注。影响面: recommend 输出仅"周长型 + r>0"的 ASW case 的 t_drain/t_total 变化; evaluate 的 A0+r>0 方案 t_drain 从 ~2×稳态 修为 (1−ρ)·T_block; 其余行 0 diff。
已修复并推送 (commit
f9d5da0,Fix #37)。改动
bmm_theory/branches/asw_basic.py_block_times(case, sm, sn): 块级三段时延 (v1.5 §2.1 口径, L2 命中带宽),_decide_tail主导项判定与evaluatedrain 同源共用;evaluate的t_drain闭式化:(1−ρ)·T_block(修复 P1 —— 原实现误用全 case 三级 max, t_total≈2×稳态; 实测 demo: drain 17.543us→4.419us, 与 (1−ρ)·T_block 手算一致);(√ρ−ρ)·T_load; 周长型 方案B:(√(n_wave(n_wave−1+ρ))−(n_wave−1+ρ))·T_load(P2);docs/02_分支理论/06_ASW_Basic分支.md§3: 补 drain 闭式表 + P3/P4 边界标注 (首块填充/末块排空为 UnitFlag 16-granule 级小量不入模型; 尾轮重切流量放大 √g/1/√ρ 仅影响周长型角区)。tests/test_branches.py: 新增TestIssue37七例 —— 块级三段公式、A0 残余 (P1)、面积型残余 0、周长型 A1b/方案B 残余 (P2)、r=0、make_plan 端到端 (33,16,8192,7168) A1b 一致性。验证
闭环。