【论文阅读】THEMIS: Fair and Efficient GPU Cluster Scheduling

11. THEMIS: Fair and Efficient GPU Cluster Scheduling
  • 出处: 2020 USENIX Themis:公平高效的 GPU 集群调度 |USENIX
  • 主要工作:使用拍卖机制,针对长时间运行、位置敏感的ML应用程序。任务以短期的效率公平来赢取投标但确保长期是完成时间公平性。
    • 对每个ML应用程序 A i A_i Ai引入在GPU分配 G i ⃗ \vec{G_i} Gi 最大完成时间公平性 P i ( ⋅ ) P_i(\cdot) Pi(⋅)
    • 单轮拍卖:
      • 输入:资源和投标, R ⃗ \vec{R} R 表示要拍卖的GPU资源总量,其中每个元素为1,长度为要拍卖的GPU数量。每个ML应用程序都竞标这些资源,每个ML程序出价是对几个GPU分配方案 G ⃗ \vec{G} G ( G i ⃗ \vec{G_i} Gi 的值为 { 0 , 1 } \{0,1\} {0,1})的最大时间公平性 P i P_i Pi
    • 多轮拍卖:
      • 逐轮拍卖:在每一轮拍卖开始时,向应用程序请求新的 P i ( ⋅ ) P_i(\cdot) Pi(⋅)
      • 逐轮过滤:为了最大化 P ≤ 1 P\le 1 P≤1应用数量,每轮都过滤掉 P P P最大的 1 − f 1-f 1−f部分, f ∈ ( 0 , 1 ) f\in(0,1) f∈(0,1)。过滤使具有SI的应用数量最大化:一个输掉一轮拍卖的不公平应用 i i i,更容易打赢一个赢得一轮拍卖的不那么公平的应用 k k k( k k k被分配了GPU,它的 P K P_K PK会增大, i i i由于等待也会增大 P i P_i Pi,会一直出现,输掉太多轮的应用最终会失去所有资源的租约)
      • 剩余分配:在每轮的最后,有剩余GPU,将这些GPU分配给没有参加拍卖的应用程序,这在违反了SI的风险下提高了效率。
  • 目标:在有效利用集群GPU的同时最小化所有ML应用程序的最大完成时间公平性。最大完成时间公平性 (共享激励):在一个有N个应用程序的共享集群中运行时间与在一个有 1 N \frac{1}{N} N1个应用程序的集群中单独运行的比率。通过两个思想来做到这点。
    • 扩大ML应用程序和调度器之间的API,以允许应用程序指定放置偏好。通过一轮轮的拍卖达到,THEMIS使用租约来处理长时间运行的ML任务,并在租约到期时开始拍卖,新一轮开始时有个应用程序出价,价高者得。出价反映应用程序从获取的不同GPU子集的完成时间公平指标。
    • 提出两级调度设计。顶层包含一个集中的应用程序见调度程序,底层包含一个集成现有超参数调优框架的API。
  • 动机:
    • 现有方案无法提供公平的共享保证,因为他们不知道ML应用程序的特征。(主要是位置偏好)
    • 简单的方案是获取所有应用的 P i P_i Pi 然后进行排序并分配,但应用程序请求的资源往往比所需的更多,以获得更多的分配机会。
  • 几个概念:
    • sharing incentive(SI): 如果N个用户共用集群C,每个用户的性能应该不弱于 C N \frac{C}{N} NC
    • Pareto efficiency(PE): 帕累托最优。帕累托改善:从一种分配状态到另一种状态的变化中,在没有使任何人情况变化的前提下,使得至少一个人变得更好。帕累托最优是指集群分配无法再进行帕累托改善()。
    • envy-freedoms(EF): 无羡嫉
  • 新指标: P = T s h T i d P=\frac{T_{sh}}{T_{id}} P=TidTsh T i d T_{id} Tid 是独立完成时间, T s h T_{sh} Tsh 是共享完成时间。如果 P ≤ 1 P\le 1 P≤1 即可实现ML应用的共享激励。(此时共享完成时间小于独立完成时间)。
  • 调度器的类型:
    • 悲观调度器:可见性和分配在单个应用的粒度上是密切相关的。
    • 全乐观调度器:可见性和分配在多个应用的粒度上是密切相关的,有完整的多应用可见性,因为所有集群资源及其状态对所有应用都是可见的,所有应用程序都争夺资源,资源分配决策是由多个应用程序同时使用事务作出的。
    • 半乐观调度器:本文所用方案,当跨应用调度器同时为多个应用提供资源时,它具有多应用可见性,而资源分配时是无冲突的,保证每个应用程序对资源的独占访问。
  • 模型:

调度架构分为两个级别,包括多个应用程序调度器和一个称为ARBITER的跨应用程序调度程序:

  • 第一阶段(1~3):
    • ARBITER 要求所有应用程序提供当前完成时间公平性 P P P的估计值。
    • ARBITER 启动拍卖,将可用资源的相同非绑定资源分配给 P P P最小的 f ∈ [ 0 , 1 ] f\in[0,1] f∈[0,1]部分应用(根据逐轮过滤)。为了最小化拍卖中ML调度器与参与者的变化,THEMIS 引入一个AGENT ,它和每个ML程序调度器放在一起。AGENT作为ML程序和ARBITER之间的媒介。
    • 这些应用程序并行地检查提供的资源,每个应用程序的AGENT返回一个标价,该标价反映了对资源分配的偏好。
  • 第二阶段(4~5):
    • ARBITER 在收到这一轮的所有投标后,根据部分分配算法和剩余分配方案选择中标。然后通知每个AGENT获胜的分配(如果有的话)。
    • AGENT将分配传播给ML应用程序调度器,然后ML应用程序调度器可以决定组成作业之间的分配。
相关推荐
企业管理8MSaaS9 分钟前
如何选择适合Scrum团队的项目管理系统?
云计算·scrum
企业管理8MSaaS11 分钟前
如何在 Scrum 管理中化解团队冲突?
云计算·scrum
正在走向自律9 小时前
阿里云ESC服务器一次性全部迁移到另一个ESC
服务器·阿里云·云计算
OkeyProxy11 小时前
HTTP、HTTPS和SOCKS5代理協議
网络协议·https·云计算·代理服务器·海外ip代理
实验室里哈啤酒12 小时前
ResEmoteNet论文阅读与推理
论文阅读
LuH112413 小时前
【论文阅读笔记】Learning to sample
论文阅读·笔记·图形渲染·点云
小峰编程14 小时前
独一无二,万字详谈——Linux之文件管理
linux·运维·服务器·云原生·云计算·ai原生
終不似少年遊*16 小时前
华为云计算HCIE笔记04
网络·华为云·云计算·学习笔记·hcie·认证·数据中心
神秘的土鸡17 小时前
LGMRec:结合局部与全局图学习的多模态推荐系统
目标检测·计算机视觉·云计算
开心星人18 小时前
【论文阅读】Unlearning Backdoor Attacks in Federated Learning
论文阅读