乐于分享
好东西不私藏

自制AI算力网络(GPU集群)——上篇

自制AI算力网络(GPU集群)——上篇

动手DIY AI算力网络(GPU集群)搭建教程(适合家庭/小规模实验室,预算从几千到几万不等)。
AI算力网络本质上是多GPU/多节点集群,用于分布式训练(如大模型微调)、并行推理或本地LLM加速。DIY重点在于硬件组装 + 网络互联 + 软件配置(NCCL + PyTorch + Slurm/ Kubernetes)。
01
规划阶段:确定规模和预算
DIY AI 算力网络的第一步,不是马上买显卡,而是先明确三个问题:准备跑什么模型、需要多少显存、能承受多大功耗和预算。
1.1 入门级:单机多卡方案
入门级方案适合家庭实验室、小型科研团队或个人开发者,一般采用1—2 台主机,每台配置 2—8 张 GPU。
这类方案适合:
  • 本地大模型推理;
  • 小规模 LoRA / QLoRA 微调;
  • 多卡并行推理;
  • 小模型训练实验;
  • RAG、本地知识库、Agent 系统测试。
显存规模通常在48GB—192GB之间。例如使用 2 张 RTX 4090,可获得 48GB 总显存;使用 4 张 RTX 3090/4090,则可达到 96GB 显存级别,已经可以支撑不少 7B、13B、34B 模型的本地部署与微调。
1.2 进阶级:多节点 GPU 集群方案
进阶级方案适合小型实验室、创新团队或需要做分布式训练的用户,一般采用2—8 台计算节点,每个节点配置 2—8 张 GPU,再通过高速网络连接起来。
这类方案适合:
  • 多节点分布式训练;
  • 大模型微调;
  • 并行推理服务;
  • 多用户共享算力;
  • Slurm / Kubernetes 集群调度实验;
  • NCCL、RDMA、RoCE 等高性能通信测试。
多节点方案的关键不只是 GPU 数量,更重要的是节点间网络带宽和通信延迟。如果网络太慢,GPU 等待通信的时间会显著增加,整体训练效率会大幅下降。
1.3 预算参考:从几千元到几万元不等
可以按照三个档位来理解:

档位

典型配置

适合场景

低配方案

RTX 3090 / 4090 + 二手服务器主机

本地推理、小模型微调

中配方案

EPYC / Ryzen 主机 + 多张消费级或企业级 GPU + 10G / 40G 网卡

多卡训练、小型实验室

高配方案

多节点 GPU 服务器 + 40G / 100G IB 或 RoCE 网络

分布式训练、多人共享算力平台

如果预算有限,二手 RTX 3090仍然是性价比较高的选择,因为它有 24GB 显存,适合本地大模型推理和轻量微调。如果追求能效和新平台兼容性,RTX 4090 性能更强,但价格和供电散热要求也更高。
1.4 功耗与散热:这是最容易被低估的部分
DIY GPU 集群最容易踩坑的地方不是装系统,而是供电和散热。
以单节点 8 卡为例,如果每张 GPU 功耗在 300W—450W 之间,仅 GPU 部分功耗就可能达到2400W—3600W。再加上 CPU、主板、内存、硬盘、风扇和电源损耗,整机功耗可能超过普通家庭电路的承载能力。
因此需要重点关注:
  • 是否需要独立电路;
  • 电源功率是否足够;
  • 机箱风道是否合理;
  • 是否需要开放式矿架或服务器机箱;
  • 房间空调是否能承受持续热负荷;
  • 是否存在噪声、灰尘、安全隐患。
对于家庭环境,建议不要一开始就上 8 卡满配,可以先从单机 2 卡或 4 卡起步,稳定运行后再扩展。
1.5 两个核心指标:显存和网络
规划 AI 算力网络时,最关键的是两个指标:GPU 显存总量和节点间网络带宽。
第一,显存决定能跑多大的模型
GPU 显存越大,能加载的模型越大,能处理的上下文越长,微调时的 batch size 也更灵活。
简单理解:
  • 24GB 显存:适合 7B、13B 模型推理和轻量微调;
  • 48GB—96GB 显存:适合更大模型量化推理、多卡切分;
  • 128GB 以上显存:可以尝试 70B 级别量化模型部署;
  • 192GB 以上显存:更适合多模型并行、大上下文推理或分布式微调。
第二,网络决定多节点效率
如果只是单机多卡,主要依赖 PCIe、NVLink 或主板拓扑;如果是多节点集群,网络就变成瓶颈。
最低建议使用:
  • 10GbE:入门级多节点互联;
  • 40GbE / 40G IB:更适合训练和并行任务;
  • 100GbE / 100G IB / RoCE:适合较严肃的分布式训练场景。
