DeepSeek 技术分析 — (4)DualPipe
2025/03/03
在深度学习中,前向传播和后向传播是训练神经网络的核心步骤。前向阶段,输入数据逐层通过网络生成输出;后向阶段,利用损失函数计算损失,通过链式法则反向传播梯度,并使用优化算法更新权重。对于大型语言模型(LLM),由于模型参数众多,无法装入单个 GPU 内存,需要采用模型并行和数据并行技术来加速训练。模型并行通过将模型按层或张量级别分区,分布到多个 GPU 上;数据并行则将模型复制到多个 GPU 上,独立生成梯度并同步更新。然而,大规模分布式训练面临资源利用、节点通信和同步等挑战。为充分利用集群计算资源,引入了多种管道并行技术,如 PipeDream 的“一前一后”(1F1B)调度策略,通过重叠通信和计算提高 GPU 利用率。零气泡流水线并行性进一步优化了计算和通信的重叠,减少流水线中的气泡。DeepSeek 从 V3 开始引入了 DualPipe 调度,通过细粒度阶段划分和双向流水线调度,提高了计算与通信的比率和效率,并定制了高效的跨节点全对全通信内核,充分利用集群的计算资源。