第 3 章

GPU 服务器与互连

·约 15 分钟

第 1 章讲了为什么 AI 要用 GPU。这一章往外扩一圈:一张卡不够用的时候,多张卡放进一台服务器怎么连,服务器又怎么组成集群。

GPU 代际

NVIDIA 数据中心 GPU 大约两年一代,每一代都用一位科学家命名:

架构代表产品发布AI 相关的主要变化
VoltaV1002017首次加入 Tensor Core
AmpereA1002020支持 TF32、BF16;推出 MIG(一卡切多卡);NVLink 3,每卡 600 GB/s
HopperH100、H2002022FP8 与 Transformer Engine;NVLink 4,每卡 900 GB/s;H200 显存增至 141 GB HBM3e
BlackwellB200、GB2002024FP4;两颗芯片封装成一个 GPU;NVLink 5,每卡 1.8 TB/s
Blackwell UltraB300、GB3002025更大显存、更强 FP4 推理
RubinVera Rubin2026已发布,计划 2026 年下半年交付

除了这些训练主力,还有偏推理和图形的产品线,比如 L4、L40S、RTX PRO 系列,功耗低、单价低,适合推理、视频处理和虚拟桌面。

名字里带 G 的(GH200、GB200)是 Grace 超级芯片:NVIDIA 自研的 Arm 架构 CPU Grace,和 GPU 放在同一块板上,用 NVLink-C2C 以 900 GB/s 直连,比走 PCIe 快得多。

HBM 与 GDDR

数据中心 GPU 用 HBM(高带宽显存):把多层 DRAM 芯片堆叠起来,和 GPU 芯片封装在一起,用极宽的总线相连。H100 SXM 的 HBM3 带宽约 3.35 TB/s。

消费级显卡用 GDDR,颗粒焊在 GPU 周围的电路板上,便宜但带宽低得多。实验室的 RTX 3090 用的是 24 GB GDDR6X,带宽约 936 GB/s,不到 H100 的三分之一。第 1 章说过,大模型推理的 decode 阶段瓶颈就在显存带宽,所以 HBM 是数据中心卡贵的主要原因之一。

SXM 与 PCIe 两种形态

同一代 GPU 通常有两种形态:

  • SXM:没有独立的卡形态,直接装在专用主板(HGX 基板)的插座上,功耗上限高(H100 SXM 约 700 W),完整支持 NVLink 全互连;
  • PCIe:普通扩展卡,插在服务器的 PCIe 插槽里,功耗低(H100 PCIe 约 350 W),兼容普通服务器,NVLink 只能用桥接器两两相连。

大规模训练基本都用 SXM;推理和中小规模场景用 PCIe 卡更灵活。

GPU 之间怎么连

多卡训练每一步都要同步梯度(第 2 章的 all-reduce),大模型的张量并行更是每一层都要通信。GPU 之间的连接方式直接决定多卡能不能跑满。

PCIe

PCIe 是服务器里的通用总线,显卡、网卡、NVMe 硬盘都挂在上面。PCIe 5.0 x16 双向合计约 128 GB/s(4.0 是一半)。两张卡通过 PCIe 通信,要经过 PCIe 交换芯片或 CPU;如果两张卡分别挂在两颗 CPU 下面,数据还要穿过 CPU 之间的互连,更慢。

NVLink 是 NVIDIA 专门做的 GPU 间直连链路。H100 每卡 NVLink 带宽 900 GB/s,大约是 PCIe 5.0 x16 的 7 倍,而且不经过 CPU。

NVSwitch

NVLink 是点对点的,一张卡的链路数有限,卡一多就没法两两直连。NVSwitch 是一颗交换芯片,所有 GPU 的 NVLink 都接到 NVSwitch 上,由它转发。这样 8 张卡里任意两张之间都能跑满带宽(全互连、无阻塞)。DGX H100 里有 4 颗 NVSwitch。

NVSwitch 机器上还要运行 Fabric Manager 服务来配置 NVSwitch 的路由,没起来的话 GPU 之间的 NVLink 用不了。这属于运维细节,知道有这回事就行。

从一台机器到一整个机柜