对于 PyTorch + NCCL 分布式训练来说,网络性能会直接影响 GPU 利用率。GPU 很贵,如果网络太慢,就会出现“显卡在等数据”的情况,整体性价比反而下降。
本章小结
规划阶段可以用一句话概括:
先根据模型规模确定显存需求,再根据节点数量确定网络方案,最后倒推供电、散热和预算。
不要一开始就追求“堆卡”。真正稳定可用的 AI 算力网络,必须同时解决GPU、CPU、内存、存储、网络、电力、散热和软件调度这几个环节。对于家庭和小规模实验室,最稳妥的路线是:
单机 2 卡起步 → 单机 4 卡扩展 → 多节点 10G/40G 互联 → 再升级到 100G IB/RoCE 集群。
02
单节点 / 多 GPU 机架搭建:家庭 DIY 最推荐的起步方案
在完成规模、预算和显存需求规划之后,最适合家庭用户和小规模实验室落地的方案,是先搭建一个单节点多 GPU 机架。相比一开始就做多节点集群,单节点方案结构更简单、调试难度更低、网络依赖更小,也更容易控制预算和风险。
这一阶段可以参考开源社区常见的8-GPU 开放式挂卡方案。它的核心思路是:不追求传统服务器机箱的高密度封闭结构,而是采用开放式机架,把 GPU、主板、电源、风扇、网卡和存储全部以“裸机架”的方式固定起来,优先保证散热、维护和扩展便利性。
2.1 机箱 / 支架:优先选择开放式挂卡架
家庭 DIY 不建议一开始就使用封闭式 4U GPU 服务器机箱,因为它对风道、电源、噪声和散热设计要求较高。更推荐使用塑料或金属开放式挂卡架,尺寸可以参考约3ft × 2ft的开放式平台。
这种结构的优点是:
  • GPU 间距更大,散热压力小;
  • 更容易观察线缆、电源和风扇状态;
  • 便于后期更换显卡、扩展网卡或调整风道;
  • 成本低,几百元到一两千元即可搭建基础支架;
  • 对家庭环境更友好,维护门槛低。
如果预算有限,也可以使用小型金属机柜、矿机架或定制铝型材框架。关键不是外观,而是要确保GPU 固定牢靠、供电线缆不受拉扯、风扇气流能够直接吹到显卡核心区域和背板区域。
2.2 主板 / CPU:核心是 PCIe 通道数量
多 GPU 节点的主板选择,最重要的不是品牌,而是PCIe 插槽数量、PCIe 通道数和稳定性。
如果计划做 4 卡以上,建议优先考虑服务器级或工作站级平台。例如:
  • 支持多 PCIe 插槽的服务器主板;
  • AMD EPYC 平台,例如 EPYC 7002 / 7003 系列;
  • Ryzen Threadripper / Threadripper Pro 平台;
  • 二手服务器平台或工作站平台。
例如,类似MZ32-AR0这类支持多 PCIe 扩展的服务器主板,适合做多卡节点。CPU 方面,可以选择AMD EPYC 7702这类高核心数处理器,也可以根据预算选择更低核心数的 EPYC 或 Threadripper。
需要注意的是,AI 推理和训练中,CPU 并不是越贵越好。对于多数本地推理、小模型微调和多卡测试任务来说,CPU 的作用主要是:
  • 给 GPU 提供足够 PCIe 通道;
  • 负责数据加载、预处理和调度;
  • 支撑多进程、多用户任务;
  • 避免 GPU 等待 CPU 或内存数据。
因此,选型原则可以概括为:
PCIe 通道优先,稳定性优先,核心数够用即可。
2.3 内存:建议 256GB 起步,避免数据加载瓶颈
多 GPU 节点不建议只配 32GB 或 64GB 内存。虽然很多模型主要跑在 GPU 显存里,但系统内存仍然非常重要,尤其是在以下场景中:
  • 加载大模型权重;
  • 数据集预处理;
  • 多进程并行训练;
  • 本地向量数据库;
  • RAG 知识库服务;
  • 多用户共享环境;
  • 大量模型文件缓存和切换。
如果预算允许,建议单节点至少配置256GB DDR4 / DDR5 内存。如果只是 2 卡或 4 卡轻量推理,可以从 128GB 起步;如果是 8 卡节点,256GB 以上会更加稳妥。
内存配置可以参考:

节点规模

建议内存

2 GPU

