View on GitHub

LLM Dev Highlights

« Back to vLLM Reports

vLLM 开发动态报告 - 2026-02-23

时间窗口: 2026-02-23 11:31 (UTC+8) ~ 2026-02-24 11:31 (UTC+8) 数据统计: 新 Issue 22 | 关闭 Issue 20 | 新 PR 70 | 合并 PR 31 | 关闭未合并 PR 23


📊 每日开发状态摘要

本周期内,vLLM 项目保持高速开发迭代,共处理了超过 90 个 Issue 和 PR。开发焦点集中在 模型支持扩展(如 Qwen3.5 NVFP4、Ring 2.5)、性能优化(如 MoE 内核、GDN 解码)以及 CI/CD 稳定性(尤其是 AMD 平台)上。同时,AMD 平台支持核心架构演进(如 Model Runner V2)的相关讨论和修复是今日的突出看点。

🎯 AMD/ROCm 生态相关动态

本周期 AMD 生态相关活动活跃,涉及硬件支持、性能优化和 CI 稳定性等多个方面。

新增 Issue

  1. #35089: [RFC]: In-Tree AMD Zen CPU Backend via zentorch
    • 贡献者: amd-lalithnc (AMD 员工)
    • 概述: 提出将 AMD Zen CPU 后端 (基于 zentorch) 集成到 vLLM 树内的详细方案。旨在为 AMD CPU 提供一等公民支持,保持与外部插件在性能和功能上的平价。
    • 技术细节: 设计包含平台检测、运行时 GEMM 分发、编译时图优化 pass (如 embedding 替换和 11 种算子融合模式) 以及 CustomOps 的使用。
    • 讨论热度: 高。核心开发者 ProExpertProg 参与讨论,提出了关于利用 vLLM IR 进行内核选择、编译时与运行时优化分离、以及自定义 pass 注册系统改进等问题,触及了 vLLM 未来架构演进的核心议题。
    • 影响: 若被采纳,将为 vLLM 在 AMD CPU 服务器上提供强大的原生推理能力,扩大其硬件生态。
  2. #35163: [Bug]: AMD docker image still using torch 2.9…
    • 概述: 指出 AMD CI 的 Docker 镜像仍在使用的 PyTorch 2.9,而 requirements/rocm-build.txt 已指定 2.10.0,导致依赖 PyTorch 2.10 新特性的 PR 被阻塞。
    • 影响: 阻碍了内核迁移等开发工作,是 AMD 平台与主开发流同步的一个阻塞点。
  3. #35126, #35128, #35130, #35132, #35133: 一系列 AMD CI 失败
    • 概述: 报告了在 MI355 等 AMD 硬件上多个测试组 (TG) 的失败,涉及 MoE 内核、语言模型、分布式 LoRA 测试、跨节点测试等。
    • 共同点: 多数由 AMD 员工 AndreasKaratzas 创建/跟进,反映了团队在确保 AMD 平台测试信号稳定和与上游保持一致的持续努力。
    • 特别关注: #35132 提到了对 CrossLayer KV layoutNixlConnector 新测试的评估,表明 AMD 平台正在跟进 vLLM 最前沿的 KV 缓存管理特性。

新增/合并 PR

  1. #35152: [ROCm][CI] Disable skinny GEMMs in language model standard tests… (Open)
    • 贡献者: AndreasKaratzas
    • 内容: 在 ROCm 语言模型测试中默认禁用 VLLM_ROCM_USE_SKINNY_GEMM,以解决因其使用 atomicAdd 导致的浮点非确定性,从而修复准确性测试失败。
    • 影响: 提升 AMD 平台 CI 测试的确定性和稳定性。
  2. #35164: [CI][AMD][BugFix][P/D] Skip test_moriio_connector.py tests if IB verbs is not available (Open)
    • 贡献者: rasmith (推测为 AMD 员工,处理 MORI KV connector)
    • 内容: 在测试机器不支持 InfiniBand 时跳过相关测试,为 MORI KV connector 未来支持 TCP 后端做准备。
    • 关联: 与新增 Issue #35165 ([Feature]: Add TCP support to MORI KV connector) 目标一致。
  3. #35144: [ROCm] Enable GPTQMarlinConfig on ROCm to use choose_mp_linear_kernel (Open)
    • 贡献者: mgehre-amd (AMD 员工)
    • 内容: 允许在 ROCm 上选择 GPTQMarlinConfig,从而使 GPTQ 模型能够使用 choose_mp_linear_kernel 框架(如 Conch 内核),而非局限于旧的 ExLlama v2 路径。修复了 Conch 内核处理对称量化的问题。
    • 影响: 统一了 ROCm 与 CUDA 平台在量化内核选择上的路径,并为 AMD 平台引入了性能更优的新内核。
  4. #35093: [ROCm] add tuned moe_wna16_triton kernel configs for CDNA4 (Open)
    • 贡献者: amd-asalykov (AMD 员工)
    • 内容: 为 CDNA4 架构 (MI350X/MI355X) 添加调优后的 MoE 内核配置,旨在提升 Kimi K2.5 等模型在 AMD 最新硬件上的性能。
    • 影响: 针对性优化 AMD 最新 GPU 的 MoE 性能。
  5. #35103: [Bugfix][Hardware][AMD] Gate FP4 BMM on gfx950 to fix MI300X crash (Open)
    • 内容: 将 FP4 BMM 特性限制在 CDNA4 (gfx950) 上,防止其在 MI300X/MI325X (gfx942) 上被错误启用导致崩溃,确保优雅回退到 FP8。
    • 影响: 修复了 MXFP4 量化在旧款 AMD GPU 上的兼容性问题。

