Gandiva:Introspective Cluster Scheduling for Deep Learning.

OSDI 2018 深度学习自省调度系统研读笔记。作者:Wencong Xiao

用户需要运行一系列的jobs以得到针对特定任务最好的结果,在训练中利用准确率的early feedback作为判断条件以杀死其中某些正在运行(已可以判定为没有价值)的工作。

Gandiva处理的两个问题:

Simultaneous early feedback: 运行过程中返回的中间结果,用于判断是否还要继续运行。**Heterogeneity of deep learning: **不同应用对硬件资源的侧重是不同的,使得难以利用先验(priori)处理问题

By exploiting Intra-job predictability: 通过前几次iteration的运行,将工作合理的分配到更适合的GPU节点上面,集群总体效率得到,超参数搜索速度变快。

Feedback-driven exploration: 挑选网络和选择超参数的过程。
Multi-job: 确定模型后,hyper-parameter search。超参数搜索的一种方法是一组一组的配置轮着试。但由于可能的配置有好几百,就非常的耗时。有些方法会同时启动很多组,然后每固定轮次根据当前结果杀死一部分效果不好的。

Some facts:

  • The prototype implementation and micro-benchmarks.
  • 云上的GPU 虚拟机开销大约是regular VM的十倍。云供应商通过集群调度器管理数以万计的GPUs.但当前的调度系统多是为了big-data jobs开发的。直接独占节点开始运行。
  • Job的运行时长,资源占用等都是不一样的。
  • Ram 使用呈周期性变化。

Some improvements:

  • 将计算需求和内存需求低的任务打包在一起。
  • 将通信密集型的任务放在关联强的GPU节点。
  • 当有额外的资源的时候,自动扩展,当资源不足时,自动回收。
  • 使TF和pytorch框架能够返回用于调度的原语。

DLT job Characteristics:

  • Sensitivity to locality:GPU之间的关联性,可能在不同的CPU sockets,可能在不同的PCIe切换件上。
  • Sensitivity to interference:当不能独占节点时,会出现资源抢占。same PCI-e switch
  • Intra-job predictability:

未完待续,后面具体的实现不继续看了,暂时不实际具体的调度系统。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 4,540评论 0赞 5
  • Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AM...
    大佛爱读书阅读 3,037评论 0赞 20
  • 程序员在开发的过程当中,会遇到各种各样的问题。那么你又是如何解决问题的呢?在这里分享给大家一些解决问题的渠道,希望...
    箫声_筱昇阅读 384评论 0赞 0
  • 前几日,凌晨五点半,东莞发布雷雨预警信号,父亲叫我起床帮忙照顾家里的生意,哥哥弟弟在外摆摊,若是下雨来不及收会很麻...
    高媛2021阅读 1,775评论 0赞 1

友情链接更多精彩内容