Skip to main content
QUICK REVIEW

[论文解读] Unifying Data, Model and Hybrid Parallelism in Deep Learning via Tensor Tiling

Minjie Wang, Chien-Chin Huang|arXiv (Cornell University)|May 10, 2018
Parallel Computing and Optimization Techniques参考文献 52被引用 14
一句话总结

该论文提出SoyBean系统,通过最优张量切片技术统一深度学习中的数据并行、模型并行与混合并行,以最小化通信开销。通过将并行化建模为张量切片问题,并在结构化的DNN数据流图上使用动态规划,SoyBean在8-GPU环境下对AlexNet和VGG的训练速度相比纯数据并行提升了1.5×–4×。

ABSTRACT

Deep learning systems have become vital tools across many fields, but the increasing model sizes mean that training must be accelerated to maintain such systems' utility. Current systems like Tensorflow and MXNet focus on one specific parallelization strategy, data parallelism, which requires large training batch sizes in order to scale. We cast the problem of finding the best parallelization strategy as the problem of finding the best tiling to partition tensors with the least overall communication. We propose an algorithm that can find the optimal tiling. Our resulting parallelization solution is a hybrid of data parallelism and model parallelism. We build the SoyBean system that performs automatic parallelization. SoyBean automatically transforms a serial dataflow graph captured by an existing deep learning system frontend into a parallel dataflow graph based on the optimal tiling it has found. Our evaluations show that SoyBean is 1.5x-4x faster than pure data parallelism for AlexNet and VGG. We present this automatic tiling in a new system, SoyBean, that can act as a backend for Tensorflow, MXNet, and others.

研究动机与目标

  • 解决分布式系统中因通信开销导致的深度学习训练可扩展性瓶颈。
  • 克服现有系统仅依赖数据并行所导致的局限性,后者需要较大的批量大小并降低模型精度。
  • 基于张量切片,在单一框架下统一数据并行、模型并行与混合并行,以实现最优通信最小化分区策略。
  • 开发一种自动化的、后端无关的系统,可无缝集成至TensorFlow和MXNet等现有深度学习框架。
  • 通过将问题建模为数据流图上的切片优化,提供一种最优且可扩展的DNN并行化解决方案。

提出的方法

  • 将深度学习计算建模为数据流图,通过在不同维度上对张量进行切片来实现并行化。
  • 将并行化问题形式化为通过选择每张量在图中的最优切片策略来最小化总通信成本。
  • 利用DNN的分层、分层结构,将数据流图重新组织为一系列层级链,以支持高效的动态规划。
  • 应用递归动态规划,基于张量大小、形状和模型配置,计算每个张量的最优切片配置。
  • 构建加权通信成本图以表示设备间的数据移动,并利用其指导切片决策。
  • 实现SoyBean作为MXNet的C++后端插件,支持将串行数据流图自动转换为优化后的并行图。

实验结果

研究问题

  • RQ1能否通过统一的切片抽象,在深度学习中统一数据并行、模型并行与混合并行?
  • RQ2是否可能找到一种最优切片策略,以最小化DNN计算中所有张量的通信成本?
  • RQ3最优切片策略在不同DNN架构下与纯数据并行或模型并行相比,性能如何?
  • RQ4动态规划能否有效应用于结构化的DNN数据流图,以找到接近最优或精确解的切片问题解?
  • RQ5自动切片系统在不修改前端代码的前提下,能在多大程度上集成到现有深度学习框架中?

主要发现

  • 在8-GPU系统上训练AlexNet和VGG时,SoyBean相比纯数据并行实现了1.5×至4×的加速。
  • SoyBean找到的最优切片策略有效结合了数据并行与模型并行,优于单一策略方法。
  • 该系统通过在最小化设备间数据移动的维度上智能划分张量,显著降低了通信开销。
  • 尽管一般切片问题具有NP完全性,动态规划方法仍成功计算出具有分层架构的DNN的最优切片配置。
  • SoyBean的后端设计支持与MXNet和TensorFlow等现有深度学习框架无缝集成,实现无需修改用户代码的自动并行化。
  • 性能提升在更大模型(如VGG)上最为显著,其中通信开销占主导地位,证明了该方法的可扩展性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

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