64GB—128GB

4 GPU

128GB—256GB

8 GPU

256GB—512GB

多用户共享节点

512GB+ 更稳妥

一句话:GPU 显存决定模型能不能放进去,系统内存决定数据和任务能不能顺畅喂给 GPU。
2.4 GPU:优先考虑 24GB 显存卡,3090 / 4090 性价比较高
家庭 DIY 的核心投入就是 GPU。现阶段较常见的选择是二手RTX 3090或RTX 4090,因为它们都具备24GB 显存,适合本地大模型推理、LoRA 微调、多卡并行实验和小型 AI 服务部署。
选择 GPU 时,建议重点看四件事:
  • 显存容量:24GB 是比较实用的起点;
  • 功耗水平:3090 / 4090 单卡功耗都不低;
  • 散热结构:涡轮卡更适合密集部署,开放式三风扇卡需要更大间距;
  • 供电接口:8pin、12VHPWR 等接口需要认真检查线缆和电源适配。
多卡混用是可行的,例如 3090 和 4090 混用,但要注意:
  • 不同 GPU 性能不同,训练时可能出现负载不均;
  • 不同驱动、CUDA、PyTorch 版本要兼容;
  • 分布式训练时通常会受最慢 GPU 影响;
  • 推理服务中可以按 GPU 性能分配不同任务;
  • 混用显卡时功耗和散热更难统一管理。
因此,最稳妥的策略是:
预算有限可以先买 2 张同型号 GPU,稳定后再扩展到 4 张或 8 张。
2.5 电源:多 PSU 方案要重视安全冗余
多 GPU 节点最大的风险之一是供电。单张高性能 GPU 的功耗可能达到数百瓦,8 卡节点的总功耗很容易超过普通家用插座、电线和空气开关的承载能力。
以 8 GPU 节点为例,仅 GPU 功耗就可能达到 2400W 甚至更高。如果再加上 CPU、主板、内存、SSD、风扇和电源转换损耗,总功耗可能逼近或超过 3000W。
因此,建议采用:
  • 多个高功率 PSU;
  • 单个 PSU 1500W+;
  • 品牌电源优先;
  • 使用可靠的电源同步启动适配器;
  • GPU 供电线不要随意一分二;
  • 12VHPWR 线缆必须插紧,避免弯折过度;
  • 给电源保留 20%—30% 冗余。
例如可以采用 Corsair HX1500i 等高功率电源,多个电源分担 GPU 供电。一个常见思路是:
  • 主 PSU 负责主板、CPU、部分 GPU;
  • 副 PSU 负责剩余 GPU;
  • 使用同步启动器让多个电源同时启动;
  • 每个 PSU 的负载尽量均衡。
更重要的是,家庭环境必须关注电路条件。建议使用专用 220V / 30A 电路,不要把 8 卡节点直接接在普通插排上,更不要多个大功率设备共用一路插座。
这里要特别强调:
电源不是“能点亮就行”,而是要能长时间稳定、安全地满负载运行。
2.6 存储:NVMe SSD 放模型,大容量 SATA 放数据
AI 节点的存储建议采用“高速盘 + 大容量盘”的组合。
推荐配置:
  • NVMe SSD:用于系统盘、模型权重、缓存、Conda 环境、Docker 镜像;
  • 大容量 SATA SSD / HDD:用于数据集、日志、备份、归档文件;
如果多用户共享,可以单独规划 /data、/models、/workspace 等目录。
建议至少配置:

用途

推荐配置

系统盘

1TB NVMe SSD

模型缓存盘

2TB—4TB NVMe SSD

数据集盘

4TB—16TB SATA SSD / HDD

多用户共享

可考虑 NAS 或独立存储节点

大模型环境中,模型文件动辄几十 GB 到几百 GB。如果模型、数据集和 Docker 镜像都放在一个小容量系统盘里,很快就会出现空间不足的问题。
比较好的目录规划是:
/├── system        系统与基础环境├── /models       大模型权重├── /datasets     数据集├── /workspace    用户项目├── /docker       镜像与容器数据└── /logs         训练与推理日志
2.7 散热:开放式机架也必须设计风道
很多人以为开放式机架天然散热好,其实不完全对。开放式结构只是方便散热,但如果没有风道,GPU 之间仍然可能互相烘烤。
推荐散热方式包括:
  • 大尺寸轴流风扇正面送风;
  • 箱式风扇直接吹 GPU 背板;
  • 保持 GPU 间距;
  • 风从一侧进入,另一侧排出;
  • 避免热风在房间内循环;
  • 夏季要考虑空调持续制冷能力;
  • 定期清理灰尘。
如果使用 RTX 3090,要特别关注显存温度,因为部分 3090 的 GDDR6X 显存散热压力较大。长时间训练时,显存温度过高可能导致降频甚至不稳定。
家庭环境下最实用的方案是:
开放式机架 + 大风扇正吹 GPU + 房间空调 + 温度监控。
如果进一步升级,可以考虑水冷或分体式冷却,但 DIY 复杂度和漏液风险也会明显增加。对于第一套家庭 AI 节点,不建议一开始就上复杂水冷。
2.8 网络:单节点也要预留多节点扩展能力
即使一开始只搭建单节点,也建议提前考虑未来多节点扩展。因此网络接口不能只依赖普通千兆网口。
建议每个节点至少配置:
  • 1 张 10G 网卡,作为入门级高速互联;
  • 条件允许可上 40G 网卡;
  • Mellanox ConnectX 系列是常见选择;
  • 多节点训练建议使用独立交换机;
  • 管理网络和训练网络最好分开。
典型网络结构可以分为两层:

网络类型

用途

管理网络

SSH、远程管理、Web 服务、文件访问

训练网络

NCCL 通信、分布式训练、节点间高速数据交换

如果只是单机多卡,本地 PCIe 通信是核心;但如果未来扩展到 2—8 台节点,网络带宽就会迅速变成瓶颈。10G 可以入门,40G 更适合训练,100G IB / RoCE 更适合严肃分布式训练。
2.9 8-GPU 单节点组装步骤示例
下面以一个开放式 8-GPU 节点为例,给出基本组装流程。
第一步:搭建开放式挂卡架
先安装金属或塑料支架,确保底部平整、结构稳定。GPU 需要单独固定,不能只靠 PCIe riser 线悬挂。可以用小机柜、矿机架、铝型材框架或定制支架完成固定。
重点检查:
  • GPU 是否固定牢靠;
  • 主板是否有绝缘垫片;
  • 电源是否有独立固定位置;
  • 风扇是否能正对 GPU;
  • 线缆走线是否不会压迫显卡和风扇。
第二步:安装主板、CPU 和内存
将服务器主板固定到机架底板或主板托盘上,然后安装 CPU、散热器和内存条。
注意事项:
  • CPU 散热器要适配服务器主板孔位;
  • 内存尽量按主板推荐通道插满;
  • 服务器主板通常需要特定供电接口;
  • 第一次点亮时只插最小硬件组合,便于排错。
建议先完成裸机点亮测试,再继续安装 8 张 GPU。
第三步:安装 NVMe SSD 和网卡
安装系统盘、模型缓存盘和高速网卡。建议系统盘和数据盘分开。
网卡方面,如果使用 Mellanox ConnectX 系列,需要注意:
  • PCIe 插槽带宽是否足够;
  • 是否需要主动散热;
  • 驱动是否与系统兼容;
  • 光模块或 DAC 线缆是否匹配交换机。
第四步:用 PCIe riser 线连接 GPU
开放式 8-GPU 方案通常需要使用 PCIe riser 线,把 GPU 从主板插槽位置延伸到机架显卡位。
这里要特别注意 PCIe 带宽:
  • 高负载 GPU 尽量使用 x16;
  • 低负载推理卡可以接受较低带宽;
  • riser 线质量非常关键;
  • 线缆不要过度弯折;
  • 每张卡安装后最好逐张识别测试。
如果只是大模型推理,PCIe 带宽压力通常小于分布式训练;如果要做多卡训练,GPU 间通信和 PCIe 拓扑就更重要。
第五步:完成电源布线
电源布线是最需要谨慎的环节。
需要连接:
  • 主板 ATX 24pin;
  • CPU 供电;
  • GPU 8pin / 12VHPWR 供电;
  • SSD / 风扇供电;
  • 多 PSU 同步启动线。
建议原则:
  • 一张 GPU 尽量使用独立供电线;
  • 不要让单根线长期满载;
  • 不要使用劣质转接头;
  • 12VHPWR 接头必须完全插入;
  • 多 PSU 负载要均衡;
  • 所有线缆远离风扇叶片。
组装完成后,不要马上满载测试,先低负载运行,观察线缆、电源和接口温度。
第六步:安装风扇并建立风道
开放式机架建议至少设计一个明确风道:
冷风进入 → 正吹GPU正面/背板 → 热风排出 → 房间空调带走热量
可以使用:
  • 大尺寸箱式风扇;
  • 工业轴流风扇;
  • GPU 背板辅助风扇;
  • CPU 独立散热器;
  • 网卡小风扇。
建议监控以下温度:
  • GPU 核心温度;
  • GPU 显存温度;
  • CPU 温度;
  • SSD 温度;
  • 网卡温度;
  • 房间环境温度。
第七步:安装系统并测试 GPU 识别
完成硬件连接后,可以安装 Linux 系统,例如 Ubuntu Server。安装 NVIDIA 驱动、CUDA、Docker、PyTorch 后,先运行:
nvidia-smi
确认系统能够识别所有 GPU。
然后进一步检查:
nvidia-smi topo -m
查看 GPU 之间的 PCIe 拓扑关系。
如果某张 GPU 无法识别,常见原因包括:
  • riser 线接触不良;
  • PCIe 插槽设置问题;
  • BIOS 中 Above 4G Decoding 未开启;
  • 电源供电不足;
  • 驱动版本不兼容;
  • 某张显卡本身存在故障。
第八步:进行单机稳定性测试
在正式跑训练任务之前,必须做稳定性测试。
建议测试内容包括:
  • 所有 GPU 是否能持续识别;
  • 满载时是否掉卡;
  • GPU 温度是否可控;
  • 显存温度是否过高;
  • 电源是否稳定;
  • 系统是否重启或死机;
  • 风扇和线缆是否过热。
可以先用轻量推理任务测试,再逐步增加负载。不要一开始就直接跑 8 卡满载训练。
2.10 多节点扩展:每台独立主机,用交换机互联
当单节点稳定后,可以扩展为多节点方案。多节点不是把 GPU 随便接在一起,而是每台机器作为一个独立计算节点,再通过高速网络交换机互联。
典型结构如下:
节点1:8 GPU + 10G/40G网卡节点2:8 GPU + 10G/40G网卡节点3:8 GPU + 10G/40G网卡节点4:8 GPU + 10G/40G网卡            ↓      10G / 40G / 100G 交换机
多节点后,需要进一步配置:
  • SSH 免密登录;
  • 统一用户和目录;
  • NFS / NAS / 分布式存储;
  • PyTorch Distributed;
  • NCCL;
  • Slurm 或 Kubernetes;
  • 监控系统;
  • 日志系统;
  • 远程电源管理。
家庭 DIY 建议路线仍然是:
先单节点跑稳,再多节点互联;先 10G 入门,再升级 40G / 100G。
本章小结
单节点多 GPU 机架是家庭 DIY AI 算力网络最实用的起点。它的目标不是做得像商业数据中心一样精密,而是在有限预算下搭建一个可运行、可维护、可扩展、可持续散热的 GPU 计算平台。
最关键的原则可以概括为:
开放式机架解决散热和维护,服务器/工作站平台解决 PCIe 扩展,多 PSU 解决供电,高速网卡预留多节点扩展,最后通过稳定性测试确认系统可靠。
对于第一次搭建的用户,推荐路径是:
2 GPU 验证 → 4 GPU 稳定运行 → 8 GPU 单节点 → 多节点交换机互联。
03
网络配置:AI 算力网络真正的核心
如果说 GPU 决定了算力上限,那么网络就决定了多 GPU、多节点能否真正协同工作。很多 DIY GPU 集群看起来显卡很多,但实际训练效率并不高,核心原因往往不是显卡性能不够,而是网络带宽不足、延迟过高,或者 NCCL 通信没有配置好。
在 AI 算力网络中,网络配置可以分为两个层次:
一是节点内通信,也就是同一台主机内部多张 GPU 之间如何交换数据;二是节点间通信,也就是不同服务器、不同主机之间如何互联。
3.1 节点内通信:NVLink 或 PCIe
单机多 GPU 的通信主要依赖NVLink或PCIe。
第一类:NVLink
NVLink 是 NVIDIA 面向高性能 GPU 通信设计的高速互联技术,主要出现在部分专业卡、数据中心卡和老一代高端消费卡中。它的优势是带宽高、延迟低,适合多 GPU 训练、大模型并行和高频参数同步。
如果 GPU 支持 NVLink,那么在单节点内部,多卡之间的数据交换效率会明显优于普通 PCIe。对于需要模型并行、张量并行或频繁 AllReduce 的任务,NVLink 可以显著提升训练效率。
不过需要注意:
  • RTX 4090 不支持 NVLink;
  • RTX 3090 支持 NVLink,但需要桥接器;
  • A100、H100 等数据中心 GPU 的 NVLink / NVSwitch 能力更强;
  • NVLink 是否能发挥作用,还取决于主板拓扑、驱动和软件框架。
对于家庭 DIY 来说,NVLink 不是必选项。多数场景下,PCIe 仍然是主要通信路径。
第二类:PCIe
PCIe 是单机多 GPU 最常见的通信方式。GPU 通过 PCIe 插槽或 riser 线连接到主板,再通过 CPU、芯片组或 PCIe Switch 进行数据传输。
PCIe 的关键在于三点:
  • PCIe 代际:PCIe 3.0、4.0、5.0 带宽差异明显;
  • 通道数量:x16、x8、x4 对性能有影响;
  • 拓扑结构:不同 GPU 是否挂在同一个 CPU、同一个 PCIe Switch 或跨 NUMA 节点。
对于 8-GPU DIY 节点,建议尽量保证高负载 GPU 使用PCIe x16 或 x8。如果只是推理服务,x8 甚至部分 x4 场景也可以接受;但如果是多卡训练,PCIe 拓扑和带宽会明显影响效率。
可以通过以下命令查看 GPU 拓扑:
nvidia-smi topo -m
这个命令会显示 GPU 与 GPU、GPU 与 CPU、GPU 与网卡之间的连接关系。对于多 GPU 训练,尽量让 GPU 与高速网卡处在更优的 PCIe / NUMA 拓扑位置上,避免数据绕远路。
3.2 节点间通信:InfiniBand 或 RoCE Ethernet
当集群从单节点扩展到多节点后,网络就变成训练效率的核心瓶颈。多节点训练需要频繁同步梯度、参数和中间激活,如果网络延迟高、带宽低,GPU 就会大量时间处于等待状态。
节点间网络主要有两种路线:
  • InfiniBand
  • RoCE Ethernet
3.3 InfiniBand:低延迟、高性能,推荐严肃 AI 训练
InfiniBand,简称 IB,是高性能计算和 AI 训练集群中非常常见的互联方案。它的主要优势是:
  • 低延迟;
  • 高带宽;
  • 支持 RDMA;
  • CPU 开销低;
  • NCCL 支持成熟;
  • 适合多节点分布式训练。
对于需要稳定跑多节点训练的场景,InfiniBand 是更稳妥的选择。尤其是 4 节点、8 节点以上的 GPU 集群,如果预算允许,建议优先考虑 IB 网络。
常见配置包括:
  • Mellanox / NVIDIA ConnectX-6 网卡;
  • ConnectX-7 网卡;
  • 100G / 200G / 400G IB 交换机;
  • DAC 铜缆或光模块;
  • NVIDIA MLNX_OFED / MOFED 驱动。
对于家庭或小实验室 DIY,可以从二手 ConnectX-5 / ConnectX-6 开始尝试。如果预算较高,可以上 ConnectX-6/7 + IB 交换机。
IB 的缺点是成本较高,对网卡、交换机、线缆和驱动版本匹配要求更高。它更像是“专业训练集群方案”,适合追求性能和稳定性的用户。
3.4 RoCE Ethernet:性价比更高,适合小型集群
RoCE 是 RDMA over Converged Ethernet,也就是基于以太网实现 RDMA。相比 InfiniBand,RoCE 的优势是可以复用以太网生态,交换机和网络架构更接近传统数据中心网络。
RoCE 的优点是:
  • 性价比高;
  • 以太网生态成熟;
  • 便于与现有网络融合;
  • 可以使用 25G / 40G / 100G / 200G Ethernet;
  • 支持 RDMA,性能明显优于普通 TCP/IP 网络。
但 RoCE 对网络配置要求较高,尤其是拥塞控制、PFC、ECN、MTU、交换机配置等。如果配置不好,可能会出现丢包、抖动、性能不稳定等问题。
因此,RoCE 适合以下场景:
  • 小型实验室;
  • 成本敏感型集群;
  • 已有高速以太网交换机;
  • 主要做推理服务或中小规模训练;
  • 有一定网络配置能力的团队。
简单理解:
IB 更像专业赛道,RoCE 更像高性价比工程路线。
3.5 入门级网络:10G / 25G Ethernet
如果只是做家庭 DIY 或小型实验室入门,不一定一开始就上 IB。可以先用10G 或 25G Ethernet搭建基础网络。
10G 网络适合:
  • 多节点文件传输;
  • 简单分布式推理;
  • 轻量级多节点实验;
  • Slurm / Kubernetes 学习;
  • 小规模 RAG 或模型服务集群。
25G 网络比 10G 更适合 AI 场景,尤其是多节点推理、参数同步频率不高的微调任务或中等规模数据传输。
入门建议:

