多台 GPU 接到同一台交换机,不会自动得到线性的多机推理加速。要先回答:瓶颈在单卡算力、并行切分方式,还是 节点间通信?在没测过 RDMA 与 NCCL 之前就买更贵的交换机,往往花冤枉钱。
下文针对一个常见规划场景:约 6 台 DGX Spark、现有 100G fabric、多机效率不理想、评估 200G RoCE(交换机端口 6~8 个即可)。性能数字以现场为准,这里给的是 测量顺序与选型检查项。
拓扑与前提
1 | +------------------+ |
| 项目 | 说明 |
|---|---|
| 节点 | 6 台 DGX Spark(网卡型号、端口数以实机为准) |
| 现状 | 100G 交换机,多机扩展不佳 |
| 目标 | 判断是否值得升级到 200G RoCEv2 |
| 必查 | NIC 速率、RoCE 支持、驱动/固件、MTU 端到端、无损(PFC/ECN)策略 |
产品宣传的最高速率 ≠ 你机架上实际协商的链路;先 ethtool 再谈预算。
并行方式决定网络压力
| 策略 | 通信特点(简述) |
|---|---|
| 数据并行 | 多副本/多请求时相对温和 |
| 张量并行 | 层内频繁交换中间结果,对带宽与延迟敏感 |
| 流水线并行 | 阶段间传递激活,依赖切分方式 |
| 专家并行(MoE) | token 路由跨节点,负载不均时易打满链路 |
同一套硬件,换并行策略,网络需求可以差一个数量级。不能只用参数量或单机显存推断要不要 200G。
100G 是端口标称速率;有效吞吐还受包长、PCIe、CPU、拥塞、NCCL 算法与是否真走 RDMA 影响。
RoCE 与无损以太(概念)
| 术语 | 作用 |
|---|---|
| RDMA | 降低 CPU 拷贝与协议栈开销 |
| RoCEv2 | 在 UDP/IP 上跑 RDMA(是否跨三层取决于组网) |
| PFC | 按优先级暂停,减轻无损队列丢包 |
| ECN | 拥塞标记,配合端侧调节 |
| Jumbo Frame | 需路径上 MTU 一致 |
「交换机支持 200G」不够,还要确认 固件、队列、PFC/ECN 配置与网卡侧匹配。PFC 配错可能带来队头阻塞。
阶段一:链路与 RDMA 基线
每台节点:
1 | ip -br link |
检查:协商速率、CRC/丢包、驱动固件是否齐、MTU 是否全路径一致。
两节点间可用 perftest 的 ib_write_bw(设备名、GID、RoCE 参数以本机 --help 为准):
1 | # 接收端 |
RDMA 带宽 ≠ 推理吞吐,但能判断「线有没有打满、配置有没有明显错误」。
阶段二:NCCL 集合通信
使用与运行时 版本匹配 的 nccl-tests,在目标容器/调度环境里跑 all_reduce_perf 等。
关注:
- 2 节点 vs 6 节点带宽与延迟曲线;
- 消息大小从小到大是否出现拐点;
- NCCL 是否绑定预期网卡(未静默回退 TCP);
- 加节点后通信时间是否吃掉算力收益。
多机常见问题排查方向(名称因版本而异,以官方文档为准):
1 | export NCCL_DEBUG=INFO |
不要在生产长期开最高级别 NCCL_DEBUG。
阶段三:真实推理对比
固定:模型版本、量化、上下文、输入/输出 token 数、并发、软件栈,再比:
- 单机吞吐 / P95 延迟
- 多机(当前 100G)
- (若已试点)200G RoCE
| 场景 | 网络 | 节点 | RDMA 实测 | NCCL | 推理吞吐 | P95 |
|---|---|---|---|---|---|---|
| A | 100G | 2 | 实测填 | 实测填 | 实测填 | 实测填 |
| B | 100G | 6 | ||||
| C | 200G RoCE | 6 |
交换机选型表(询价前自填)
| 项 | 问题 |
|---|---|
| 端口数 | 6 台是否每台 1 口?要不要冗余/存储网? |
| 速率 | 单口 200G 模式是否受固件支持 |
| RoCE | PFC/ECN、缓冲、队列是否与网卡文档一致 |
| 光模块/线缆 | DAC/AOC/光模块与距离 |
| 成本 | 含线缆、备件、支持与改造成本 |
若 100G 上 RDMA 已远低于线速,先修配置;若 RDMA 正常而 NCCL/推理仍差,再查 并行策略与算子,不一定靠升带宽解决。
常见误区
- 端口 200G = 应用 200Gb/s — 协议与实现都会打折。
- 只开 PFC = RoCE 配完 — 优先级、ECN、MTU、两端队列要成套。
- RDMA 满速 = 推理线性扩展 — 还有同步、调度、MoE 路由等。
- 先买交换机再测 — 最贵;应先完成上表 A/B 测量。
总结
六台 DGX Spark 要不要上 200G RoCE,取决于 并行方式 + 实测的 RDMA/NCCL/推理三层数据,而不是交换机 datasheet。推荐路径永远是:链路 → NCCL → 业务负载;端口数量按实际接线算清 6 还是 8,再谈采购。
设备型号与 RoCE 配置以厂商文档与现场兼容列表为准。