CN117707747A - 基于资源使用率预测的作业超量分配调度方法及系统 - Google Patents
基于资源使用率预测的作业超量分配调度方法及系统 Download PDFInfo
- Publication number
- CN117707747A CN117707747A CN202410166795.7A CN202410166795A CN117707747A CN 117707747 A CN117707747 A CN 117707747A CN 202410166795 A CN202410166795 A CN 202410166795A CN 117707747 A CN117707747 A CN 117707747A
- Authority
- CN
- China
- Prior art keywords
- job
- resource utilization
- utilization rate
- jobs
- resource
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 238000012544 monitoring process Methods 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 10
- 238000007635 classification algorithm Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000012549 training Methods 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000010353 genetic engineering Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000004634 pharmacological analysis method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供了基于资源使用率预测的作业超量分配调度方法及系统,涉及高性能计算的作业调度技术领域,若目标作业为长作业,则将长作业注册到资源使用率预测模块的工作队列中,获取实时的各节点的资源使用率数据,并输入至资源使用率预测模块预测所有运行长作业的节点未来设定时间各类资源的使用率情况,并使用调度算法根据资源使用率预测模型输出的预测数据确定最优运行节点;若目标作业为短作业,则根据其总体资源使用率的估计值在所有运行长作业的节点中进行匹配,并分配到最佳匹配节点;本公开有效解决了集群中的资源闲置问题。
Description
技术领域
本公开涉及高性能计算的作业调度技术领域,具体涉及基于资源使用率预测的作业超量分配调度方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
高性能计算(High Performance Computing,HPC)集群可以快速高效地完成复杂的科学计算任务,已经逐渐成为气象、药理分析、基因工程、人工智能等科研领域不可或缺的基础设施,规模迅速增长。由于HPC集群采用的调度系统普遍存在资源预留现象,其保守地按照用户提交的申请为作业分配资源,而不考虑作业对各类资源的使用率在时间和空间上的分布特征,导致集群资源的整体利用率较低。如何避免这种现象,提高集群资源利用率成为了一个亟待解决的问题。
针对由调度策略导致的集群资源利用率过低的问题,现有的优化方法大多依赖于对作业资源需求的先验分析,使用统计学方法计算作业的整体需求并将多个不会产生冲突的作业打包进行调度,从而在一定程度上提升集群的资源利用率。然而由于先验分析具有很大的局限性,为了尽量避免冲突,实际应用中调度策略往往会趋于保守以避免产生性能损失,进而导致集群资源利用率的提升幅度无法达到预期效果。
发明内容
本公开为了解决上述问题,提出了基于资源使用率预测的作业超量分配调度方法及系统,通过将作业划分为长作业与短作业,并分别对其采用实时预测和先验分析两种不同的预测方式,提高资源使用率预测的时效性和准确度。对长作业而言,使用基于深度学习的时间序列预测模型更好地捕捉其运行期间资源使用率的阶段性、周期性等特征,为实施超量分配提供对可用资源的有效预测;对短作业而言,评估其整体的资源需求情况,对在超额调度中避免资源冲突更有意义。
根据一些实施例,本公开采用如下技术方案:
基于资源使用率预测的作业超量分配调度方法,包括:
获取历史作业,通过相似度匹配获取对历史作业的总体资源使用率和运行时间的估计值,根据运行时间将历史作业划分为长作业和短作业;
对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度;
接收新目标作业,将新目标作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中;
若新目标作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入资源使用率预测模型的工作队列,预测工作队列中的节点在未来一段时间内的资源使用率数据;
若新目标作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值,并对其执行超量分配调度。
根据一些实施例,本公开采用如下技术方案:
基于资源使用率预测的作业超量分配调度系统,包括:
作业分类模块,用于获取历史作业,通过相似度匹配获取对历史作业的总体资源使用率和运行时间的估计值,根据运行时间将历史作业划分为长作业和短作业;对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度;接收新目标作业,将新目标作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中;
资源使用率预测模块,用于若新目标作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入资源使用率预测模型的工作队列,预测工作队列中的节点在未来一段时间内的资源使用率数据;
若新目标作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值;
作业调度模块,用于对长作业使用调度算法根据资源使用率预测模块提供的预测数据确定其最优运行节点,短作业执行超量分配调度。
与现有技术相比,本公开的有益效果为:
本公开提供了一种基于资源使用率预测的作业超量分配调度方法,通过将作业划分为长作业与短作业,并分别对其采用实时预测和先验分析这两种不同的预测方式,提高了资源使用率预测的时效性和准确度。对长作业而言,使用基于深度学习的时间序列预测模型能够更好地捕捉其运行期间资源使用率的阶段性、周期性等特征,为实施超量分配提供对可用资源的有效预测;对短作业而言,建模其短期资源需求难度较高且意义不大,而评估其整体的资源需求情况对在超额调度中避免资源冲突更有意义。
本公开基于上述预测方法设计了新的超量分配调度算法,该算法优先满足长作业的资源需求,当长作业无法充分利用资源时,基于其资源使用率预测值寻找匹配度最高的短作业进行填充。还提供了一种二次调度算法,当出现由于分类或预测错误导致的资源争用时,通过二次调度对其进行重新分配。实验证明这种方式能够在避免性能损失的同时大幅提高集群资源利用率,有效解决了集群中的资源闲置问题。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1为本公开实施例提供的基于资源使用率预测的超量分配调度方法的流程图;
图2为本公开实施例提供的一种基于运行时间的作业类别划分与超量分配调度方法示意图;
图3为本公开实施例提供的基于作业相似度的类别划分流程示意图。
图4为本公开实施例提供的未知类别作业处理流程示意图。
图5为本公开实施例提供的短作业调度流程示意图。
图6为本公开实施例提供的基于资源使用率预测的超量分配调度系统的整体架构图。
具体实施方式
下面结合附图与实施例对本公开作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例1
本公开的一种实施例中提供了一种基于资源使用率预测的作业超量分配调度方法,步骤包括:
步骤一:获取历史作业,通过相似度匹配获取对历史作业的总体资源使用率和运行时间的估计值,根据运行时间将历史作业划分为长作业和短作业;
步骤二:对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度;
步骤三:接收新目标作业,将新目标作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中;
步骤四:若新目标作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入资源使用率预测模型的工作队列,预测工作队列中的节点在未来一段时间内的资源使用率数据;
若新目标作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值,并对其执行超量分配调度。
作为一种实施例,本公开的基于资源使用率预测的作业超量分配调度方法,具体的实施步骤如下:
1.历史作业数据分类:预先采集集群一段时间内的作业日志信息以及其中每条作业对应的各类资源使用率数据,并通过计算各作业之间资源使用率数据的相似度对其进行分类。
2.训练资源使用率预测模型:使用步骤1中获得的长作业分类及其对应的资源使用率数据,为每一种类型的长作业训练一个资源使用率预测模型,用于预测未来提交的同类型作业的资源使用率情况。
3.新作业分类:接收新作业,将新作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中。
4.处理长作业:如果新作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,然后将调度的目标节点加入资源使用率预测模型的工作队列,该模型会持续预测工作队列中的节点未来一段时间内的资源使用情况。
5.处理短作业:如果新作业为短作业,则按照步骤3中获得的类别,统计该类别中所有作业的资源使用率,并使用经过归一化处理后的作业相似度作为权重,对其进行加权求和,作为当前作业整体资源使用率的估计值。
6.处理特殊作业:如果新作业无法通过步骤3找到与其相似的类别,则首先对其执行常规调度,满足其资源需求,然后根据其运行期间的资源使用率监测数据对其做进一步处理。
7.实施超量分配调度:使用步骤5提供的对短作业资源使用率的估计值与步骤4中由资源使用率预测模型给出的预测结果进行匹配,寻找匹配度最高的节点作为目标节点并执行调度。如果没有节点能够满足当前待调度作业的资源需求,则对其采用常规调度方法。
8.资源冲突检测与二次调度:为所有实施了超量分配调度的目标节点维护一个作业列表,并实时监控这些节点的资源使用率信息,如果某个节点发生了资源冲突,则从列表中选取最后被分配的作业对其执行二次调度,以消除冲突。
进一步的,首先参见图1,图1展示了本发明提供的超量分配调度方法的实施流程图,共包括6个步骤:
步骤S101:历史作业分类。预先采集集群一段时间内的作业日志信息以及其中每条作业对应的资源使用率数据,并通过计算各作业之间资源使用率数据的相似度对其进行分类。
作业日志信息包括作业所属的用户、队列和资源池,作业申请的节点数量、核心数量和其它资源数量,以及作业的名称、工作目录与运行时间;资源使用率数据包括CPU使用率、系统负载、内存使用率、磁盘I/O速率、网络I/O速率、I/O请求频率等。
历史作业分类中,需要首先根据作业运行时间将作业划分为长作业和短作业两种类别;然后对长作业使用动态时间归整(DTW)算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值如平均值、中位数、四分位数以及最大值和最小值的相似度。
假设是作业用到的所有类型资源的集合,/>是/>中每种资源的权重组成的集合,具体权重值可根据业务类型进行设定,作业/>和/>的资源使用率相似度计算过程如下:
其中在长作业和短作业中分别为动态时间规整算法和欧式距离算法,/>和/>分别表示作业/>和/>对同一种资源/>的使用率数据。最后分别对长作业和短作业使用K均值聚类算法依据作业相似度划分出更具体的作业类别。
由于在划分长短作业时,部分作业会因为运行时间与划分边界接近而导致分类不稳定,为了避免影响后续过程,可以将作业按运行时长划分为更多类别,并在后续调度中以不相邻的类别作为超量分配的填充目标。如图2所示,本实施例将作业划分为编号为的四个类别,并在调度中允许使用/>三种超量分配调度方式。
步骤S102:训练资源使用率预测模型。使用步骤S101中获得的长作业分类及其对应的资源使用率数据训练资源使用率预测模型,用于预测未来提交的同类型作业的资源使用率情况。
步骤S102所述资源使用率预测模型本质上是一种时间序列预测模型,有多种模型可供选择,本实施例采用的模型为TFT(Temporal Fusion Transformer)模型,其以一段时间窗口内的多元时序数据作为输入,在内部通过注意力机制编码不同特征列,并使用LSTM模块进行序列预测,最终输出目标数据分布的置信区间。在训练模型时,需要为预先划分的每一个类别分别训练一个模型,以确保后续预测的准确度。
步骤S103:接收新作业。接收用户提交的新作业,这是调度过程的开始。
步骤S104:作业相似度分类。将新作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中。
如图3所示,作业相似度分类主要包括以下步骤:
步骤S1041:接收新作业。获取新作业的基本日志信息,包括作业所属的用户、队列和资源池,作业申请的节点数量、核心数量和预期运行时间,以及作业的名称、工作目录。
步骤S1042:遍历历史作业集合。依次对历史作业集合中的每一个作业执行后续步骤,最终找到与当前作业最相似的作业。
步骤S1043:模板相似度匹配。以新作业所属用户和资源池为模板匹配历史作业中具有相同属性的作业,生成目标作业集合 J;
步骤S1044:数值相似度匹配。在上一步产生的目标作业集合J中,使用K最邻近(KNN,K-NearestNeighbor)分类算法以新作业请求的节点数、核心数以及运行时长为目标找出相似作业集合。
步骤S1045:判断是否存在相似作业。如果集合为空,则当前不存在相似作业,跳转到步骤S105执行未知类型作业处理流程;否则执行步骤S1046。
步骤S1046:目录相似度匹配。计算新作业与其相似作业集合中所有作业的工作路径的字符串距离,获得其中距离最短的作业/>,以该作业的类别作为新作业类别。
步骤S1047:根据作业类别执行不同操作。如果新作业的类别属于长作业,则跳转到步骤S106对其执行长作业调度流程,否则跳转到步骤S107对其执行短作业调度流程。
步骤S105:处理未知类别作业。如果新作业无法通过相似度匹配找到与其相似的类别,则首先对其执行常规调度,满足其资源需求,然后根据其运行期间的资源使用率监测数据对其做进一步处理。
具体参照图4,未知类别作业处理流程如下所述:
步骤S1051:接收未知类别作业。从步骤S104接收未知类型作业。
步骤S1052:执行常规调度并记录运行时数据。依据用户提供的作业需求信息为其提供充足的资源,并在作业运行期间记录其对各类资源的使用情况。
步骤S1053:建立新类别并累积同类作业。为该作业建立一个新的作业类别,并在后续调度过程中逐渐添加相同类型的作业到该类别中。
步骤S1054:判断是否为长作业。如果该类型作业为短作业,则不需要为其训练资源使用率预测模型;否则,继续执行步骤S1055,为该类型作业训练资源使用率预测模型。
步骤S1055:训练资源使用率预测模型。在该类型作业的数量超过阈值时为其训练资源使用率预测模型,根据实验情况,阈值大于4时模型预测效果较好。
步骤S106:处理长作业。如果新作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入到步骤S102中生成的资源使用率预测模型的工作队列,该模型会持续预测工作队列中的节点在未来一段时间内的资源使用率数据。
步骤S107:处理短作业。如果新作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值,并对其执行超量分配调度。
如图5所示,短作业的调度流程主要包含以下步骤:
步骤S1071:接收短作业。从步骤S104接收短作业。
步骤S1072:统计资源使用率数据。按照步骤S104中获得的作业类别统计该类别中所有作业的资源使用率,并使用经过归一化处理后的作业相似度作为权重,对其进行加权求和,作为当前作业资源使用率的估计值。
所述的相似度权重通过以下过程获得,假设目标作业类别中存在N个作业,其与目标作业的距离可以表示为,其中每个元素/>可以通过如下表达式求得:
其中分别为作业申请的核心数、节点数、运行时间的欧式距离,/>为作业工作路径的字符串距离,p、q、r、m为各距离所对应的权重。进一步处理距离得到相似度集合/>:
此时距离越小的作业相似度越高。最后通过归一化指数函数()将相似度归一化得到相似度权重集合/>:
步骤S1073:遍历目标节点。所述目标节点为资源使用率预测模型的工作队列中的所有节点。
步骤S1074:获取节点资源使用率数据。通过资源使用率预测模型获取目标节点未来一段时间的资源使用率预测数据。
步骤S1075:计算作业资源需求匹配度并记录最优匹配节点。使用从步骤S1072获得的短作业资源使用率预测数据与从步骤S1074获得的节点资源使用率预测数据计算匹配度,对所有目标节点执行此操作并从中寻找最优匹配节点。
假设作业使用的主要资源集合为,则查找最优匹配节点的过程如下:
首先通过步骤S1072获取待调度作业在运行过程中的资源使用率估计值,表示为集合,集合中的任意元素/>是由对指定类型资源/>的使用率估计值扩展成的序列,长度与作业的估计运行时间相同.
然后通过步骤S1073和S1074获取所有目标节点的资源使用率预测值,表示为集合,集合中的任意元素/>是由对指定类型资源/>的预测值的构成的序列,其长度被截断为与/>一致。
假设可用于超量分配调度的目标节点集合为,则对其中任一节点/>实施调度后该节点对所有资源的使用率峰值为:
其中和/>表示节点/>对资源/>的使用率序列,/>是由所有节点的资源使用率峰值构成的集合。
为了避免资源冲突,应该选择资源使用率峰值最小的节点即对应的节点作为执行调度的目标节点。
步骤S1076:执行调度。如果存在满足作业资源需求的最优匹配节点,则将新作业调度到该节点执行;否则退回到常规调度方案。
步骤S108:资源监视与二次调度。为所有实施了超量分配调度的目标节点维护一个作业列表,并实时监控这些节点的资源使用率信息,如果监测到某个节点发生资源冲突,则从该节点对应的作业列表中选取最后被分配的作业,将其重新调度到资源充足的目标节点上,从而消除冲突。
实施例2
本公开的一种实施例中提供了一种基于资源使用率预测的作业超量分配调度系统,包括:
作业分类模块,用于获取历史作业,通过相似度匹配获取对历史作业的总体资源使用率和运行时间的估计值,根据运行时间将历史作业划分为长作业和短作业;对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度;接收新目标作业,将新目标作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中;
资源使用率预测模块,用于若新目标作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入资源使用率预测模型的工作队列,预测工作队列中的节点在未来一段时间内的资源使用率数据;
若新目标作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值;
作业调度模块,用于对长作业使用调度算法根据资源使用率预测模块提供的预测数据确定其最优运行节点,短作业执行超量分配调度。
另外,如图6所示,所述基于资源使用率预测的作业超量分配调度系统包括包括作业分类模块601、资源使用率预测模块602、作业调度模块603以及资源监视模块604;
模块601:作业分类模块。获取用户提交的新作业并通过相似度匹配和概率统计方法获得对新作业的总体资源使用率和运行时间的估计值。根据运行时间将作业分为长作业或短作业,将长作业注册到资源使用率预测模块602的工作队列中,然后将所有作业交给作业调度模块603进行调度。
模块602:资源使用率预测模块。该模块的工作可以分为两个阶段:
在系统上线前,资源使用率预测模块需要通过资源监视模块604预先采集一段时间内的资源使用率数据,用于训练相应的预测模型。
在系统上线后,该模块维护一个存储所有长作业及其所在节点的信息的工作队列,持续从资源监视模块604获取工作队列中各节点的资源使用率数据,并使用资源使用率预测模块602预测这些节点未来一段时间内对各类资源的使用情况,预测数据会发送到作业调度模块603中,之后将调度信息发送给到HPC集群600中作为实施超量分配调度的重要参考,之后再将HPC的运行中的各节点的资源使用率数据上传至资源监视模块604中,不断进行重复的工作。
同时,用户提交的新作业,例如作业1、作业2....作业N,病发送至作业分类模块601中,并通过相似度匹配和概率统计方法获得对新作业的总体资源使用率和运行时间的估计值,根据运行时间将作业分为长作业或短作业,将长作业注册到资源使用率预测模块602的工作队列中,然后将所有作业交给作业调度模块603进行调度。
模块603:作业调度模块。从作业分类模块601获取待调度的目标作业,并使用调度算法根据资源使用率预测模块提供的预测数据确定其最优运行节点。通过资源监视模块604获取实时资源使用率数据,在检测到资源冲突时实施二次调度消除冲突。
模块604:资源监视模块。被配置为采集HPC机房中每个计算节点的资源使用率数据,这些数据会被提供给资源使用率预测模块602和作业调度模块603用于实现资源使用率预测以及二次调度。
本实施例中,资源使用率数据包括CPU使用率、系统负载、内存使用率、磁盘I/O速率、网络I/O速率、I/O请求频率等。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
Claims (10)
1.基于资源使用率预测的作业超量分配调度方法,其特征在于,包括:
获取历史作业,通过相似度匹配获取对历史作业的总体资源使用率和运行时间的估计值,根据运行时间将历史作业划分为长作业和短作业;
对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度;
接收新目标作业,将新目标作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中;
若新目标作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入资源使用率预测模型的工作队列,预测工作队列中的节点在未来一段时间内的资源使用率数据;
若新目标作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值,并对其执行超量分配调度。
2.如权利要求1所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,预先采集集群一段时间内的作业日志信息以及其中每条作业对应的资源使用率数据,并通过计算各作业之间资源使用率数据的相似度对其进行分类,首先根据作业运行时间将作业划分为长作业和短作业两种类别;然后对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度。
3.如权利要求2所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,作业日志信息包括作业所属的用户、队列和资源池、作业申请的节点数量、核心数量和其它资源数量,以及作业的名称、工作目录与运行时间;资源使用率数据包括CPU使用率、系统负载、内存使用率、磁盘I/O速率、网络I/O速率以及I/O请求频率。
4.如权利要求1所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,接收新目标作业,包括:接收新作业,将新作业的基本信息与预先分类的历史作业进行相似度比较,遍历历史作业集合,依次对历史作业集合中的每一个作业执行相似性匹配步骤,最终找到与当前作业最相似的作业。
5.如权利要求4所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,相似度匹配包括:模板相似度匹配、数值相似度匹配以及目录相似度匹配,所述模板相似度匹配包括以新目标作业所属用户和资源池为模板匹配历史作业中具有相同属性的作业,数值相似度匹配为使用K最邻近分类算法以新作业请求的节点数、核心数以及运行时长为目标找出相似作业集合,目录相似度匹配为计算新目标作业与其相似作业集合中所有作业的工作路径的字符串距离,获得其中距离最短的作业,以该作业的类别作为新目标作业类别。
6.如权利要求1所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,若新目标作业的基本信息与预先分类的历史作业进行相似度比较后,无法找到与其相似的类别,则首先对其执行常规调度,满足其资源需求,然后根据其运行期间的资源使用率监测数据对其做未知类别作业处理。
7.如权利要求1所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,若新目标作业为短作业,统计资源使用率数据,按照获得的作业类别统计该类别中所有作业的资源使用率,并使用经过归一化处理后的作业相似度作为权重,对其进行加权求和,作为当前作业资源使用率的估计值。
8.如权利要求7所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,遍历目标节点,所述目标节点为资源使用率预测模型的工作队列中的所有节点,获取节点资源使用率数据,通过资源使用率预测模型获取目标节点未来一段时间的资源使用率预测数据,计算作业资源需求匹配度并记录最优匹配节点,使用获得的短作业资源使用率预测数据与获得的节点资源使用率预测数据计算匹配度,对所有目标节点执行此操作并从中寻找最优匹配节点。
9.如权利要求8所述的基于资源使用率预测的作业超量分配调度方法,其特征在于,查找最优匹配节点的方法包括:
首先获取新目标作业在运行过程中的资源使用率估计值,然后获取所有目标节点的资源使用率预测值,假设用于超量分配调度的目标节点集合,则计算对其中任一节点实施调度后该节点对所有资源的使用率峰值。
10.基于资源使用率预测的作业超量分配调度系统,其特征在于,包括:
作业分类模块,用于获取历史作业,通过相似度匹配获取对历史作业的总体资源使用率和运行时间的估计值,根据运行时间将历史作业划分为长作业和短作业;对长作业使用动态时间归整算法衡量其资源使用率曲线的相似度,对短作业使用欧式距离度量其各类资源的总体使用率数值的相似度;接收新目标作业,将新目标作业的基本信息与预先分类的历史作业进行相似度比较,给出新作业的类别,并将新作业加入此类别中;
资源使用率预测模块,用于若新目标作业为长作业,则在调度时按照用户提出的资源需求为其分配充足的资源,并将调度的目标节点加入资源使用率预测模型的工作队列,预测工作队列中的节点在未来一段时间内的资源使用率数据;
若新目标作业为短作业,则统计所有相似作业的资源使用率数据作为当前作业的资源使用率预测值;
作业调度模块,用于对长作业使用调度算法根据资源使用率预测模块提供的预测数据确定其最优运行节点,短作业执行超量分配调度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410166795.7A CN117707747B (zh) | 2024-02-06 | 基于资源使用率预测的作业超量分配调度方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410166795.7A CN117707747B (zh) | 2024-02-06 | 基于资源使用率预测的作业超量分配调度方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117707747A true CN117707747A (zh) | 2024-03-15 |
CN117707747B CN117707747B (zh) | 2024-05-24 |
Family
ID=
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415777A (zh) * | 2018-03-21 | 2018-08-17 | 常州信息职业技术学院 | 一种基于聚类特征提取的云计算集群任务负载预测方法 |
CN108984301A (zh) * | 2018-07-04 | 2018-12-11 | 中国人民解放军国防科技大学 | 自适应云资源调配方法和装置 |
WO2020206705A1 (zh) * | 2019-04-10 | 2020-10-15 | 山东科技大学 | 一种基于集群节点负载状态预测的作业调度方法 |
CN113448808A (zh) * | 2021-08-30 | 2021-09-28 | 北京必示科技有限公司 | 一种批处理任务中单任务时间的预测方法、系统及存储介质 |
CN114579270A (zh) * | 2022-02-24 | 2022-06-03 | 北京理工大学 | 一种基于资源需求预测的任务调度方法及系统 |
CN115146865A (zh) * | 2022-07-22 | 2022-10-04 | 中国平安财产保险股份有限公司 | 基于人工智能的任务优化方法及相关设备 |
CN117149392A (zh) * | 2023-09-25 | 2023-12-01 | 中国工商银行股份有限公司 | 资源处理方法、装置、服务器及存储介质 |
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415777A (zh) * | 2018-03-21 | 2018-08-17 | 常州信息职业技术学院 | 一种基于聚类特征提取的云计算集群任务负载预测方法 |
CN108984301A (zh) * | 2018-07-04 | 2018-12-11 | 中国人民解放军国防科技大学 | 自适应云资源调配方法和装置 |
WO2020206705A1 (zh) * | 2019-04-10 | 2020-10-15 | 山东科技大学 | 一种基于集群节点负载状态预测的作业调度方法 |
CN113448808A (zh) * | 2021-08-30 | 2021-09-28 | 北京必示科技有限公司 | 一种批处理任务中单任务时间的预测方法、系统及存储介质 |
CN114579270A (zh) * | 2022-02-24 | 2022-06-03 | 北京理工大学 | 一种基于资源需求预测的任务调度方法及系统 |
CN115146865A (zh) * | 2022-07-22 | 2022-10-04 | 中国平安财产保险股份有限公司 | 基于人工智能的任务优化方法及相关设备 |
CN117149392A (zh) * | 2023-09-25 | 2023-12-01 | 中国工商银行股份有限公司 | 资源处理方法、装置、服务器及存储介质 |
Non-Patent Citations (2)
Title |
---|
KUZNETSOVA, M.V.: "Local Forecasting of Time Series with Invariant Transformations", INFORMATION TECHNOLOGIES VOLUME:22 ISSUE:6, 6 April 2017 (2017-04-06), pages 457 - 462 * |
周晓慧;余杰;: "基于混合型网格资源调度算法的研究", 中国水运(下半月), no. 02, 20 February 2009 (2009-02-20), pages 109 - 110 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Deshmukh et al. | Collaborative learning based straggler prevention in large-scale distributed computing framework | |
WO2021179462A1 (zh) | 基于改进量子蚁群算法的Spark平台任务调度方法 | |
US10713073B2 (en) | Systems and methods for identifying cloud configurations | |
CN110192393A (zh) | 大规模的实时视频分析 | |
CN110389820B (zh) | 一种基于v-TGRU模型进行资源预测的私有云任务调度方法 | |
CN112667376A (zh) | 任务调度处理方法、装置、计算机设备及存储介质 | |
US20090077235A1 (en) | Mechanism for profiling and estimating the runtime needed to execute a job | |
CN102667724A (zh) | 利用加速器的、目标指向的工作负载性能管理 | |
WO2021185206A1 (zh) | 集群任务的资源分配方法及装置、计算机装置及存储介质 | |
CN111258767A (zh) | 复杂系统仿真应用的云计算资源智能分配方法与装置 | |
KR101471749B1 (ko) | 클라우드 서비스의 가상자원 할당을 위한 퍼지 로직 기반의 자원평가 장치 및 방법 | |
CN105607952B (zh) | 一种虚拟化资源的调度方法及装置 | |
JP2016042284A (ja) | 並列計算機システム、管理装置、並列計算機システムの制御方法及び管理装置の制御プログラム | |
CN109636212B (zh) | 作业实际运行时间的预测方法 | |
US20160062929A1 (en) | Master device, slave device and computing methods thereof for a cluster computing system | |
JP7234702B2 (ja) | 情報処理装置、コンテナ配置方法及びコンテナ配置プログラム | |
CN114666224A (zh) | 业务资源容量动态分配方法、装置、设备及存储介质 | |
CN115269108A (zh) | 一种数据处理方法、装置及设备 | |
CN111385142A (zh) | 基于Kubernetes的自适应伸缩web容器的方法 | |
Maroulis et al. | A holistic energy-efficient real-time scheduler for mixed stream and batch processing workloads | |
CN112416602B (zh) | 一种分布式数据流资源弹性伸缩增强插件及增强方法 | |
CN117707747B (zh) | 基于资源使用率预测的作业超量分配调度方法及系统 | |
CN117707747A (zh) | 基于资源使用率预测的作业超量分配调度方法及系统 | |
US20210004675A1 (en) | Predictive apparatus and method for predicting workload group metrics of a workload management system of a database system | |
Park et al. | Queue congestion prediction for large-scale high performance computing systems using a hidden Markov model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |