几个人一起搬家,分工再合理,如果楼道太窄,大家还是只能排队。大模型训练也一样:DDP(每块 GPU 保存完整模型、分别处理数据)解决的是“算得慢”;FSDP 和 ZeRO(把模型及训练状态拆到多块 GPU)解决的是“单卡装不下”。但切得越细,GPU 之间交换的数据通常越多,物理连接便可能成为真正的瓶颈。
作者以 Mistral-7B 为例:用 Adam 和 BF16 混合精度微调时,参数约占 14 GB,梯度再占 14 GB,优化器状态约占 58 GB;合计约 87 GB,已经超过一块 80 GB A100 的显存。模型因此必须跨卡拆分。问题在于,GPU 的逻辑分组不等于高速直连;数据若绕经带宽较低、延迟较高的路径,计算单元就得等待。作者称,同一套代码、同类 GPU,仅因节点连接方式不同,运行速度可相差数倍。相关策略测试来自四块 A100 80GB,硬件测试则使用 H200 机器;这是作者的实测经验,材料未披露完整吞吐量数据。