网络档位

适合场景

1G Ethernet

仅适合管理网络,不适合训练通信

10G Ethernet

入门级多节点互联

25G Ethernet

更推荐的小型 AI 集群起点

40G Ethernet / IB

训练和并行任务更合适

100G Ethernet / IB

严肃分布式训练起点

200G / 400G IB

高性能 AI 训练集群

对于家庭 DIY 来说,10G 是最低可接受起点,25G 更值得考虑,40G/100G 则更适合有训练需求的进阶玩家。
3.6 进阶配置:ConnectX-6/7 网卡 + IB 交换机
如果目标是构建真正可用于多节点训练的 AI 集群,可以考虑进阶方案:
ConnectX-6 / ConnectX-7 网卡 + InfiniBand 交换机。
典型硬件包括:
  • 每个节点安装 1 张或 2 张 ConnectX-6/7 网卡;
  • 配置 IB 或 Ethernet 模式;
  • 使用 100G / 200G / 400G 交换机;
  • 根据距离选择 DAC 铜缆或光模块;
  • 训练网络与管理网络分离;
  • GPU 与网卡尽量放在同一 NUMA 域或更优 PCIe 拓扑下。
如果每个节点有 8 张 GPU,可以考虑每节点至少 1 张高速网卡;更严肃的训练集群可以每节点 2 张网卡,提升带宽和冗余能力。
需要特别关注的是GPU Direct RDMA。如果配置正确,GPU 可以通过 RDMA 更高效地与网络通信,减少 CPU 参与,提高多节点训练效率。对于 PyTorch + NCCL 任务,这一点非常重要。
3.7 基础配置流程:驱动、IP、连通性测试
网络硬件安装完成后,需要完成基础配置。一般流程如下。
第一步:安装网卡和线缆
关闭主机电源后,将 ConnectX 网卡插入合适的 PCIe 插槽。建议优先选择靠近 CPU、带宽足够的插槽,避免和高负载 GPU 争抢过窄通道。
安装后检查系统是否识别网卡:
lspci | grep -i mellanox
或:
lspci | grep -i nvidia
第二步:安装 MOFED / MLNX_OFED 驱动
Mellanox / NVIDIA 网卡通常需要安装 OFED 驱动。常见做法是安装 MLNX_OFED,也常被称为 MOFED。
安装后可以查看设备状态:
ibv_devicesibstatibstatus
如果是以太网模式,可以查看网口:
ip link show
第三步:设置 IP 地址
如果是以太网或 RoCE 网络,需要给每个节点的高速网卡配置独立 IP。例如:
sudo ip addr add 192.168.100.1/24 dev ens5f0sudo ip link set ens5f0 up
其他节点可以依次设置为:
192.168.100.2192.168.100.3192.168.100.4
建议训练网络单独规划一个网段,例如:
管理网络:192.168.1.0/24训练网络:192.168.100.0/24
这样可以避免管理流量和训练通信互相干扰。
第四步:测试 ping 连通性
先做最基础的连通性测试:
ping 192.168.100.2
如果 ping 不通,优先检查:
  • 网卡是否识别;
  • IP 是否配置正确;
  • 网口是否 up;
  • 线缆或光模块是否匹配;
  • 交换机端口是否启用;
  • 防火墙是否阻断;
  • IB / Ethernet 模式是否一致。
第五步:用 iperf 测试 TCP 带宽
在节点 2 上启动服务端:
iperf3 -s
在节点 1 上测试:
iperf3 -c 192.168.100.2
如果是 10G 网络,实际 TCP 带宽接近 9Gbps 左右比较正常;如果是 25G、40G、100G 网络,也可以通过 iperf3 初步判断是否跑到了合理水平。
但需要注意,iperf 只能说明 TCP 层带宽,不代表 NCCL 训练通信一定高效。真正的 AI 训练网络,还需要进一步测试 NCCL 性能。
3.8 用 NCCL 测试真实训练通信能力
AI 集群网络最终要看 NCCL 表现。NCCL 是 NVIDIA Collective Communications Library,是 PyTorch、TensorFlow 等深度学习框架进行多 GPU 通信的重要底层库。
建议使用nccl-tests测试多 GPU、多节点通信能力。
常用测试包括:
all_reduce_perf
它可以测试多 GPU 间 AllReduce 通信带宽。AllReduce 是分布式训练中最核心的通信操作之一,因此非常有代表性。
单节点多 GPU 测试示例:
./build/all_reduce_perf -b 8 -e 4G -f 2 -g 8
其中:
-b 8
表示起始消息大小;
-e 4G
表示最大消息大小;
-f 2
表示每次消息大小翻倍;
-g 8
表示使用 8 张 GPU。
多节点测试时,可以结合 MPI 或 PyTorch 分布式环境运行。目标是观察:
  • 带宽是否接近预期;
  • 是否有明显抖动;
  • 是否出现 timeout;
  • 是否出现 GPU 掉卡;
  • 是否有 NCCL WARN / ERROR;
  • 多节点扩展效率是否合理。
