面向生物基因测序计算任务的多队列回填作业调度方法_3

文档序号:9929430阅读:来源:国知局
[0084] 其他情况,则允许继续向队列k投递作业。
[0085] 还可以采用优化迀移策略,不将所有作业都投向其他队列,保留一部分作业在原 队列中运行。当满足队列k负载均衡的条件时,进行作业迀移的优化。优化迀移策略如下:
[0086] 将队列k中的等待作业按照作业使用的资源从小到大排序。
[0087] 遍历等待作业,判断作业i是否能立即在队列k中运行。
[0088] 若能立即运行,将作业i分配至队列k对应的节点中运行。
[0089] 若不能立即运行,遍历所有队列,将作业i转为投向负载最低的队列。
[0090] 按照作业使用的资源进行排序时,由于作业还没有执行,同样按照用户预估的值 进行排序。作业排序的标准为先按照CHJ资源进行排序,再按照内存资源进行排序。
[0091] 采用步骤S1能够进行基于内存资源优化的单队列回填作业调度。综合步骤S1、S2 即可以进行多对列的回填作业调度。
[0092] 上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的 限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化, 均应为等效的置换方式,都包含在本发明的保护范围之内。
【主权项】
1. 面向生物基因测序计算任务的多队列回填作业调度方法主要包括以下步骤: 51、 基于内存资源优化的回填调度:在传统的回填(Backfilling)调度的基础上进行改 进,设计基于内存资源优化的回填调度;在作业调度的过程中,充分考虑了作业的CPU与内 存属性,根据这两个属性进行作业的资源预留与回填,从而尽可能地提高系统的利用率和 使作业的执行效率。在利用资源预留形成的资源空隙进行回填时,保证不影响作业等待队 列中第一个作业的运行; 52、 多对列负载均衡回填调度:在内存资源优化回填调度的基础上,以多对列的方式进 行回填调度,并且提供了队列级别的负载均衡,主要用于解决由于多对列的划分造成的作 业等待与资源浪费的问题,平衡各队列间的负载,同时提供了改进方案:动态选择阈值策略 与优化迀移策略。2. 根据权利要求1所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述步骤S1中:记waitList为作业等待队列,runList为作业运行队列,resList 为作业预约队列;系统资源集合为R,其中包含系统的计算节点;进行作业调度的具体流程 如下: SI 1:按照作业的提交时间顺序,提取waitList中的第一个作业i ; S12:判断作业i能否在R中直接运行:即在当前的系统资源中,能够找到满足当前作业 资源需求的节点,也就是说该节点拥有的空闲资源(CPU以及内存)大于作业运行需要的资 源;若节点已预约作业,则还需判断将该作业分配到这个节点上运行是否影响已预约的作 业。 S13:若作业i不能直接运行,判断能否对i进行预约,即在R中寻找节点为i进行资源预 留; 所述步骤S13中规定每个节点最多有一个作业预约;如果还有节点未预约作业,则可以 进行作业预约,进入作业预约步骤。 S14:若作业i能够在某个节点上运行,则可以将该作业进行回填,进入作业回填步骤。 S15:若不能对该作业i进行预约或者回填,贝lj遍历waitList,提取下一个作业,返回至 S12继续执行。3. 根据权利要求2所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述步骤S12中判断不对预约作业造成影响的标准为:该作业在预约作业执行之 前结束,或者该作业需求的资源小于预约作业执行后节点的空闲资源。4. 根据权利要求2所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述作业预约步骤流程为: stepl:计算作业i所需的资源:计算该作业运行需要的CPU核数、最大内存以及预计运 行时间; step2:遍历R的节点列表,计算未预约作业的节点能够运行作业i的最早时间; 在这些节点中,随着已运行作业的完成,节点中剩余的空闲资源越来越多,节点空闲资 源开始大于该作业需求资源的时刻,即能够运行该作业的最早时间; step3:比较各节点能够运行作业i最早时间,获取这个时间最小的节点; step4:选择该节点为预约作业i的节点,将作业从waitList移动至resList,在节点上 为作业预留资源,即将作业需求的资源预先分配到节点上,记录能够运行该作业的最早时 间; step5:返回主程序。5. 根据权利要求2所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述作业回填步骤流程为: (1) :计算作业i所需的资源; (2) :遍历R的节点列表:遍历节点列表之前,首先将节点列表按节点的CPU负载大小排 序,即按照节点当前的CPU利用率排序,将节点按照CPU负载排序,能够保证作业优先在负载 较低的节点上运行,有利于系统的负载均衡; (3) :获取负载最小的节点,将作业i回填至该节点,在节点上为作业分配资源,将作业 从 waitList 移动至 runList; (4) :返回主程序。6. 根据权利要求1所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述步骤S2中:定义队列k的负!其中jn表示队列中运行作业i使用 的资源,nrj表示队列包含的节点j的资源总量,选取一个大小在区间(0,1)的阈值Lthres,多 对列负载均衡调度策略为: 当Lk>Lthr』寸,停止向队列k投递作业,遍历所有队列,将原本投递至队列k的作业转为 投向负载最低的队列;当Lk<Lthm时,允许继续向队列k投递作业。7. 根据权利要求1所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述步骤S2中定义:队列k的作业迀移代价Cmk= Σ jtrijriw;队列k的作业等待代 价Cwk= Σ jtwijri; 其中九^表示作业i的预计执行时间,该值由用户预估的作业执行时间获得,w表示作业 迀移代价的权重,jtWl表示队列不采用负载均衡,没有作业迀移时,按照队列中的调度策略 对作业进行调度,作业i的等待时间;表示作业使用的资源,由于作业还未运行,该值由 提交作业的用户预估;此外,当等待队列中的作业较少时,则认为队列有空闲的资源运行这 些作业; 定义队列k的等待作业长度为lk,根据历史数据,可以计算队列的等待作业的平均长度, 参照这个长度定义等待作业长度阈值lthres,那么,动态选择阈值的多对列负载均衡调度策 略为: 当Cmk>CWk且lk> lthres时,停止向队列k投递作业;遍历所有队列,将原本投递至队列k 的作业转为投向负载最低的队列;其他情况,则允许继续向队列k投递作业。8. 根据权利要求1所述的面向生物基因测序计算任务的多队列回填作业调度方法,其 特征在于:所述步骤S2中的优化迀移策略如下: 将队列k中的等待作业按照作业使用的资源从小到大排序; 遍历等待作业,判断作业i是否能立即在队列k中运行; 若能立即运行,将作业i分配至队列k对应的节点中运行; 若不能立即运行,遍历所有队列,将作业i转为投向负载最低的队列; 按照作业使用的资源进行排序时,由于作业还没有执行,同样按照用户预估的值进行 排序;作业排序的标准为先按照CHJ资源进行排序,再按照内存资源进行排序。
【专利摘要】本发明公开了一种面向生物基因测序计算任务的多队列回填作业调度方法。针对生物基因测序计算任务的作业负载特性,对现有高性能计算系统作业调度技术的缺点与不足进行了改进,提出一个多对列回填作业调度方法。该方法提供了基于内存资源优化的回填调度,结合内存资源的需求进行作业预约与作业回填,充分利用系统的空闲资源,减少作业等待。在此基础上,提供了多对列负载均衡调度,以多对列的方式进行回填调度并且提供了队列级别的负载均衡,并且提出了动态选择阈值策略与优化迁移策略。多队列回填作业调度能够很好的适用于生物信息高性能计算系统,获得良好的系统性能。
【IPC分类】G06F9/48, G06F9/50
【公开号】CN105718312
【申请号】CN201610037738
【发明人】董守斌, 孙毅臻, 胡金龙, 张铃启, 吕丹
【申请人】华南理工大学
【公开日】2016年6月29日
【申请日】2016年1月20日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1