已合并 PR

总结: 本周期 AMD 生态动态显示,AMD 团队正从 硬件兼容性修复(MI300X FP4)、性能深度优化(CDNA4 MoE 内核)、框架对齐(启用 GPTQMarlinConfig)和 CI 稳定性保障 多个维度,系统性地推进 vLLM 在 AMD 全栈硬件上的成熟度和性能。

💬 高热度讨论分析

  1. Issue #35089: [RFC]: In-Tree AMD Zen CPU Backend via zentorch
    • 核心议题: 是否及如何将 AMD Zen CPU 优化后端集成到 vLLM 主代码库。
    • 不同观点:
      • 提案方 (amd-lalithnc): 主张“树内”集成,仅将核心优化内核放在外部 zentorch 库,vLLM 负责平台调度、优化 pass 编排等,以提供开箱即用的一等公民体验。
      • 核心开发者 (ProExpertProg): 欢迎贡献,但提出关键架构性质询:
        • 询问 vLLM IR 是否缺乏所需能力,暗示应基于正在快速发展的 vLLM IR 进行内核选择,而非依赖编译时的 Inductor pass 替换算子。
        • 强调内核选择应独立于编译,以保持即时编译与预编译的一致性。编译 pass 应仅用于优化变换。
        • 寻求关于自定义 pass 注册系统痛点的反馈。
    • 争议焦点: 集成策略的边界划分——多少逻辑应放在树内,以及如何与 vLLM 正在演进的 IR 和编译基础设施协同。
    • 当前状态: 讨论进行中,是涉及 vLLM 未来平台抽象和扩展架构的重要对话。
  2. Issue #35150: [Feature]: Support NVFP4 Checkpoint of Qwen3.5
    • 核心议题: 社区请求支持 NVIDIA 发布的 Qwen3.5 397B NVFP4 量化模型。
    • 讨论过程: 用户 ywang96 提出需求后,核心贡献者 Isotr0py 迅速响应表示可以查看。ywang96 补充说明另一位贡献者 vadiklyutiy 也在处理。随后,PR #35156 被创建以修复该模型加载的一个具体问题。
    • 观察: 展示了社区需求到开发者响应的快速闭环,以及社区内部工作的自发协调。
  3. Issue #35163: AMD docker image still using torch 2.9…
    • 核心议题: AMD CI 环境与主开发分支的 PyTorch 版本不一致,阻塞了其他开发工作。
    • 观点: 报告者 mikaylagawarecki 明确指出这是阻碍其内核迁移 PR 的 bug。被提及的维护者 gshtras 等需要评估升级的影响。
    • 状态: 问题刚提出,尚未有解决方案讨论,但属于亟待解决的依赖性问题。
  4. PR #35082: [Bugfix] Fix DCP + FA3 crash due to missing num_splits in _forward_with_dcp
    • 核心议题: 修复 Qwen3.5 等模型在使用解码上下文并行 (DCP) 和 FlashAttention 3 时的崩溃。
    • 讨论过程: 作者 haosdent 给出修复。测试者 ehfd 验证有效,但同时暴露了 DCP 与 Mamba 注意力不兼容、以及与 Prefix Caching 在混合模型中的限制等更深层次问题。
    • 观点总结:
      • 修复者: 提供针对性补丁。
      • 测试者/用户: 验证补丁,并揭示相关特性组合的边界条件,引发关于“Prefix Caching + PP”与“DCP + TP”在长上下文代理场景下孰优的实用讨论。
    • 结论: PR 解决了直接崩溃问题,但引发了关于复杂特性(DCP, Hybrid模型, Prefix Caching)兼容性的更广泛讨论。

