[发明专利]一种计算资源感知的任务调度方法有效
申请号: | 202011053340.2 | 申请日: | 2020-09-29 |
公开(公告)号: | CN112214319B | 公开(公告)日: | 2021-08-06 |
发明(设计)人: | 王毅;陈家贤;陈洁欣;廖好;周池;毛睿 | 申请(专利权)人: | 深圳大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
代理公司: | 北京三聚阳光知识产权代理有限公司 11250 | 代理人: | 刘静 |
地址: | 518000 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算 资源 感知 任务 调度 方法 | ||
1.一种计算资源感知的任务调度方法,其特征在于,包括如下步骤:
获取待处理任务对应的属性及任务执行的延迟需求,所述属性包括应用类型、任务到达时间、任务截止时间和任务的优先级;
根据应用类型对待处理任务进行分组,将各个组中不同类型的任务按截止时间进行排序,将排序后的任务根据任务执行的延迟需求,对不同类型的任务进行分组打包得到多个任务块,接着对任务块的截止时间进行更新,将任务块放入执行队列后按截止时间进行升序排序,得到基本调度方案;
根据待处理任务属性和计算资源,对基本调度方案中潜在的会错过截止时间的高优先级任务进行重新调度,得到最终的调度方案,包括:
步骤1:将所有待处理任务分为A、B、C、D四类,其中A类任务是优先级位于[a,maxPrior]中的任务,B类任务是优先级位于[b,a]的任务,C类任务是优先级位于[c,b]的任务,D类任务是指优先级位于[0,c]的任务,maxPrior为计算系统支持的最高优先级级别,采用taskNum[p]表示优先级为p的任务的数量,p∈[0,maxPrior],taskTotal表示所有任务的总数量,a=max(|0.9*maxPrior|,x1),其中x1满足b=max(|0.7*maxPrior|,x2),其中x2满足c=max(|0.4*maxPrior|,x3),其中x3满足
步骤S2:预先根据任务块的属性预分配对应的资源块,检查执行队列中是否存在可能逾期的任务块,判断与任务块对应的资源块的完成时间是否大于任务块中任务的最早截止时间,若存在可能预期的任务块则跳转到步骤S3,否则结束调度;
步骤S3:从执行队列中找到需要重新调度的任务块,并将预先为任务块分配的计算资源标记为资源块;
步骤S4:将待调度的资源块放入资源队列中,并按资源块的预期完成时间进行排序;
步骤S5:将资源块中待调度的任务A、B、C、D四个任务类别分别放入4个分类队列中;
步骤S6:对分类队列中的任务进行重新调度;
步骤S7:搜索是否存在需要重新调度的任务块,若存在则跳转步骤S3,否则跳转步骤S8;
步骤S8:如果分类队列中仍然存在待调度的任务,则将任务根据应用类型分组打包后插入到执行队列的队尾。
2.根据权利要求1所述的计算资源感知的任务调度方法,其特征在于,步骤S7中搜索是否存在需要重新调度的任务块的过程,包括:
步骤S71:判断分类队列中是否存在A类分类队列或B类任务分类队列,若存在跳转步骤S72,否则结束流程;
步骤S72:找到分类队列中A类或B类任务中最早的截止时间;
步骤S73:对于任意满足资源块的完成时间小于任务截止时间的任务块,统计任务块中A类任务的个数aTask和B类任务的个数bTask,计算执行队列中每个任务块的重要性imb,其中imb=(bTask+2*aTask)/nTask,nTask是任务块中的任务总数量;
步骤S74:统计分类队列中A类任务的个数aTask′、B类任务的个数bTask′,计算分类队列中任务的重要性imcq,其中imcq=(bTask′+2*aTask′)/(bTask′+aTask′);
步骤S75:判断imb值最低的任务块,是否满足imbimcq,若满足跳转步骤S76,否则结束流程;
步骤S76:将满足imbimcq的任务块标记为待调度的资源块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳大学,未经深圳大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011053340.2/1.html,转载请声明来源钻瓜专利网。