[论文解读] Performance Modeling of Distributed Deep Neural Networks
本文针对微软的分布式深度神经网络框架 CNTK 进行了性能建模与分析研究,揭示了较差的 I/O 利用率和单服务器瓶颈严重限制了其可扩展性。尽管理论上可实现线性扩展,但 CNTK 在超过 4 个节点后性能下降,原因在于顺序磁盘 I/O 和服务器过载,且在 16 个工作者之后计算时间反而增加,凸显了分布式 DNN 系统中的关键低效问题。
During the past decade, machine learning has become extremely popular and can be found in many aspects of our every day life. Nowayadays with explosion of data while rapid growth of computation capacity, Distributed Deep Neural Networks (DDNNs) which can improve their performance linearly with more computation resources, have become hot and trending. However, there has not been an in depth study of the performance of these systems, and how well they scale. In this paper we analyze CNTK, one of the most commonly used DDNNs, by first building a performance model and then evaluating the system two settings: a small cluster with all nodes in a single rack connected to a top of rack switch, and in large scale using Blue Waters with arbitary placement of nodes. Our main focus was the scalability of the system with respect to adding more nodes. Based on our results, this system has an excessive initialization overhead because of poor I/O utilization which dominates the whole execution time. Because of this, the system does not scale beyond a few nodes (4 in Blue Waters). Additionally, due to a single server-multiple worker design the server becomes a bottleneck after 16 nodes limiting the scalability of the CNTK.
研究动机与目标
- 为基于异步随机梯度下降(ASGD)的分布式 DNN 构建性能模型。
- 在小型和大规模集群上,评估 CNTK 的实际性能与理论模型的对比。
- 通过详细的性能剖析与追踪,识别并诊断 CNTK 中的可扩展性瓶颈。
- 提出改进方案,以缓解分布式训练框架中 I/O 效率低下和服务器过载的问题。
提出的方法
- 构建了一个考虑 ASGD 基础 DNN 训练中 CPU、内存、磁盘 I/O 和网络通信的性能模型。
- 在 8 个节点的集群和 Blue Waters 超级计算机上,通过改变工作者数量进行可扩展性实验。
- 使用 TAU 性能分析工具对执行阶段进行剖析与追踪,隔离 I/O 和服务器相关开销。
- 更新初始性能模型,以反映顺序磁盘访问和服务器饱和情况,引入新的 T_new_disk 和 T_new_total 方程。
- 通过分阶段执行(初始化和计算)分析,隔离可扩展性趋势与瓶颈。
- 提出未来改进方向,聚焦于并行 I/O 和分布式参数服务器架构,以缓解服务器瓶颈。
实验结果
研究问题
- RQ1为何 CNTK 尽管具有分布式设计,却在超过 4–16 个节点后无法继续扩展?
- RQ2I/O 性能,尤其是顺序磁盘访问,在初始化阶段对执行时间的影响有多大?
- RQ3随着工作者数量增加,单服务器架构如何成为瓶颈?
- RQ4与包含 I/O 和服务器约束的更新模型相比,初始性能模型在预测真实执行情况方面的表现如何?
- RQ5在分布式 DNN 训练中,理论可扩展性与实际系统行为之间的关键性能差距是什么?
主要发现
- 由于顺序磁盘 I/O,初始化时间随节点数量线性增加,成为主要性能开销。
- 计算时间在 16 个节点以内线性减少,但在超过该点后因服务器饱和而增加。
- 在 Blue Waters 上,系统在超过 4 个节点后无法有效扩展;在超过 16 个节点后,因服务器瓶颈而无法扩展。
- 更新后的性能模型(考虑顺序 I/O 和服务器限制)与实验结果高度吻合。
- 即使初始化阶段实现完美并行化,系统仍无法在超过 16 个节点后扩展,原因在于服务器限制。
- 理论可扩展性与实际可扩展性之间的性能差距主要源于 I/O 效率低下和单体式服务器架构。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。