跳到正文
AI 图鉴
08 AI 工程、安全与伦理专家本域第 1 篇

训练与推理基础设施

显存决定你能训多大的模型,通信决定你要花多久;算力本身往往不是瓶颈

定义

训练与推理基础设施是为大规模神经网络提供算力、显存与通信的软硬件系统。它由加速器(GPU/TPU)、互连网络(NVLink/InfiniBand)、并行策略(数据并行、张量并行、流水线并行)与显存优化技术(ZeRO、混合精度、激活重计算)共同构成,决定了模型能否被训练、以什么成本训练,以及能否被高效地服务。

直观理解

把一次大模型训练想成一支施工队盖一栋楼:算力是工人的干活速度,显存是工地能堆放多少材料,而通信是工人们彼此喊话、对齐进度的开销。真正的瓶颈常常不是工人手不够快,而是工地放不下材料,或者工人们花在沟通上的时间超过了干活本身——加人手并不能解决场地不够的问题。

图 1

并行策略的分层:越靠层内的并行通信越频繁,实际训练通常是多种并行叠加的 3D 组合

越往下通信越密集,对网络带宽和延迟的要求也越高。
图 2

7B 参数模型在混合精度 Adam 下的显存构成(示意量级):优化器状态一项就超过参数本身,ZeRO 分片逐级把总量压回单卡可承受的范围

  • DDP 全量复制
  • ZeRO-2
  • ZeRO-3

工作原理

  1. 01

    分片:先让模型塞得进显存

    一张卡放不下整个模型时,第一步是把它切开——按层切、按权重矩阵切、按张量维度切。混合精度 Adam 训练每个参数约需 16 字节(权重、梯度、优化器状态各占若干份),一个 7B 模型的优化器状态一项就超过参数本身,因此分片几乎是必选项。

  2. 02

    并行:把切开的碎片分配到多卡

    数据并行把批次切成多份、每卡一份完整副本;张量并行把单层内部的矩阵切到多卡;流水线并行把不同层放到不同卡上。三者可以叠加,形成 3D 并行。越靠层内的并行,通信频率越高、网络要求越苛刻。

  3. 03

    省显存:ZeRO 与混合精度

    ZeRO 依次把优化器状态、梯度、参数分片存储,用通信换显存,把单卡占用近似除以卡数。混合精度(BF16 计算 + FP32 主权重)在保持数值稳定的同时把计算与存储减半。激活重计算则用一次额外前向换回一层激活的显存。

  4. 04

    通信:让传输藏在计算背后

    大规模训练的时间常常花在同步而非计算上。工程上通过计算-通信重叠、梯度累积、更好的拓扑(NVLink、分层 All-Reduce)来把通信开销藏进计算窗口,这也是为什么“再加一倍卡”经常换不回“快一倍”。

应用场景

  • 预训练:用数千张加速器集群训练千亿参数模型,容量与调度决定可行性
  • 微调与适配:在少量卡上用 LoRA、FSDP 适配下游任务
  • 推理服务:KV Cache 与批处理共同决定单机可以同时服务多少用户
  • 成本核算与容量规划:估算训练一次的算力账单与推理的每千 token 成本

常见误区

  • 更多 GPU 不等于更快。当通信、同步或数据加载成为瓶颈时,增加设备只会等比例增加等待时间,利用率反而下降。
  • 显存的大部分并不属于参数。在混合精度 Adam 下,优化器状态与梯度可能比参数本身占用更多空间,只盯着参数量会严重低估显存需求。
  • 混合精度不是“免费加速”。BF16 的动态范围大但精度低,某些数值敏感的运算仍需回退到 FP32,否则会出现溢出或缓慢的发散。

关键术语

加速器
以 GPU/TPU 为代表的高吞吐并行计算单元
张量并行
把单层内部的大矩阵切到多张卡上
流水线并行
把不同的层放到不同的设备,用微批次填空
ZeRO
分片优化器状态、梯度与参数以降低单卡显存

延伸阅读