2026-09-16
Ascend 采样改主机侧判定,消除每 token 设备同步
建议精读,但只需要 10 分钟左右:改动量极小,却是理解 Ascend 采样热路径与「设备标量判定 → 隐式同步」这一常见性能陷阱的好样本。重点关注三处设计决策:一是 `npu_top_k_top_p_eligible` 的计算位置选在 `from_schedule_batch`(而非每次采样),依赖「top_k 在采样期间不变」这一前提;二是 `merge_batch` 用 AND、默认值取 `False` 的保守取向,使漏传与合并只带来性能退化而不带来正确性风险;三是新增测试用 `torch.all` 抛 `AssertionError` 做护栏的写法,可作为同类优化的测试模板。需要在真实 NPU 上验证收益的团队,建议补充带同步计数的 profiler 证据,而不是依赖吞吐数字。
清理 Diffusion 死代码与 PipeFusion 遗留,净删 1264 行
值得精读,尤其是 `parallel_state.py` 与 `group_coordinator.py` 的合并方式:它展示了如何用通用实现替换专用实现并同时修复资源泄漏,新增的 Gloo 生命周期回归测试是验证分布式资源释放的很好模板。对于维护 diffusion 模块的工程师,建议关注 PP = 2 场景在合并后的通信行为,以及被删除环境变量是否有外部依赖。
清理 SRT 大量死代码与废弃测试,净删 3159 行
值得精读,尤其适合作为“大规模死代码清理”的范例:PR body 给出了每类删除的可验证论证(调用方扫描、import 检查、动态查找、测试矩阵隔离对比),并量化了删除的测试收益与保留项。值得关注的设计决策包括:缓存键简化为 UUID 列表、用 main/PR 测试计数差精确对齐删除的测试用例、以及删除 scanner 测试但保留行为测试的“迁移后退役守卫”模式。对编译、模型加载与 HiCache 模块维护者,建议留意编译缓存键变化与三个守卫测试退役后的长期影响。
Rust 前端新增外部多模态处理器扩展点
值得精读,尤其是扩展点设计:`MmProcessor` trait 抽象、`ProcessorExtensions` 的不透明字段透传、`validate-before-park` 的防御式结果校验、以及 BF16 以 `u16` 位模式零拷贝过界的做法。关注点建议放在:外部处理器接入文档是否补齐、`multimodal_*` 字段行为变更的兼容性说明、以及 GPU 实测落地前的风险接受度。
统一混合 SWA 内存池改用共享字节预算并重构准入记账
值得精读。重点学习三处设计决策:一是 `create_prefill_budget` 工厂把准入记账下沉到分配器,消除调度器对池类型的 if/else 分支;二是 `can_reserve/reclaim_plan` 联合判定配合穷举式派生属性测试,是防御共享字节记账回归的有效范式;三是兄弟类重构解决了 Mamba 三池错误继承两池策略的抽象问题。遗留跟进项(rationale 注释、PrefillDelayer 水线、动态口径文档化)应在后续 PR 中闭环。
抽取辅助输出契约并新增组合输出,支持多特性复用
值得精读,尤其是 `auxiliary_output.py` 中 Protocol + frozen dataclass + append 辅助函数的组装模式,可作为 SGLang 内部扩展点设计的参考范例。合并本身风险低,但建议关注后续是否有 PR 补充 re-export 兼容或为复合输出实现 PP 传输,以保证对插件生态和 pipeline parallel 场景的完整支持。
HiCache 存在缓存 LRU 扩至 512K 并优化查询热路径
值得精读的 Python 热路径微优化范例:展示了方法绑定(hoisting)、EAFP 与 LBYL 的取舍、批量淘汰、以及容量-内存权衡的工程分析,适合对缓存设计和性能优化感兴趣的工程师学习。但应意识到它缺少 benchmark 和专项测试,落地到线上前建议补一次 buffer-mode 长上下文对比测试验证收益。
重构 HiCache buffer 预取管线,修复命中记账错乱与重试失控
值得精读。这是 HiCache buffer-mode 预取管线的核心重构,建议重点关注三个设计决策:一是 `add_one_req` 的选择/提交分离模式,是“先记账后确认”型准入缺陷的通用解法;二是 FULL-only pin 与 SWA segment lock 的分离理由;三是 Rust/Python 双实现共享测试时的显式覆盖回退管理方式(NotImplementedError stub + 测试 skip)。对缓存子系统的维护者,本 PR 的 rebase 历史(适配 #38483、#32888、#39318)也是理解项目演化脉络的很好素材。