Open yylin1 opened 5 years ago
此篇論文主要透過觀察企業分配多租戶集群下,影響DNN訓練工作中,集群使用率的的三個問題 (1) the effect of gang scheduling and locality constraints on queuing (2) the effect of locality on GPU utilization (3) failures during training.
这篇很赞,我也打算读一下。他们的集群是目前比较主流的 ML 集群的硬件配置。data 存储用 HDFS,调度是 Yarn,其中训练是跑在 Docker 容器里的
剛好搜尋到,最近一直在看相關論文,還在確定目前scheduling方向
这篇文章是基于 2 个月内,数百用户发起的 100,000 个任务和 YARN 集群的日志等的分析,得到了一些观察:
基于这些观察,文章提出了几个经验之谈:
关于工作负载,主要是分布式训练。
为了用更大的数据集扩展训练,许多作业使用跨机器的分布式训练。分布式训练通常使用数据并行,每个 worker 将模型的一个完整副本加载到自己的内存中。在每个迭代中,每个worker使用输入数据的子集执行训练,在迭代结束时,所有worker交换梯度来同步模型更新。此同步阶段使用MPI AllReduce[6]或参数服务器执行
所以是同步更新参数的方式
关于架构,如图所示:
一些可能导致训练停止的错误:
错误出现情况统计
OOM 最多,有点真实
这篇文章具有非常浓厚的工业界的味道,有很多干货
https://www.microsoft.com/en-us/research/uploads/prod/2018/05/gpu_sched_tr.pdf