Page 127 - 《软件学报》2020年第10期
P. 127
王康瑾 等:在离线混部作业调度与资源管理技术研究综述 3103
分配给离线作业.混部既可以满足离线作业的资源需求,也可以提升在线集群的资源利用率,因此成为提升数据
中心整体资源利用率的主流方法.
1.2 问题与挑战
由于多个作业竞争共享资源(如 CPU、缓存、内存、内存带宽、网络带宽),导致作业间出现性能干扰 [13,14] .
这种在离线混部作业间的资源竞争及性能干扰使得混部集群作业调度与资源管理变得十分复杂.围绕如何减
少和控制在离线混部作业间的性能干扰,同时提升混部集群的资源利用率,本节总结和分析了在离线混部集群
管理面临的主要问题与技术挑战.
1.2.1 在离线混部作业性能干扰问题
在离线混部作业的性能受到诸多因素的影响,呈现出性能对干扰的敏感性具有动态变化、模式多样复杂等
特点,尤其是在超大规模混部集群中动态变化的作业负载、多样化的资源依赖以及异构硬件架构等使得在离线
混部作业的性能难以建模,在各种干扰模式下的性能预测变得极具挑战性,也增加了集群作业调度和节点资源
管理的难度.
首先,如前所述,在线作业的工作负载具有动态性,同一作业的性能在不同工作负载下对于干扰的敏感性并
不相同,由于高工作负载时作业所需的计算资源高于其低负载时的需求,因而高负载下的在线作业对资源有更
强的竞争,也对干扰更加敏感;其次,运行在数据中心的在离线作业数量庞大且种类繁多,对关键资源的依赖性
因其运行逻辑不同而各异,若混合部署于同一节点上的在线作业与离线作业具有同样或类似的关键资源依赖
性,则会加剧其相互间的性能干扰;再次,节点上作业的细粒度资源共享主要依靠操作系统的资源调度机制,如
分时共享或抢占式调度等,不同的资源调度机制会使得作业在运行时具有不同的抗干扰性,例如抢占式调度可
减少作业在就绪进程等待队列中的排队时间,相比于分时共享的公平调度机制,抢占式调度的资源共享因其能
使作业具有更好的抗干扰性而更适合于在线作业;最后,随着计算机体系结构的发展,硬件架构出现了单核、多
核、异构多核等多种架构,提供了多样化的硬件级别的抗干扰机制,例如多核体系结构通过增加 CPU 的数量来
减少作业间对于 CPU 的竞争,支持 Intel CAT(cache allocation technology)的 CPU 可为不同的进程划分私有的
L3 缓存空间,从而降低作业因竞争 L3 缓存资源而引起的性能干扰.这种异构硬件架构所带来的抗干扰机制的
多样化更进一步增加了在离线混部作业性能预测的难度.
1.2.2 在离线混部作业调度问题
作为数据中心管理的关键技术,作业调度一直是学术界和产业界研究的热点领域,传统作业调度研究工作
侧重于资源公平性 [27,28] 、负载均衡、提高吞吐率 [29] 或资源利用率等多目标.对于在离线混部作业调度而言,除
了满足这些目标以外,在线作业与离线作业两种类型作业的特点及其混合部署所带来的必然的资源竞争和性
能干扰使得混部集群作业调度问题更具有挑战性.
首先,如前所述,在离线混部作业的性能受到诸多因素的影响,呈现出性能敏感性动态变化、干扰模式多样
复杂等特点,在动态负载和复杂干扰模式下的作业性能预测模型难以构建;其次,在离线作业调度机制需要充分
考虑到在线作业与离线作业两种类型作业的运行特点和性能要求,对于离线作业而言,因其运行时间短,并行度
高,需要较高的调度吞吐率和较低的调度延时;相对而言,在线作业则可接受一定程度的调度延时;最后,数据中
心中在线作业与离线作业的数量庞大且种类繁多,其混合部署的组合数量将呈现指数爆炸状态,如何在巨大的
解空间中快速搜索到满足多目标的在线作业与离线作业混部组合,进而进行作业调度,是一个难题.
1.2.3 在离线作业的共享资源隔离问题
导致性能干扰的一个重要原因是具有同样或类似关键资源依赖性的在线作业与离线作业对共享资源的无
序竞争.资源隔离技术通过软件或软硬件协同技术控制作业对资源使用的方式来降低甚至消除对资源的无序
竞争,例如 Linux CGroup 支持 CPU、内存、磁盘等资源的隔离,NUMA(non uniform memory access architecture)
架构采用多内存通道技术减少内存带宽的竞争,Intel CAT 的 Cache 隔离机制通过隔离不同作业所使用的缓存
空间缓解作业在竞争 L3 Cache 时发生的缓存相互替换.然而,在离线混部作业的资源隔离技术仍是一个难题.
首先,现有体系结构中的资源类型繁多,诸如现有的通用硬件在 TLB 快表、L1/2 缓存、缓存带宽、内存带