G5 计算建模现状与缺口
G5 仿真的计算侧为何不可信,在补齐前哪些 CP 结论能用、哪些不能。
本文记录 G5 仿真中计算建模的当前状态与已知缺口,供任何读取 G5 性能结果(TTFT / TPOT / 掩盖边界)的人判断结论可信度。核心结论:G5 的通信侧可信、计算侧是未标定的 placeholder,两侧保真度不对称。
通信侧可信、计算侧 placeholder 的不对称
G5 对同一条仿真链路的两侧保真度不同:通信侧照算能(Sophgo)SG2262 spec v2.2 建到 cycle 级,计算侧只有算能形状的骨架、参数未标定。
| 维度 | 通信侧 | 计算侧 |
|---|---|---|
| 覆盖模块 | CDMA / PAXI / RC-Link / C2C / Switch | TIU(matmul)/ HAU(排序) |
| spec 背书 | 有,引 SG2262 spec v2.2 页码(tcredit / OST / WRR 仲裁等) | 无,9 个 G5 spec 全是通信 / 互联 / 路由 |
| 参数来源 | 硬件手册实测 | placeholder 常数,未标定 |
| 结论可信度 | cycle 级可信 | 不可信,仅供占位 |
@tbl-g5cm-asymmetry 通信侧与计算侧保真度对比
引擎命名 TIU / GDMA / SDMA / CDMA / HAU 是算能 TPU 架构专有,SG2262 为算能芯片(architecture: TPU_V7),并非业界通用术语。其他厂商的等价单元命名不同(NVIDIA Tensor Core、Google TPU MXU 等)。
不可信的计算建模项
以下代码已在源码处标记 [UNVALIDATED]:
perfmodel/evaluation/g5/src/tier3/tiu.rs的calc_mm2_nn:cycle 公式ceil(M/lane)·ceil(N/eu)·ceil(K/ch)的速率常数(lane_per_core/cube.dim_n/cube.dim_k/tiu_frequency_ghz/tiu_init_cycles)无 spec 背书。perfmodel/evaluation/g5/src/tier3/hau.rs:排序时延常数(sort_width/compare_cycles/init_cycles)未标定。perfmodel/evaluation/g5/adapter.py:消费compute_ns(= TIU + HAU 时长)处,已标注计算时延来自未标定模型。
可信的计算时延参照是 Math 路径的 roofline(见下文决定三)。
CP ring overlap 未实现
perfmodel/mapping/common/parallelism/planner.py 的 _emit_cp_ring 发射严格串行依赖:cpstep_i 依赖 cpcomm_{i-1}、cpcomm_i 依赖 cpstep_i,链为 step0 → comm0 → step1 → comm1 → …。计算与通信不并发,ring 总时长为串行累加:
而 ring 的真实收益来自重叠,理想形态应为 $\sum_i \max(t_{\text{comp},i}, t_{\text{comm},i})$。CP spec 设计了「ring step 内计算与通信并发」,但实现是串行 placeholder。
「重叠蜕变」验收测试不能证明 overlap 已实现:它只测 $S/\text{cp}$ 两个极端,而 $\max(a, b)$ 与 $a+b$ 在某一项远大于另一项时重合,因此区分不了串行与重叠。
后果:掩盖边界(通信被计算掩盖的临界点)等于 $\max$ 与 $\sum$ 的交叉点,在串行实现里不存在。即使计算时延标定到 100% 准,prefill 的 TTFT 收益曲线与掩盖边界仍做不出——它们是 overlap 的函数,不是计算速率的函数。
决定(2026-06-16)
- 保留并标记不可信计算代码,不删除。删除会丢失「扫 cp」时的相对趋势信号(下游求解器消费相对排序);改为源码标记
[UNVALIDATED]+ 本记录。 - overlap 优先于计算。掩盖边界 / 收益是 overlap 的函数,先改
_emit_cp_ring串行为 step 内并发(spec 已设计),计算建模走正常排期。 - 复用 Math 现成 roofline,不新建。
perfmodel/evaluation/math/evaluators/precise/matmul_evaluator.py已有FLOPs / effective_tflops+ 显式 overlap(min·(1-overlap_rate) + max)+calibration.py校准钮(compute_efficiency等)。后续 G5 计算速率委托同一compute_tflops源,附带使 G5 与 Math 的差分测试有意义。
影响:当前能用与不能用
| CP 结论 | 现状 | 依赖 |
|---|---|---|
| 通信量 / 容量墙(每 rank KV 内存) | 可用,精确 | 不依赖计算 |
| decode TPOT | 大体可用 | 访存受限,计算时延占比小 |
| prefill TTFT / 加速比 / scaling 效率 | 不可用 | 计算速率(未标定) |
| 掩盖边界 | 不可用 | overlap(未实现)+ 计算速率 |
@tbl-g5cm-usable CP 结论的当前可用性
待办:CP spec 更正
「G5 上下文并行建模设计规格」声称使 G5 能仿真出 TTFT / TPOT、且重叠蜕变测试验证了 overlap。实际 TTFT 继承了 placeholder 计算、overlap 未实现。该 spec 需在 overlap 实现时一并更正,不在本次记录范围。