快速结论:该报错通常出现在 vLLM 多节点(2 节点及以上)大规模张量并行(如 TP=16)启动时的分布式初始化阶段,各 rank 在 Gloo barrier 中互相等待直至超时。优先排查是否由跨节点场景误入对称内存(symmetric memory) rendezvous 逻辑引起,可先尝试使用 --disable-custom-all-reduce 参数绕过,并关注修复 PR #53253。
适用环境:vLLM(0.26.1rc1.dev148 至 0.27.1 及更新 main 分支版本);多节点(≥2)环境,节点间无 NVLink(仅 InfiniBand 互联);已在 2×8 H100 (80GB) 和 4×4 RTX 4090 拓扑上复现。
最快修复方案:暂无对所有用户确认的一步修复方案。在 Issue 验证中,对受影响的版本使用 --disable-custom-all-reduce 启动参数可绕过问题(在 4×4 RTX 4090 上验证有效);修复该问题的 PR #53253 已在原始 2×8 H100 拓扑上通过 A/B 验证,可尝试应用该补丁或等待其合入后的版本。
注意事项:--disable-custom-all-reduce 会禁用自定义全规约优化,可能影响跨节点通信性能。PR #53253 的最终防护要求更严格(Blackwell 级算力、PyTorch 本地多播支持及 CPU 进程组一致性判断),仅适用于修复此特定回归。Issue 中有用户反馈在 B200 集群上尝试多个版本及该补丁后问题依旧,说明该修复可能未覆盖所有硬件场景,需进一步排查。
问题场景
用户在使用 vLLM 的 Ray 分布式执行器,于 2 节点(每节点 8× H100 80GB)上以 TP=16 启动 DeepSeek-R1 (FP8) 模型推理服务时触发。所有 16 个 rank 均正常启动,但在分布式初始化阶段,in_the_same_node_as() 内部的 Gloo barrier 永远无法完成,进程空闲 30 分钟后因 Gloo TCP 超时崩溃。相同配置在单节点上运行正常,故障仅在多节点且节点间无 NVLink 互联(仅 InfiniBand)时出现。
报错原文
RuntimeError: Application timeout caused pair closure
[.../gloo/transport/tcp/unbound_buffer.cc:78] Timed out waiting 1800000ms for recv operation to complete
原因分析
根据 Issue 中的二分定位,这是一个回归问题(0.26.1rc1.dev78 正常,0.26.1rc1.dev148 开始故障)。初步调查指向 PR #50000(合入提交 aeeb36b1f),该 PR 移除了之前多节点 CustomAllreduce 的禁用/提前返回逻辑,新增了 world size 16 支持,并允许多节点组进入 _init_mnnvl_buffer(),后者会调用 torch_symm_mem.rendezvous()。后续独立验证确认,挂起时各 worker 均阻塞在 torch.distributed._symmetric_memory.rendezvous → CustomAllreduce._init_mnnvl_buffer 路径上,且该函数可能因各 rank 对是否支持对称内存的判断不一致而进入死锁。这可能是因为 in_the_same_node_as 的调用时机或到达 barrier 的 rank 集合发生了变化,而非函数本身代码变更。
环境排查
- vLLM 版本:0.26.1rc1.dev148 及之后版本、v0.27.0、v0.27.1 均受影响;0.26.1rc1.dev78 及更早版本、v0.26.0 正常。
- PyTorch:2.13.0+cu130(Issue 中二分对比时锁定)。
- CUDA:13.0 工具链(同上,锁定验证)。
- GPU:2 节点 × 8× H100 (80GB) 或 4 节点 × 4× RTX 4090(均为无跨节点 NVLink,仅 InfiniBand 互联)。
- 相关依赖:
torchvision、flashinfer-python、flashinfer-cubin等已锁定验证,确认非导致因素。 - 启动参数:重点关注
--tensor-parallel-size 16及--disable-custom-all-reduce的效果差异。
解决步骤
- 临时规避(可优先尝试):在启动命令中加入
--disable-custom-all-reduce参数。此方法在 4×4 RTX 4090 跨节点 TP=16 场景验证可通过启动,但需注意会牺牲自定义全规约的潜在性能优化。 - 长期修复:应用 PR #53253(分支头
3df2cbe83183)的补丁。该 PR 通过三重防护机制(Blackwell 级算力判断、PyTorch 本地多播支持判断、CPU 进程组MIN一致性共识)确保所有 rank 在跨节点非 Blackwell 硬件上不进入对称内存 rendezvous,而回退到 NCCL 通信。 - 拉取补丁方法:
git fetch origin pull/53253/head:testing-pr-53253然后切换到该分支重新构建并测试部署。
- 如果上述方法均无效(例如 B200 集群场景,Issue 中有用户反馈依旧失败),建议降级到已知正常版本 v0.26.0 作为临时方案,或继续等待后续官方修复,并在新 Issue 中补充硬件与复现信息。
验证方法
启动相同配置的 vLLM 服务,观察是否能正常完成模型初始化并进入服务就绪状态。若问题复现,将在约 30 分钟超时后看到 Gloo TCP 报错;若修复成功,初始化应快速正常完成,且日志中不再出现挂起在 rendezvous 的堆栈。在 PR #53253 的验证中,通过了跨节点 TP=16 启动/稳定性测试 3/3 次,可参考此标准进行确认。建议在修复后观察并对比首次 token 生成时间,确认无额外性能回退。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


![[Bug/Perf]: hybrid-SWA prefix caching collapses to zero for ALL requests in multi-session round-robin at ~25% pool occupancy (Gemma-4-31B; e](https://www.chat-gpts.plus/wp-content/uploads/2026/09/48435-ed9f024c-768x403.jpg)