Blackwell 这一代把 NVLink 交换做成了独立的交换机托盘。GB200 NVL72 在一个机柜里放 36 颗 Grace CPU 和 72 颗 Blackwell GPU,72 张卡全部在同一个 NVLink 域里,相当于一台"机柜级"的大 GPU。

方式连接范围带宽(每卡,双向合计)特点
PCIe 5.0 x16一台服务器内约 128 GB/s通用,经过 CPU 或 PCIe 交换芯片
NVLink 桥接器两张卡之间依型号而定PCIe 卡用,只能两两相连
NVLink + NVSwitch一台服务器内(通常 8 卡)H100 为 900 GB/s全互连
NVLink Switch(NVL72)一个机柜内(72 卡)B200 为 1.8 TB/s机柜级的 NVLink 域
InfiniBand / 以太网跨服务器每卡一张 400 Gb/s 网卡,双向合计约 100 GB/s第 4 章

注意最后一行的单位:网卡速率习惯用 Gb/s(比特),NVLink 习惯用 GB/s(字节),差 8 倍。跨机器的带宽比机器内的 NVLink 低一个数量级,这决定了后面怎么切分大模型。

动手看一眼:实验室 3090 的拓扑

实验室那台 4 卡 3090 服务器可以直接观察这些连接方式。30 系消费卡里只有 3090 这一档带 NVLink 接口,而且只支持两张卡之间桥接。

nvidia-smi topo -m

输出是一个矩阵,每个格子表示两张卡之间的连接方式。图例从快到慢大致是:

标记含义
NV#走 NVLink,# 是链路数
PIX经过最多一个 PCIe 交换芯片
PXB经过多个 PCIe 交换芯片,不经过 CPU
PHB经过 CPU 的 PCIe 根联合体(PCIe Host Bridge)
NODE同一个 NUMA 节点内,跨了 PCIe 根联合体
SYS跨 NUMA 节点,要经过 CPU 之间的互连

如果装了 NVLink 桥接器,桥接的两张卡之间会显示 NV#,其余的组合显示 PCIe 那几种。矩阵右边还有 CPU Affinity 和 NUMA Affinity 两列,表示每张卡离哪些 CPU 核最近,数据加载进程绑在这些核上效率最高。

一台 AI 服务器里有什么:以 DGX H100 为例

DGX H100 是 NVIDIA 自己的 8 卡旗舰服务器,官方用户指南里的规格:

部件配置
GPU8 × H100,共 640 GB 显存
GPU 互连4 颗 NVSwitch,每卡 NVLink 900 GB/s
CPU2 × Intel Xeon 8480C,每颗 56 核
内存2 TB
计算网络8 张单口 ConnectX-7,每张最高 400 Gb/s(InfiniBand 或以太网)
存储与带内管理网络2 张双口 ConnectX-7 以太网卡
带外管理BMC,1 GbE 网口
系统盘2 × 1.92 TB NVMe,RAID 1
数据缓存盘8 × 3.84 TB NVMe,RAID 0
电源6 × 3.3 kW,4+2 冗余;整机最大约 10.2 kW
尺寸与重量8U,最重约 130 kg

这张表几乎把后面几章的内容都串起来了:

  • 每张 GPU 配一张 400 Gb/s 网卡,专门用于跨机器的 GPU 通信,这是第 4 章"计算网络"和"轨道优化"的基础;
  • 存储、管理各有独立的网卡,对应第 4 章的"四张网";
  • 本地 NVMe 用 RAID 0 做数据缓存,追求速度不求冗余,数据丢了可以从共享存储重新拉(第 4 章存储部分);
  • 10.2 kW 的功耗和 130 kg 的重量,是第 5 章电力、散热和机房承重的问题;
  • BMC 是第 7 章带外管理的主角。

DGX、HGX、MGX 和 OEM 服务器

  • HGX:NVIDIA 提供的 GPU 基板,上面装好 4 或 8 张 SXM GPU 和 NVSwitch。NVIDIA 把它卖给戴尔、HPE、超微、联想、浪潮等服务器厂商(OEM),由厂商配上 CPU、内存、网卡、机箱做成整机。
  • DGX:NVIDIA 自己的整机,同样基于 HGX 基板,外加 NVIDIA 的软件(DGX OS 等)和支持服务,是一种"参考答案"式的完整系统。每一代 GPU 都有对应的 DGX,比如 DGX A100、DGX H100、DGX B200。
  • MGX:给服务器厂商的模块化参考设计,方便用 CPU、GPU、DPU 的不同组合快速做出各种服务器。
  • DGX Cloud:在云厂商的数据中心里提供 DGX 算力,按需租用。

