[发明专利]一种面向应用集群的队列任务调度方法及系统在审
申请号: | 202210062739.X | 申请日: | 2022-01-19 |
公开(公告)号: | CN114489942A | 公开(公告)日: | 2022-05-13 |
发明(设计)人: | 徐亦飞;王超勇;朱利;王正洋;秦志强;张扬;张越皖;尉萍萍 | 申请(专利权)人: | 西安交通大学 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/48;G06F9/54;G06F11/30 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 陈翠兰 |
地址: | 710049 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 应用 集群 队列 任务 调度 方法 系统 | ||
1.一种面向应用集群的队列任务调度方法,其特征在于,包括以下步骤:
S1:对创建的线下任务对象进行打分,计算当前任务得分,将计算结果保存至数据库中;
S2:查询Kubernetes集群中的job资源等待队列是否为null,如果是,执行S3;如果不是,执行S4;
S3:提交任务到Kubernetes集群中,并按得到的任务分数插入到运行队列中,任务开始运行,同时实时监控集群中队列任务的动态变化,并基于动态变化进行实时调整;
S4:获取job资源等待队列中任务的最大得分,并与当前的任务分数进行比较,如果大于当前任务得分,执行S5;如果小于当前任务得分,执行S6;
S5:修改当前任务暂停状态为True,并将当前任务插入至暂停队列中;
S6:计算当前运行队列中,分数小于当前任务的所有任务所占资源的总和,判断得出的资源总和是否满足当前任务,如果不满足,执行S5;如果满足,执行S7;
S7:修改当前任务的暂停状态为false,修改运行队列中任务的暂停状态为True;
将运行队列中修改后的任务插入到暂停队列中,将修改后的当前任务插入到Kubernetes集群中的运行队列中。
2.根据权利要求1所述的一种面向应用集群的队列任务调度方法,其特征在于,所述S1中还包括以下步骤:
将创建的线下任务对象进行反序列化为JSON字符串对象,并存储至Redis数据库中,计算当前任务得分,计算结果也存储至Redis数据库中。
3.根据权利要求1所述的一种面向应用集群的队列任务调度方法,其特征在于,所述S1中计算当前任务得分的方法包括以下步骤:
依次计算优先级维度得分、累计暂停次数维度分数、累计暂停时间维度分数和训练任务完成度维度分数;
将四个维度的分值进行权重汇总,获得总得分。
4.根据权利要求3所述的一种面向应用集群的队列任务调度方法,其特征在于,所述优先级维度得分基于公式(1)计算:
y1=x*10 (1)
其中,x表示优先级;10表示优先级每一级的分数,优先级的等级分为1-10,优先级分数总值为10-100;
所述累计暂停次数维度分数基于公式(2)计算得到:
其中,x表示暂停次数;
所述累计暂停时间维度分数基于公式(3)得到:
其中,x表示该任务累计暂停时间,单位为分钟;
所述训练任务完成度维度分数基于公式(4)-(5)得到:
y4=t3*100 (5)
其中x1表示训练任务累计执行时间,x2表示总预估执行时间,x3表示累计执行epoch次数;x4表示总的epoch次数;
所述将四个维度的分值进行权重汇总基于公式(6)计算得到:
y=w1*y1+w2*y2+w3*y3+w4*y4 (6)
其中,w1表示优先级维度的权重;w2表示累计暂停次数维度权重;w3表示累计暂停时间维度权重;w4表示训练任务完成度维度权重。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210062739.X/1.html,转载请声明来源钻瓜专利网。