代码基线 a71b766ce 已完成 2 / 8 篇 每类一篇浅色源码教学(概念爬坡 · 逐节配图 · 真实行号),规范见设计文档 7d 节
这系列把 vllm_ascend/ascend_config.py(AscendConfig,L226 起)里的调优参数按八类逐类讲透。
分类口径以参数解决什么问题为准(而非 YAML 缩进层级):例如 bubble_threshold 物理上写在
dyntra_lb_config 里,但它的作用是调度气泡控制,所以归入"调度类"。每篇面向
懂通用编程但没接触过这块代码的读者,从常识开始概念爬坡。
治什么病:多实例忙闲不均、长请求堵短请求、chunk 大小拍脑袋、抢占重算贵、批量作业挤占、MoE 融合算子容量、采样重复计算。
治什么病:host 侧线程调度漂移让喂卡节奏抖(绑核);device 侧单流执行时 Cube/Vector 交替有空隙、共享专家与路由专家串行干等(双流重叠)。
治什么病:Norm/RoPE/量化等相邻小算子逐个启动的开销——按架构选键融合成单算子。
params-03 规划中,敬请期待
治什么病:稀疏注意力的 KV 打包布局(C8)、KV 转置/NZ 布局、卸载与预留——KV 这本"预算"怎么花。
治什么病:把一层切到多卡的方式(细粒度分张量)、共享专家 DP、专家热点漂移(动态 EPLB)。
治什么病:decode 全图捕获/回放的路径选择(NpuGraphEx、xlite)、PA 形状列表、静态 kernel。
治什么病:草稿 token 怎么验证——拒绝采样、块验证、熵验证与动态投机配置。
治什么病:训练/推理一致性与批不变——精度回归排查时的"保底开关面"。
ascend_scheduler_config 在当前代码树中不存在(ascend_config.py 全量核对)。多流类实际为三参数:
enable_cpu_binding / multistream_dsv4_dsa_overlap(默认均 true)/ multistream_overlap_shared_expert(默认 false)。md 版建议书已同步修正。dyntra_lb_config 的 bubble_threshold 归调度类;mega_moe_max_tokens / enable_reduce_sample 是顶层字段但按作用归调度类。