数据并行(Data Parallelism)
定义
- 将同一份模型副本复制到多张 GPU/多台节点上,将大批量数据切分为多个 mini-batch 子批次并行计算,再通过 AllReduce 等通信原语聚合梯度或模型更新。
关键机制
- 并行单元:模型完整副本;每个并行单元处理不同数据切片。
- 同步方式:同步 SGD 最常见,反向传播后做梯度 AllReduce;也可采用异步/弹性训练(需额外收敛控制)。
- 通信瓶颈:带宽与拓扑(参见 Nvlink参数、PCIE参数)决定 AllReduce 开销;数据并行在大 batch 下通信/计算比更友好。
优缺点
- 优点:实现简单、对模型结构无侵入、扩展至多机多卡容易;与 AMP、检查点复用性好。
- 局限:显存瓶颈不变(需每卡容纳完整模型);模型极大时效率下降;跨节点通信成为主要瓶颈。
工程要点
- 梯度压缩/融合:梯度累积、通信与计算重叠、分块 AllReduce。
- 学习率与批量:大批量需配合学习率线性/余弦缩放、warmup、规范化策略。
- 容错:断点续训、混部隔离与弹性伸缩;与 ZeRO微调神经网络训练 可组合以降低显存峰值。
相关