CSE研究人员最近发表的研究可以使训练机器学习(ML)模型更公平,更快速。借助名为AlloX的工具,Mosharaf Chowdhury教授和美国石溪大学的一个团队开发了一种新方法,可以在使用多个不同类型的计算硬件(例如CPU,GPU和专用工具)的数据中心中合理地调度大量ML作业。加速器。随着这些所谓的异构集群逐渐成为规范,像AlloX这样的公平调度系统将成为其高效运营所必需的。
该项目是Chowdhury实验室的新步骤,该实验室最近发布了许多工具,旨在加快ML模型的训练和测试过程。他们过去的项目Tiresias和Salus加速了多种规模的GPU资源共享:既在单个GPU(Salus)内,又在群集中的多个GPU(Tiresias)之间。
但是AlloX解决了异构集群,该集群带来了一个新问题:不同的硬件最适合不同类型的计算任务。尽管对数据集群的不同工作的期望值总是不同的,但对于给定的工作,哪种硬件最合适也有所不同。
多种不同类型的硬件可能能够运行一个给定的模型,但是根据其计算特性,每个模型可以具有截然不同的速度。如果需要大量的顺序执行,那么GPU不太适合,但是如果它严重依赖矩阵乘法,则CPU不能很好地工作。随着新加速器的不断开发,不同的通用操作总是在寻找更好的选择来快速执行。
Chowdhury说:“每个工作负载都有其独特的特性,可以使独特的加速器发光。这就是为什么架构研究人员正在建造这么多新的加速器的原因。”
这种不匹配的硬件提出了数据集群公平性问题的新方面。在工作量不断增加的情况下,调度程序不仅必须寻找最佳的平均运行时间以保持中心运行,而且还必须寻找不会随意拖延某些工作以追求整体性能的计划。按照Chowdhury的说法,计算能力的分布导致不同个人用户的性能结果差异很大。
他说:“如果集群不公平,那么某些人将受到太多惩罚,他们的计算时间将任意增加。”
在具有多种类型的计算硬件的异构集群的情况下,解决每个作业的最佳需求所涉及的数学变得越来越复杂。
在他们的解决方案中,研究人员将问题重新定义为两部分匹配问题,其中图的顶点可以分为两个独立的集合,以便每个边将一个顶点连接到另一个顶点。两组一方面成为工作,另一方面成为可用计算资源的总列表。他们在Kubernetes(一个广泛使用的集群管理器)上实现了此调度程序,该集群管理器具有一个小型CPU-GPU混合集群和大规模仿真。
他们的发现表明,当系统负载较高时,AlloX可以将平均作业完成时间减少多达95%,同时仍可提供公平性并防止作业匮乏。这种性能与以前专注于平均作业运行时间的实现相匹配或有所改进,而没有提供公平性。
乔杜里(Chowdhury)使用小组先前的系统Tiresias解决了平均运行时间问题。该调度程序的设计目的是最大程度地缩短平均作业完成时间,同时考虑到各种限制因素,但并未考虑公平性问题。但是研究人员在他们关于AlloX的论文中表明,即使解决了公平的资源使用问题,也可以实现这种快速平均。
Chowdhury解释说:“我们证明您可以做到公平,您的平均数仍将保持接近优化的平均数。”“它正在集群中进行资源的重新分配。平均工作完成时间将得到改善,因为遭受最严重影响的人将获得显着改善。”
AlloX与Salus等其他最近的项目(最近在MLSys会议上发表)一起,是Chowdhury小组对繁忙的AI资源管理领域的最新贡献之一。实验室在此领域的最终目标是优化模型超参数调整,训练,测试和推理过程的每个步骤。
Chowdhury说:“ AI或ML的整个生命周期,它们必须经历的不同阶段-我们想从资源管理的角度知道如何最好地管理每个步骤。”
在2020年EuroSys会议上,论文“ AlloX:混合集群中的计算分配”中介绍了AlloX。