🔥 热门话题与趋势分析

  1. 模型支持与性能优化:
    • Qwen3.5 系列: 成为焦点,涉及 NVFP4 量化支持 (#35150, #35156)、超长上下文 YaRN 缩放 (#35056, #35080)、FlashInfer 后端精度问题 (#35138)、以及部署配方更新请求 (#35154)。
    • 新模型集成: Ring 2.5 (#35102)、Llama 4 Vision LoRA (#35147) 等工作在进行中。
    • 解码优化: GDN (#35149)、Mamba (#35157) 等特定注意力机制的优化被单独提出。
  2. CI/CD 与平台稳定性:
    • AMD CI: 大量 Issue (#35126, #35128, #35130, #35132, #35133) 反映在 MI355 等新硬件上达到测试稳定性仍需努力。
    • 通用 CI 失败: 如融合测试 (#35134)、音频模型参考实现问题 (#35140) 等,显示了维护庞大测试集的挑战。
  3. 安全性与文档:
    • 出现了关于安全日志 (#34947)、数据合规 (#35005) 的讨论(虽已关闭),以及新增的 PR 专注于安全风险文档 (#35139) 和主机头验证 (#35160),表明项目开始更多关注企业级部署的安全需求。
  4. 音频与多模态处理:
    • 音频转录的格式支持 (#35109)、时间戳修复 (#35159)、以及处理器缓存兼容性 (#35111) 等问题被修复,体现了对多模态特性完善度的追求。

🛠️ 重点技术变更

  1. PR #35089 (RFC): In-Tree AMD Zen CPU Backend via zentorch
    • 技术解读: 这是一份完整的设计提案,旨在为 vLLM 添加一个高性能的 AMD CPU 原生后端。它不只是一个优化,而是涉及平台检测、运行时分发、编译时优化图变换的全栈集成方案。
    • 影响: 若实施,将显著扩展 vLLM 的部署场景至纯 AMD CPU 服务器或混合架构环境,提升其作为异构计算平台的价值。
  2. PR #35162: [Model Runner V2] Enable piecewise CUDA graphs for pipeline parallelism
    • 技术解读: 为 V2 模型运行器添加了流水线并行 (PP) 下的片式 CUDA 图支持。解决了此前 PP 必须回退到 eager 模式的性能瓶颈。
    • 影响: 进一步释放 Model Runner V2 的性能潜力,使得 TP+PP 等复杂并行策略能更好地利用 CUDA 图优化,是 V2 走向成熟和完善的关键一步。
  3. PR #34874: [Bugfix] Fix prefix caching for Mamba ‘all‘ mode (Nemotron models)
    • 技术解读: 修复了混合模型(如 Nemotron)中 Mamba 注意力层在“all”模式前缀缓存下的元数据缓存 bug。该 bug 导致 CUDA 图重放时读取了错误的块索引,产生 NaN。
    • 影响: 解决了影响模型正确性的严重问题,确保了 Mamba 类模型在使用高级缓存功能时的可靠性。
  4. PR #34924: [Perf] Enable FlashInfer DeepGEMM swapAB on SM90 by default
    • 技术解读: 将 FlashInfer DeepGEMM 的 swapAB 优化路径在 SM90 (Hopper) 及以上架构默认启用。该优化能带来明显的低批次性能提升。
    • 影响: 为 H100、H200、B200 等用户带来“免费”的性能提升,体现了对主流高性能硬件持续进行默认优化的思路。
  5. PR #35135: [Bugfix] Fix lora_ids in FusedMoE LoRA test
    • 技术解读: 修复了 FusedMoE LoRA 测试中 expert_ids 填充值错误的问题(应为 -1 而非 0),并收紧了断言条件。
    • 影响: 看似是测试修复,实则纠正了底层内核接口的一个潜在误解,确保了 MoE LoRA 功能实现的正确性,对支持专家混合模型的微调至关重要。

📈 开发活跃度观察

💡 值得关注的问题

  1. AMD Zen CPU 后端决策 (#35089): 该 RFC 的走向将定义 vLLM 对异构 CPU 支持的技术路径,其讨论值得所有关心 vLLM 平台演进的开发者关注。
  2. AMD CI 的 PyTorch 版本升级 (#35163): 此问题若不解决,将阻碍 AMD 平台与主分支新特性的同步,是一个关键依赖项更新。
  3. GDN 解码路径优化 (#35149): 作为一个新提出的性能优化项,关注其后续设计和实现,可能为特定模型架构带来显著解码提速。
  4. 线性注意力(Mamba)状态管理 (#35157): 该 PR 修复了 Mamba 状态在缓存重置时的清理问题,是保障线性注意力模型在复杂调度下稳定运行的重要补丁。
  5. 多节点测试脚本问题 (#35129): 反映出 CI 脚本中可能存在的语法或环境问题,虽已由 PR #35131 尝试修复,但多节点测试的健壮性仍需持续观察。

📋 附录:详细数据列表

新增 Issue

已关闭 Issue

新增 PR

已合并 PR

关闭但未合并的 PR