弹性训练

  • Proteus: Agile ML Elasticity Through Tiered Reliability in Dynamic Resource Markets (EuroSys’17) [PDF]
    • CMU和UC Berkley合作的项目,针对EC2上PS架构的情况设计
  • Litz: Elastic Framework for High-Performance Distributed Machine Learning (ATC’18) [PDF]
    • CMU和Petuum合作的项目,针对PS架构
  • Efficient Resource Sharing for Distributed Deep Learning (OSDI’18 Poster) [PDF] [Poster]
    • 普林斯顿大学的工作,实现了CoDDL系统,适用于数据并行,可用于异构设备(通过合理选择设备以及合理设置batch size),据后续论文称overhead只有4ms
  • Elastic Deep Learning in Multi-tenant GPU Cluster (ArXiv’19) [PDF]
    • 香港中文大学的工作,实现了EDL框架,将新加入设备的准备过程和其他设备的训练overlap
    • 修改了Horovod源代码,可应用于TensorFlow
  • DL2: A Deep Learning-driven Scheduler for Deep Learning Clusters (ArXiv’19) [PDF]
    • 香港大学与阿里巴巴合作的工作,运用了强化学习,可以实现动态worker/parameter server调整,可以实现弹性训练
  • Resource Elasticity in Distributed Deep Learning (MLSys’20) [PDF]
    • 对分布式训练该在何时进行scale in或scale straggler
  • A Dynamic Scaling Scheme of Cloud-based DNN Training Clusters (SmartCloud’20) [PDF]
    • 成均馆大学的工作
    • 有新加入的节点的时候,重新建立新的通信拓扑,并舍弃旧的通信拓扑。将新加入的node的梯度全初始化为0,这样可以不影响ring allreduce;与此同时新节点进行模型结构的建立;之后从network最近的节点的checkpoint处获取初始化权重。
    • 修改了Horovod TensorFlow源代码
  • Effective Elastic Scaling of Deep Learning Workloads (ArXiv’20) [PDF]
    • IBM和微软印度合作的工作,分析DL任务的bound,为DL任务动态调整batch size,最终达到最大化GPU利用率和吞吐量的目的
  • Elastic Parameter Server Load Distribution in Deep Learning Clusters (SoCC’20) [PDF]
    • 香港大学和字节跳动合作的工作,实现了系统PSLD,提出了一种动态参数服务器负载分配方案,解决了PS中straggler的问题,加速训练
    • 阅读笔记:TODO
  • Elan: Towards Generic and Efficient Elastic Training for Deep Learning (ICDCS’20 Best Paper Honorable Mention Award) [阅读笔记] [PDF]
    • 清华大学与商汤合作的工作,实现了一个面向深度学习负载的弹性调度系统,可以提高运行深度学习负载的数据中心资源利用率
  • KungFu: Making Training in Distributed Machine Learning Adaptive, (OSDI’20) [PDF]
    • 平台支持adaptive batch size, number of workers, etc. 主要是job-level的参数调整。
  • Elastic Resource Sharing for Distributed Deep Learning (NDSI’21) [阅读笔记] [PDF]
    • KAIST的工作,提出了算法AFS,设计了一个需要elastic DL的调度算法,并实现了高效调度的系统CoDDL(基于OSDI’18的一篇poster
  • Fluid: Resource-aware Hyperparameter Tuning Engine (MLSys’21)
  • Pollux: Co-adaptive Cluster Scheduling for Goodput-Optimized Deep Learning (OSDI’21) [PDF] [Code]
    • Petuum磐腾科技提出的GPU集群调度方法
    • 可以在训练时动态调整资源数量,为深度学习训练的不同阶段找到合适的batch size,从而使得训练效率和训练的准确率都能够得到保障
    • 没有考虑到模型并行,且为了不同任务之间不互相影响,需要满足一个节点上不能有两个不同的任务,这样需要集群中资源非常充足。现实中可能会有很多集群不能满足这样的需求
  • Chronus: A Novel Deadline-aware Scheduler for Deep Learning Training Jobs (SoCC’21) [PDF]
  • Elastic Hyperparameter Tuning on the Cloud (SoCC’21) [PDF]

评论