3.9 网络配置中的常见坑
坑一:网卡插槽带宽不够
有些主板虽然 PCIe 插槽很多,但并不是每个插槽都有足够通道。高速网卡如果插在低带宽插槽上,会导致性能上不去。
建议用:
nvidia-smi topo -m
和:
lspci -vv
检查网卡和 GPU 的拓扑与 PCIe 链路状态。
坑二:只配置了管理网络,没有训练网络
很多 DIY 用户把所有流量都放在一个普通交换机上,结果 SSH、文件传输、训练通信、Web 服务混在一起,性能不稳定。
建议至少划分:
  • 管理网络;
  • 训练网络;
  • 存储网络。
小规模集群可以先做到管理网络和训练网络分开。
坑三:RoCE 没有正确配置交换机
RoCE 对无损网络环境更敏感。如果交换机没有配置好 PFC、ECN、MTU 等,可能会出现丢包、延迟抖动和 NCCL 性能不稳定。
因此,如果没有网络经验,IB 反而可能更省心;如果选择 RoCE,就要认真做交换机侧配置。
坑四:NCCL 没有走高速网卡
有时系统虽然安装了高速网卡,但 NCCL 实际走的是普通网口,导致多节点训练速度很慢。
可以通过设置 NCCL 环境变量指定网卡,例如:
export NCCL_SOCKET_IFNAME=ens5f0
如果使用 IB/RDMA,还需要检查相关 NCCL 参数和驱动是否生效。
坑五:MTU 没有统一
高速网络通常会使用 Jumbo Frame,例如 MTU 9000。但如果节点和交换机 MTU 不一致,可能导致通信异常或性能下降。
检查 MTU:
ip link show ens5f0
设置 MTU:
sudo ip link set dev ens5f0 mtu 9000
前提是交换机也支持并正确配置相同 MTU。
3.10 推荐网络路线
对于家庭 DIY 和小实验室,可以按以下路线逐步升级:
第一阶段:单节点多 GPU
重点关注:
  • PCIe 拓扑;
  • GPU 是否稳定识别;
  • 单机 nvidia-smi topo -m;
  • 单机 nccl-tests
这一阶段可以暂时不考虑 IB,只要本机 PCIe 稳定即可。
第二阶段:2 节点入门互联
推荐:
  • 10G / 25G Ethernet;
  • 独立训练网段;
  • ping / iperf 测试;
  • PyTorch 分布式基础测试。
适合学习多节点调度和分布式推理。
第三阶段:4—8 节点训练集群
推荐:
  • 40G / 100G 网络;
  • ConnectX-5/6 网卡;
  • RoCE 或 IB;
  • 独立高速交换机;
  • NCCL 性能测试;
  • Slurm 或 Kubernetes 调度。
这一阶段开始,网络配置会直接影响 GPU 利用率。
第四阶段:严肃分布式训练
推荐:
  • ConnectX-6 / ConnectX-7;
  • 100G / 200G / 400G IB;
  • IB 交换机;
  • GPU Direct RDMA;
  • NCCL 深度调优;
  • 网络、存储、调度一体化设计。
这一阶段已经接近专业 AI 集群架构,需要系统工程能力。
本章小结
网络配置是 AI 算力网络的核心,不是简单地“插上网线就能跑”。单节点内部要看NVLink / PCIe 拓扑,多节点之间要看InfiniBand / RoCE / Ethernet 带宽与延迟,最终还要通过NCCL 测试判断真实训练通信效率。
推荐的实践路径是:
单节点先看 PCIe 拓扑 → 两节点用 10G/25G Ethernet 入门 → 多节点升级 40G/100G → 严肃训练采用 ConnectX-6/7 + IB 或 RoCE → 最后用 nccl-tests 验证真实性能。
一句话概括:
GPU 决定算力上限,网络决定集群效率;没有好网络,多卡集群就会变成“显卡排队等数据”。
完整的硬件清单Excel + Slurm配置脚本 + NCCL调优Checklist,请在24小时内,公众号回复关键词’算力清单’获取