在深度学习(尤其是大语言模型 LLM)的训练中,单张 GPU 的显存和计算能力往往无法满足需求。为了解决这个问题,我们使用分布式训练技术。 Data Parallel (DP)、Model Parallel (MP) 和 Pipeline Parallel (PP) 是三种最主流的并行策略。 以下是它们的详细对比、工作原理及适用场景: --- 1. Data Parallel (DP) - 数据并行 核心概念: “模型复制,数据分片”。 原理: 假设你有 $N$ 张 GPU。 模型复制: 每一张 GPU 上都保存一份完整的模型副本。 数据切分: 将一个 Batch 的数据切分成 $N$ 份(Mini-batches),每张 GPU 处理一份不同的数据。 同步: 每张 GPU 独立计算梯度,然后通过通信(AllReduce)将所有 GPU 的梯度进行平均,最后更新所有 GPU 上的权重,保证下一轮迭代时大家的模型参数是一致的。 通俗类比: 老师(Server)发给 4 个学生(GPU)一模一样的课本(模型)。老师把 100 道题(Data)分成 4 份,每人做 25 道。做完后,大...