论文分享-Heterogeneity-Aware Cluster Scheduling Policies for Deep Learning Workloads

前言

这篇文章是由斯坦福大学和微软研究院共同合作的,于2020年11月发表于系统类顶级会议OSDI。主要研究了不同异构硬件资源对深度学习负载的影响和集群调度策略的设计。

1. 摘要

专门的加速器,如gpu、TPUs、fpga和定制asic,已经被越来越多地用于训练深度学习模型。这些加速器展示了跨模型架构的异构性能行为。现有的用于在许多用户之间仲裁这些昂贵训练资源的加速器集群调度程序,已经展示了如何优化各种多任务、多用户目标,如公平性和完成时间。不幸的是,现有的调度器在很大程度上没有考虑性能的异构性。在本文中,我们提出了一个异构感知调度器Gavel,它系统地生成了的一系列调度策略。Gavel将这些策略表示为优化问题,然后使用我们称为有效吞吐量的抽象,系统地将这些问题转换为异构感知版本。然后,Gavel使用基于轮的调度机制来确保作业在给定的目标调度策略下得到理想的分配。异构感知策略允许异质集群维持较高的输入负载,并将最终目标(如完工时间和平均工作完成时间)与异构不可知策略相比提高1.4和3.5。

Gavel 开源地址: https://github.com/stanford-futuredata/gavel.

2.背景

2.1 深度神经网络(DNN)训练

DNN训练已迭代的形式进行。在每一轮的迭代中,DNN处理一组输入(minibatch),并持续更新模型参数(采用来源于输入minibatch的梯度下降)。每个minibatch的大小是一样的,这意味着使用短的分析运行(以分钟为单位)来建模训练吞吐量。Gravel在其吞吐量评估器中利用了这一事实,作业典型地运行时间长(从小时到天),并且可以被分布式地分配到woker节点。

现代的DNN调度器利用了DNN训练是迭代的这一事实,在迭代边界处暂停和恢复训练,这确保作业可以在现有物理资源上进行时间复用。当作业被暂停时,需要将最新的模型参数检查为稳定存储,以确保训练进度不会丢失。在这项工作中,我们展示了如何分配时间,以优化各种单一和多任务的目标。

2.2 性能优化

在之前的工作中已经表明GPU在多租户集群中利用率可能严重不高,例如微软集群的平均GPU利用率低于52%。之前的工作也表明分布式训练作业的任务放置对性能也有很重的影响。Gravel可以系统地部署这些优化。
Space Sharing空间共享。小模型通常不需要权衡现代GPU全部的算力。在这种情况下,在同一个GPU上并发执行多个模型可以帮助提升芯片利用率。
Placement Sensitivity放置敏感。DNN模型显示异构的分布式扩展行为根据张量的大小需要在训练期间worker之间交换:一些模型有紧凑的重量表示,可以很好地伸缩即使工人不是在同一台服务器上,而其他模型规模差当工人们分布在许多服务器。现有的调度器,如Tiresias使用启发式放置灵敏度

3.系统概述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值