Skip to main content
QUICK REVIEW

[论文解读] PipeDream: Fast and Efficient Pipeline Parallel DNN Training

Aaron Harlap, Deepak Narayanan|arXiv (Cornell University)|Jun 8, 2018
Advanced Neural Network Applications参考文献 4被引用 97
一句话总结

PipeDream 将流水线并行模型并行与数据并行相结合,以实现快速的流水线并行 DNN 训练,显著减少通信并重叠计算与通信,相比数据并行 BSP 提升时间到达到准确度。

ABSTRACT

PipeDream is a Deep Neural Network(DNN) training system for GPUs that parallelizes computation by pipelining execution across multiple machines. Its pipeline parallel computing model avoids the slowdowns faced by data-parallel training when large models and/or limited network bandwidth induce high communication-to-computation ratios. PipeDream reduces communication by up to 95% for large DNNs relative to data-parallel training, and allows perfect overlap of communication and computation. PipeDream keeps all available GPUs productive by systematically partitioning DNN layers among them to balance work and minimize communication, versions model parameters for backward pass correctness, and schedules the forward and backward passes of different inputs in round-robin fashion to optimize "time to target accuracy". Experiments with five different DNNs on two different clusters show that PipeDream is up to 5x faster in time-to-accuracy compared to data-parallel training.

研究动机与目标

  • 推动大规模 DNN 训练的需求,因为数据并行在通信成本和带宽限制方面表现不佳。
  • 提出一种流水线并行训练方法,将流水线模型并行与数据并行相结合,以平衡计算与通信。
  • 自动将 DNN 分成流水线阶段以最小化完成时间并在有益时实现复制。
  • 在流水线并行下通过管理权重版本和跨阶段同步(权重贮存和垂直同步)来确保正确学习。
  • 在真实集群上使用商用硬件对 CNN 和 RNN 的经验性能提升进行演示。

提出的方法

  • 将 DNN 层划分为跨 GPU 的阶段,以平衡计算并最小化跨阶段通信。
  • 对 DNN 进行短时间运行的轮廓分析,以估计分区的逐层计算时间、激活大小和参数大小。
  • 使用动态规划找到最优的流水线分区,包括阶段复制和 NOAM(active minibatches 数量)。
  • 采用 1F1B(1-forward-1-backward)调度策略,使所有 GPU 在稳态下保持忙碌。
  • 应用权重贮存以使每个小批量的前向和后向传播与给定权重版本保持一致,并使用垂直同步在阶段之间对齐更新。
  • 提前为小批量和中间状态分配 GPU 内存,以最小化分配开销。

实验结果

研究问题

  • RQ1如何在数据并行之外对 DNN 训练进行并行化,以减少通信并提高商用 GPU 的硬件利用率?
  • RQ2是否可以通过自动将层划分为流水线阶段(可选复制)来最小化大模型的训练时间?
  • RQ3在流水线并行训练中需要哪些调度与一致性机制(如权重贮存和垂直同步)来保持收敛性?
  • RQ4与数据并行 BSP 相比,流水线并行训练在时间到准确度方面对 CNN 和 RNN 模型的表现如何?
  • RQ5在具有不同模型和硬件配置的真实集群上使用 PipeDream 的实际收益是什么?

主要发现

  • PipeDream 将大规模 DNN 的跨工作节点通信减少了至多 95%,与数据并行训练相比。
  • PipeDream 将通信与计算重叠,获得比 BSP 更高的硬件利用率。
  • 在五个模型(包括 Inception-v3、VGG16、ResNet-50、AlexNet 和 S2VT)上,PipeDream 将时间到准确度的提升最快可达 5.12x(因模型而异)。
  • PipeDream 相对于数据并行 BSP,在 AlexNet 上最高可达到 6.76x 的加速,在 S2VT 上达到 3x,且在两个集群上均如此。
  • 该系统同时支持 CNN 和 RNN(seq-to-seq),并可在商用云 GPU 上工作。
  • 实验表明在测试配置下 PipeDream 的时间到准确度比数据并行训练快最多 5x。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。