同样的设备,两种盖法:读懂 AI 训练与推理的算力基建
训练和推理用的几乎是同一批硬件——GPU、NVLink、网卡、光模块、液冷,但盖法完全不同:训练焊成一台必须步调一致的超算,推理摆成一排各干各的服务器舰队。读懂这一个对立,所有拓扑差异都顺理成章。
面向懂技术、但没碰过 AI 基建的读者 · 约 12 分钟 · 7 图 + 1 对比表
一句话先讲清(TL;DR) 训练和推理用的几乎是同一批硬件——GPU、NVLink、网卡、光模块、液冷。但盖法完全不同:训练把它们焊成一台必须步调一致的超级计算机,推理把它们摆成一排各干各的服务器舰队。读懂这一个对立,后面所有的拓扑差异都顺理成章。
01 · 一个开篇问题
你可能听过:训练 GPT 这类大模型,要动用成千上万张 GPU、连续跑上几个月;可当你用它聊天时,背后也许只是几张卡在工作。同样是跑同一个模型,为什么差这么多?
答案不在”用了什么神秘设备”,而在同一批设备被组织成了完全不同的形态。
左边训练:所有卡焊成一体、步步同步,掉一张全队停。右边推理:每个”副本”独立接客,坏一个不影响别人。
训练是一台超级计算机;推理是一支服务器舰队。记住这个对立,是看懂全文的钥匙。下面先看两边各自要解决的难题——因为硬件长什么样,完全是被”要解决的问题”倒逼出来的。
02 · 两个环节,各自在跟什么作斗争?
训练:三件难事
- 装不下:前沿模型有几千亿乃至上万亿参数;训练时还要额外存”优化器状态”(约为参数的 3–4 倍)、梯度、中间激活,远远超过一张卡的显存(H100 也只有 80GB)。
- 算不完:训练不是”算一次”,而是把海量数据反复喂给模型几十万到几百万步,每一步都要正向算、反向纠错、更新参数。一张卡要算到地老天荒。
- 必须同步:成千上万张卡在算同一个模型,每一步都要互相”对答案”。一张卡慢了或坏了,整步都得停下来等。
这三件事各自逼出一个对策:“装不下”逼你把模型切开分给多卡;“算不完”逼你复制多份并行;“必须同步”逼你建一张极快、无损的网络。
推理:完全不同的难题
- 延迟敏感:用户在等回答,首字要快、出字要稳。
- 显存被 KV cache 吃掉:模型生成时要记住前文(称为 KV cache),它随对话变长而膨胀,成为显存的主要消耗,直接决定你能同时服务多少人。
- 两个阶段诉求相反:“读题”(理解你的整段问题,称 Prefill)很吃算力;“答题”(一个字一个字往外蹦,称 Decode)很吃显存带宽。混在一起会互相拖累。
这些难题逼出的不是更大的超算,而是一群可弹性伸缩、各自独立的副本,以及对显存和 KV 的精打细算。
03 · 一条贯穿全文的规则:聊得越勤,摆得越近
在深入两边拓扑之前,先记住一条铁律,它几乎解释了所有的连线方式:两块芯片之间”对答案”越频繁,它们之间的线就必须越快、摆得越近。于是整张网络被设计成一圈圈的”速度同心圆”——越靠里越快越贵,越靠外越慢但越多。
最里圈是同一台服务器里的 8 张卡,用 NVLink 高速直连(900 GB/s),因为它们聊得最勤;往外是服务器之间的 InfiniBand 网络(400 Gb/s),没那么勤;最外圈是上千台机器汇成一片。后面你会看到,训练把”最爱聊天”的部分牢牢钉在最里圈——这就是全部拓扑的底层逻辑。
04 · 训练侧:把模型切开,焊成一台超算
第一步:怎么把模型切开?
既然一张卡装不下,就得把模型切开分给多张卡。有三种基本切法,而且它们是相乘叠加使用、不是三选一:
- 张量并行 TP:把每一层横切成几片,几张卡同时算同一层——每过一层就要合并一次,聊得最勤,所以必须放最里圈(NVLink)。
- 流水线并行 PP:把不同的层分成几段接力,数据像流水线往下传——只在交接处传一次,聊得少。
- 数据并行 DP:复制整个模型多份,每份吃不同的数据,每步末尾汇总一次——聊得少,还能边算边传。
简单说:TP + PP 负责让模型”装得下”,DP 负责让训练”算得快”,各破一道坎,所以三种都得有。
第二步:实物怎么搭起来?
把这些切片落到实物上,是一层套一层的”乘法阶梯”:
芯片 ×8 拼成一台服务器(8 卡用 NVSwitch 焊在一起);服务器 ×几十 装进机柜;机柜之间用 InfiniBand 组成大网;多个 POD 汇成万卡集群。注意底下的两条括号:前两段是”焊在一起”的高速区(NVLink),后面是”用网线连”的网络区(InfiniBand)——正好对应同心圆的内圈和外圈。
第三步:一根”网线”里到底有什么?
很多人把节点之间的连接想成一根简单的网线。其实一根跨节点链路串起了一长串元器件:
从 GPU 出发,经过 PCIe → 网卡/DPU → 光模块 → 光纤 → 光模块 → 交换机。其中光模块负责”电↔光”转换,是大集群里成本和功耗的大头、也是头号故障源(激光会老化失效)。而服务器内部的 NVLink 域刻意全程走铜缆——这正是它被限制在一个机柜里的物理原因(铜缆传不远),换来的是省电和可靠。
除此之外,训练集群还压着一整套支撑设备:DPU 卸载网络负担、液冷系统(冷板 + CDU)带走每柜超过 100 kW 的热量、供电母线、本地 NVMe 加并行文件系统(存 checkpoint)、以及独立的带外管理网。在训练场景里,这些几乎都是重负载。
05 · 推理侧:把模型复制多份,摆成一支舰队
核心矛盾:读题 vs 答题
推理最关键的设计来自一个矛盾:读题和答题对硬件的需求正好相反。
读题(Prefill)一口气处理整段问题,很吃算力,但只做一次,决定”多久蹦出第一个字”;答题(Decode)一个字一个字生成,反复读取 KV cache,很吃显存带宽,决定”打字速度”。把它们混在一张卡上,一道长问题的读题会卡住别人正在答题的进度。于是现代系统常把两者拆到不同的资源池,中间用高速链路传递 KV cache。
硬件:一支可伸缩的舰队
推理的硬件层级简单得多:先把模型塞进”一个副本”(小模型一张卡就够,大模型用一台 8 卡服务器),再复制很多份,前面摆个负载均衡派活。
关键在于:副本之间几乎不需要高速互连——它们各自处理独立的请求。所以可以用普通以太网把副本铺得到处都是,按访问量随时增减。这与训练那个”紧耦合的同步整体”形成根本对立。
推理用的设备和训练大量重合,但配比不同:KV cache 让显存容量成了一等公民;decode 阶段更看重显存带宽而非峰值算力,所以可以用更低端的卡、甚至专用推理芯片加量化;副本间也不需要训练那张昂贵的无损大网。唯一的例外是超大 MoE 模型——它单个副本仍然大到要用 NVL72 级的 NVLink 域去跑专家并行,这时推理的硬件一点都不比训练弱。
06 · 正面对比:同样的设备,不同的用法
把前面散落的差异收进一张表。注意:大多数行的差异不是”用不用”,而是”怎么用、用多少、配多贵的网”。
| 设备 / 子系统 | 预训练 | 推理 | 同异 |
|---|---|---|---|
| 加速器 GPU | FLOPs + 显存双高,同构 | 可异构;decode 偏带宽、可用低端卡 + 量化 | 异 |
| HBM 显存 | 权重 + 优化器状态(3–4×)+ 梯度 + 激活 | 权重 + KV cache(直接限并发上限) | 异 |
| NVLink / NVSwitch(机内高速) | 常态必需(TP/EP 每步都用) | 仅当模型放不下单卡时才用 | 异 |
| 节点间网络(网卡 / 交换机) | 1:1 无收敛贵网,每卡 400G,无损 | 副本间普通以太网即可 | 异 |
| 光模块 | 用量极大(成本 / 功耗大头) | 少一个数量级 | 异 |
| 存储 | 高频 checkpoint + 数据集,需并行 FS | 轻量,几乎只读 | 异 |
| 供电 / 散热 | 持续满载,按峰值设计液冷 | 负载随流量波动,可弹性 | 半同 |
| 组织方式 | 固定紧耦合,单一失败域 | 松耦合舰队,弹性、可跨区 | 异 |
| DPU / CPU | 卸载 + 数据管道 | 卸载 + 请求调度 / KV offload | 同 |
最该记住的一句 · 绑定约束翻转 训练的瓶颈是互连带宽 + 聚合算力 + 供电(整个集群当一台机器);推理的瓶颈是显存容量(KV)+ 显存带宽(decode)+ 延迟(单位是每个 token 的钱)。同一张 H100,在训练里常被网络喂不饱,在推理 decode 里被显存带宽卡死。
07 · 三句话带走
- 同样的积木,两种盖法:训练焊成同步超算,推理摆成独立舰队。
- 拓扑只有一条底层逻辑:聊得越勤,摆得越近。通信最密集的张量并行钉在 NVLink,可重叠的数据并行推到外层网络。
- 别照训练的样子建推理的网:副本之间不需要 all-reduce,那张昂贵的无损大网在推理里几乎用不上;省下的钱该投到显存容量和 KV 管理上。
置信度:硬件规格 / 拓扑模式 = 高;“聊天频率 → 网络分层”、约束翻转 = 高(通用工程实践与 roofline 推论);具体卡型 / 配比 / 卡数 = 随模型与部署而异,文中为示意。
参考 · NVIDIA HGX H100 / GB200 NVL72 · ConnectX-7 / BlueField · NCCL collectives · Megatron(TP/SP/PP)· ZeRO/FSDP(DP)· vLLM PagedAttention · Prefill-Decode 分离(DistServe / Splitwise / Mooncake)。本文为面向入门的概念性科普,非任一厂商精确产品图;比喻仅用于帮助理解带宽量级。
评论
登录后发表评论
还没有评论,来留下第一条吧