Prhub

vllm-project/vllm · 标签视图

标签列表

聚合结果

kernel 相关 PR

2026-08-20
性能优化 重要性 8.17 洞察度 6.00

ROCm 融合 DSV4 mHC 与 RMSNorm 内核,吞吐约增 1%

值得精读,尤其是对 kernel 融合接入模式和 ROCm 后端开发有兴趣的工程师。重点关注三点:`_aiter_ops.py` 中 `mhc_fused_post_pre` 的返回值顺序转换与空 token 分支、`model.py` 中融合能力的条件探测(`hc_mult == 4` + hidden size 白名单)、以及 `mhc.py` 各 `forward_hip` 中 AITER/TileLang/torch 的三级回退结构。若后续推广类似融合,建议补上覆盖 fake/meta 与回退路径的单元测试,并考虑把 hidden size 白名单收敛为 AITER 侧的查询接口,避免多处硬编码。

缺陷修复 重要性 6.90 洞察度 5.00

修复 DeepEP v2 下 TRTLLM BF16 的 top_k 错位崩溃

值得快速精读:核心修复只有一行,但它点出了一个重要的数据契约问题——同一 topk_ids 在不同调度路径(eager/cudagraph、DeepEP v2 expanded/普通展开)下形状语义不同,kernel 参数必须跟随实际数据布局而非模型配置。测试重构(`_make_experts` 参数化多后端)也值得借鉴,可作为 MoE kernel 测试的统一模式。

缺陷修复 重要性 5.29 洞察度 4.00

为 benchmark_moe.py 新增 Kimi K3 MoE 参数解析分支

值得快速阅读并纳入 benchmark 工具链。虽然改动很小,但展示了多模态模型 MoE config 解析的两个易踩坑点:参数嵌套在 `text_config` 中、top-k 字段命名差异(`num_experts_per_token` vs `num_experts_per_tok`)。建议后续为 `get_model_params()` 补充针对不同架构 config 的单元测试,固化字段名映射,防止未来架构新增时再次回退崩溃。

缺陷修复 重要性 6.73 洞察度 5.00

Marlin 支持 CT block FP8 的 scale 命名兼容

值得精读。这是一个典型的数据契约兼容修复,展示了如何在共享内核抽象上兼容不同量化框架的 scale 命名差异。重点关注 `_block_scale_name` 的探测逻辑、`process_weights_after_loading` 与原属性名写回的配合,以及测试参数化如何覆盖 auto 与强制 Marlin 两条路径;同时可结合 #52182 与 #52908 理解前向修复与回退方案之间的取舍。

#52987 Revert "[Kernel] Gemma-4 FA4 FP8 Kernel"

原始 PR · 作者 ywang96 · 合并时间 2026-08-20 01:48

重构 重要性 8.24 洞察度 3.00

回退 Gemma-4 FA4 FP8 内核支持,恢复 FA3 默认路径

值得精读,尤其是 Gemma-4 模型支持、flash-attention 集成和推测解码方向的开发者。可以关注两点:一是回退选择了删除配置感知接口、改用 set_current_vllm_config 上下文对象,这种避免 API 扩散的做法可复用;二是 _copy_target_kv_scales 连同 FP8 KV scale 共享修复一起被移除,说明该问题在 MRV2 阶段被有意搁置。若团队计划重新引入 FA4,建议先建立覆盖 SM90 FP8 KV 与 MTP 的回归测试基线。

#48918 [CT] Support Humming for WNA16 MoE

原始 PR · 作者 yiliu30 · 合并时间 2026-08-20 00:31

功能 重要性 8.28 洞察度 6.00

为 CT WNA16 MoE 开启 Humming 后端,支持子字节位宽

值得精读。重点关注三类设计决策:用 Fraction + ceil 处理 sub-byte 打包维度、Humming 支持判定如何与权重 key 数据契约结合、以及 torch.dtype 与 ScalarType 统一字符串化的处理方式。同时值得学习 review 中从 mock 测试演进到 e2e 测试的过程。

缺陷修复 重要性 6.28 洞察度 5.00

修复 Triton 融合共享专家对齐计数,解决 MoE 精度崩溃

建议精读本 PR,它揭示了一个关键的数据契约细节:融合共享专家后,物理专家数可能与 global_num_experts 不一致。值得关注的设计决策是:在无 expert map 时使用实际权重行数,有 expert map 时保持原逻辑,这平衡了正确性与 EP 兼容性。同时,文档或注释可增强对专家计数语义的说明。

2026-08-19
缺陷修复 重要性 7.70 洞察度 5.00

修复非 AMX CPU 上 GDN conv 回退慢路径,启用 C++ 内核

值得精读。核心看点是“门控条件与内核真实指令依赖对齐”这一 bug 的定位方法:C++ 内核用 VDPBF16PS 而非 AMX tiles,却被 `is_amx` 挡在门外。配套的 float32 state、SD 布局、权重预打包三处同步放宽,展示了平台级功能开关需要端到端一致的典型模式;新增 fp32 oracle 测试的断言设计也值得借鉴。