Prhub

#46365 [Bugfix][CPU] Fix CPU model runner v2

原始 PR 作者 bigPYJ1151 合并时间 2026-06-22 22:52 文件变更 1 提交数 1 评论 0 代码增减 +5 / -0

执行摘要

修复 CPU model runner v2 的 pin_memory 缺失问题

PR body 指出目的是修复 broken CPU model runner v2 test。由于 CPU 上没有 CUDA 支持,torch.Tensor.pin_memory 会失败,因此需要提供一个 no-op 补丁。

该 PR 简单明确,无需精读。但值得关注 CPU 后端的补丁模式,了解如何通过 monkey-patch 适配无 CUDA 环境。

讨论亮点

该 PR 没有 review 评论和 issue 讨论,仅有 jikunshang 的批准。

实现拆解

vllm/v1/worker/cpu/shm.py 中新增 fake_pin_memory 函数,定义为直接返回 self(即 no-op)。随后在 torch 补丁部分添加 torch.Tensor.pin_memory = fake_pin_memory。该文件是 CPU model runner v2 的 torch API 补丁模块,用 no-op 替代 CUDA 相关操作使代码在 CPU 上正常运行。

文件 模块 状态 重要度
vllm/v1/worker/cpu/shm.py 模型运行器 modified 5.13

关键符号

fake_pin_memory

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

风险极低:变更仅 5 行新增,且为简单的 no-op 函数,不会影响 GPU 或其他后端。但若将来 CPU 后端需要实际 pin_memory 功能,该补丁需被替换。

影响范围小,仅修复 CPU model runner v2 的测试失败,使 CPU 后端在调用 pin_memory 时不会崩溃。

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论