选 DGX 还是 OEM 的 HGX 服务器,GPU 本身没有区别,差在整机集成、软件栈和采购渠道上。

按用途选硬件

第 1 章训练和推理的区别,落到硬件选择上:

场景关心什么常见选择
大模型预训练总算力、GPU 间带宽、网络、存储多台 8 卡 HGX/DGX(SXM),NVLink + InfiniBand,并行文件系统
微调显存能否装下,单机就够的情况多一台 8 卡服务器或几张卡
大模型推理显存容量和带宽H200、B200 这类大显存卡,一个模型跨几张卡
中小模型推理单次成本、功耗L4、L40S,或用 MIG 把大卡切小
数据处理与分析数据吞吐GPU + RAPIDS
边缘推理体积、功耗Jetson
虚拟桌面、图形图形能力、虚拟化L40S、RTX 系列 + vGPU

估算显存的办法第 1 章讲过:推理约为"参数量 × 每个参数的字节数",训练按每个参数约 16 字节起步。先算装不装得下,再谈快不快。

从一张卡扩展到 SuperPOD

扩展有两个方向:

  • 纵向扩展(scale up):让单个节点更强,一台机器里放更多卡,用 NVLink 连起来。NVL72 把这个方向推到了一整个机柜。
  • 横向扩展(scale out):加更多节点,用 InfiniBand 或以太网连起来。

两者的带宽差一个数量级,所以大模型训练会按带宽分配通信:通信最频繁的张量并行(把一层的矩阵切到多张卡上)放在 NVLink 域内;流水线并行(按层切分)和数据并行(每组卡处理不同的数据,定期同步梯度)跨节点,走网络。

规模上大致是这样一条路径:

  1. 单卡:开发调试、小模型;
  2. 单机多卡:一台 8 卡服务器,NVLink 全互连;
  3. 多机集群:多台服务器通过高速网络组成集群,需要共享存储和调度系统;
  4. SuperPOD:NVIDIA 的大规模集群参考架构。以 H100 版本为例,以 32 台 DGX 为一个可扩展单元(SU),计算、存储、管理网络和软件都有标准设计,按 SU 为单位往上堆。小一些的参考架构叫 BasePOD。

参考架构的价值在于别人已经验证过这套组合能跑、能跑满,照着搭能少踩很多坑。

一个集群由什么组成

组成作用
计算节点装 GPU 的服务器,真正跑训练和推理的地方
管理节点(头节点)运行集群管理软件、调度系统的控制端(第 6 章)
登录节点用户登录、提交作业的入口,不在这里跑计算
存储共享的并行文件系统,放数据集、代码、checkpoint(第 4 章)
网络计算、存储、带内管理、带外管理四张网(第 4 章)
软件栈操作系统、驱动、容器运行时、调度系统、监控
设施供电、散热、机柜、布线(第 5 章)

设计时的核心考虑是平衡:GPU 最贵,其他部分都要配得上它。网络太慢,GPU 等通信;存储太慢,GPU 等数据;供电散热不够,GPU 降频。任何一个短板都会让最贵的那部分闲着。

速查

词一句话
HBM堆叠封装的高带宽显存,数据中心卡用
SXM / PCIe装在 HGX 基板上的高功耗形态 / 普通插卡形态
NVLinkGPU 间直连,H100 每卡 900 GB/s
NVSwitch让一台机器内所有 GPU 全互连的交换芯片
NVL7272 卡同处一个 NVLink 域的机柜级系统
GraceNVIDIA 的 Arm CPU,和 GPU 用 NVLink-C2C 直连
HGX / DGX / MGXGPU 基板 / NVIDIA 整机 / 模块化参考设计
scale up / scale out节点内加卡(NVLink)/ 加节点(网络)
SuperPOD / SU大规模集群参考架构 / 它的基本扩展单元