多机推理集群的互联选择:以太网、IB 与 RoCE 实测对比
在两节点 8 卡集群上对比三种互联方式在张量并行推理中的实际表现,以及什么规模下值得上 InfiniBand。
张量并行对互联带宽极其敏感。模型被切到多张卡上之后,每一层都要做 All-Reduce,通信量随层数和隐藏维度增长。互联选错,加卡反而更慢。
测试环境
两节点,每节点 4 卡,模型按 TP=8 切分。三种互联方式:
- 25GbE 以太网,交换机中转
- 100Gb RoCE v2,PFC 无损配置
- 200Gb InfiniBand HDR,SHARP 关闭
测试负载是固定的 2K 输入 / 512 输出,batch 16。
结果
| 互联 | 单节点 TP=4 | 跨节点 TP=8 | 跨节点效率 |
|---|---|---|---|
| 25GbE | 100% | 41% | 差 |
| 100Gb RoCE | 100% | 78% | 可接受 |
| 200Gb IB | 100% | 94% | 好 |
“跨节点效率”以单节点 TP=4 的吞吐为基准。25GbE 下跨节点几乎砍掉一半吞吐——通信完全盖过了计算收益。
为什么以太网吃亏
All-Reduce 是同步操作,最慢的那条链路决定整体速度。以太网的问题不只是带宽,还有:
- 缺少内核旁路,每包都要过协议栈,延迟高
- 拥塞控制靠 PFC,配置不当容易出现 HOL 阻塞
- 缺少集合通信硬件卸载
RoCE 调好 PFC 和 ECN 后能接近可用,但运维复杂度明显上升。IB 的差距主要来自硬件级集合通信和更低的固有延迟。
什么规模值得上 IB
我的判断标准:
- 单节点内:NVLink 覆盖,不用考虑
- 2~4 节点,TP 跨节点:100Gb RoCE 是性价比拐点
- 8 节点以上,或需要 EP(专家并行):IB 的收益开始明显
- MoE 大模型:EP 的 all-to-all 流量模式对网络更苛刻,基本必须 IB
如果只是做流水线并行(PP),节点间只需要传激活值,对带宽要求低得多,普通以太网就够。
一个容易忽略的点
跨节点 TP 时,NCCL 的拓扑检测很关键。默认配置有时会选错路径,比如绕交换机而不是走直连。上线前用 nvidia-smi topo -m 和 NCCL 的调试日志确认实际路径,比盲目调参数有效。
结论
如果预算有限又要跨节点做 TP,100Gb RoCE 是合理选择,前提是愿意投入时间调无损网络。规模上到 8 节点或者要跑 MoE,IB 的溢价是值得的。25GbE 做跨节点张量并行基本没有意义。