一种DAG并行任务调度中基于树搜索的剪枝方法技术

技术编号:24330747 阅读:73 留言:0更新日期:2020-05-29 19:31
本发明专利技术公开了一种DAG并行任务调度中基于树搜索的剪枝方法,所述方法包括步骤:选择阶段:根结点s

Tree search based pruning method in DAG parallel task scheduling

【技术实现步骤摘要】
一种DAG并行任务调度中基于树搜索的剪枝方法
本专利技术涉及任务调度系统领域,尤其是涉及一种DAG并行任务调度方法。
技术介绍
目前在分布式异构计算系统中,如何优化DAG任务调度是一个开放的研究问题。DAG任务调度的目标是给出一个调度方案,将DAG图中的任务按照一定的顺序调度到处理器上执行,使调度长度最小化。其模型如下:工作流应用一般通过有向无环图(DAG)G(N,E,P)来描述。其中N={n1,n2...nm}代表应用程序中m个任务的集合。E={e1,e2...es}是s条有向边的集合,边e(i,j)∈E表示优先约束,任务nj必须等到ni完成才可以执行。Q={p1,p2...pT}表示T个处理器的集合。Wi,j表示任务ni调度到处理器pj上执行的计算开销;表示任务ni调度到处理器上执行的平均计算开销;Ci,j表示任务ni和任务nj之间的通信开销,当任务ni和任务nj在同一处理器上执行时通信开销为0;ESTi,j表示任务ni调度到处理器pj上的开始执行时间;EFTi,j表示任务ni调度到处理器pj上的执行结束时间;三者关系为:EFTi,j=ESTi,j+Wi,j。在分布式异构系统中,高效的任务调度算法对于获得高质量的调度是至关重要的。中国专利公告号CN102193826B,公告日2012年12月19日,专利技术创造的名称为一种异构多核处理器高效调度方法,该申请案采用线性任务聚簇方法,将任务图中某些特殊的、通信开销较大的、容易聚簇的任务聚簇到其前驱节点;从整个任务图的拓扑结构出发,选择能够综合反映任务在整个任务图中地位的参数作为优先级权值。这个方法会大量重复访问一些调度效果差的结点,最终会造成大量时间的浪费,搜索效率会变低。PEFT算法是一种列表启发式算法,算法主要分为两个阶段:任务选择阶段和处理器选择阶段。这两个阶段都是建立在一个乐观花销表上的,所以在调度开始之前要先计算出乐观花费表,表中的OCT值是指子任务结点到出口任务结点的最长路径。出口任务结点OCT(nexit,pk)=0任务选择阶段:按照从大到小的顺序选择rankoct(ni)的任务ni处理器选择阶段:选择OEFT(ni,pj)值小的处理器pj执行任务tiOEFT(ni,pj)=EFT(ni,pj)+OCT(ni,pj)CPOP算法中,任务ni的上行权重用如下公式计算,其中任务ni的下行权重则用如下公式计算,其中rankd(nentry)=0:任务的权重值为上下行权重之和,用如下公式计算:CT(ni)=ranku(ni)+rankd(ni)关键路径的任务结点为上下权重值最大的任务结点。DAG任务调度已经被证明是NP完全问题,由于其在实际中的重要性,在众多文献中被广泛研究。许多基于DAG的任务调度算法已经被提出,例如基于遗传和进化的随机搜索算法、列表启发式调度算法等等。然而,基于遗传和进化的随机搜索算法需要多次迭代过程,才能找到相对比较好的解,而且整个迭代过程执行时较长;列表调度算法属于静态的启发式算法,缺乏适应各种异构硬件和快速变化的应用需求。因此,设计一种能够加速保证算法的效率,同时提高算法搜索效率的DAG任务调度方法,就显得十分重要。
技术实现思路
本专利技术是为了克服现有技术的DAG任务调度方法会大量重复访问一些调度效果差的结点的问题,提供一种加入剪枝的蒙特卡洛树搜索的DAG任务调度方法。为了实现上述目的,本专利技术采用以下技术方案:本专利技术解决其技术问题所采用的技术方案是:一种DAG并行任务调度中基于树搜索的剪枝方法,所述方法包括步骤:S1、求出DAG图的关键路径;S2、初始化上下界;S3、初始化搜索树和就绪队列;S4、选择阶段:根结点s0开始,选择路径上UCT值最大的子结点s,直到到达叶子结点,对UCT值最大的子结点s进行判断;S5、剪枝阶段:对从根结点到当前结点的路径上的所有结点的makespan值和未调度的关键路径任务结点在各自最快完成的处理器上执行时间的累加值做判断;S6、扩展阶段:判断S4步骤选中的叶子结点是不是终止结点,依据判断结果创建新的子结点,添加到搜索树上,更新新的子结点的标记;S7、模拟阶段:从扩展结点开始,将剩余的任务进行模拟任务调度的过程;S8、回传阶段:模拟结束后,将所得最新结点回传到根结点上;S9、依据makespan值找出一条调度顺序。通过S4步骤递归的选择路径上需要剪枝的结点,然后进入S5步骤把这些结点从搜索树中删除,这样把这些调度效果差的结点就不会再访问,缩小了搜索范围,可以加快计算速度、提高搜索的效率。作为优选,所述S1步骤中:利用CPOP算法求出DAG图的关键路径;S2步骤中:下界此值为所有关键路径结点在各自最快完成的处理器上执行时间的累加值,上界β=+∞,CPMIN表示DAG图中所有的关键路径任务节点的集合。S1步骤中利用CPOP算法求出DAG图的关键路径为下面的步骤提供基础,S2步骤给出了上下界的值,为下面步骤的开始提供初始值。作为优选,所述是S3步骤中:初始化搜索树和就绪队列,搜索树的根结点标记为False,将DAG图的入口结点任务加入就绪队列,同时更新这些任务的孩子结点的父结点数把搜索树和就绪队列初始化为下面步骤开展做准备,不使下面步骤受到干扰,DAG图的入口结点任务加入到就绪队列,就可以对DAG图的入口结点任务进行下一步的操作。作为优选,所述S4步骤中:从根结点s0开始,递归的选择路径上UCT值最大的子结点s,直到到达叶子结点,若选择的UCT值最大的子结点s的标记为False,就进入剪枝阶段,否则就回退到父结点,重新选择其他子结点,判断标记是否为False,若此父结点的所有孩子结点的标记都为True,则将此父结点的标记也改为True,并退回到根结点,清空就绪队列里的任务,从根结点重新开始进行选择阶段;UCT=argmax(Q(s,a)+U(s,a))Cpuct是重要的超参数;N(s,a)表示当前任务结点的访问次数;表示当前任务的所有父结点的访问次数,Q(s,a)表示当前树节点的累积奖励值。路径上UCT值最大的子结点是效果不好的结点,可以通过判断他的标记是否为False时,来决定是需要剪枝,还是退回父结点,退回父结点后再判断这个父结点的子结点是否有为False的子结点,如果有就剪枝,没有就退回根结点,这样就可以把效果不好的子结点给挑出来。作为优选,所述S5步骤中:计算从根结点到当前结点的路径上的所有结点的makespan值,记为计算未调度的关键路径任务结点在各自最快完成的处理器上执行时间的累加值,记为若m1+m2>β,则剪去该结点以及它所有的子结点,并将该结点的标记变为True,下次不再次访问标记为True的结点,并退回到根结点,清空就绪队列里的任务,从根结点重新开始进行选择阶段,否则,将当前结点作为搜索路径结点,并将该结点所对应的的任务结点从就绪队列本文档来自技高网
...

【技术保护点】
1.一种DAG并行任务调度中基于树搜索的剪枝方法,其特征在于,所述方法包括步骤:/nS1、求出DAG图的关键路径;/nS2、初始化上下界;/nS3、初始化搜索树和就绪队列;/nS4、选择阶段:根结点s

【技术特征摘要】
1.一种DAG并行任务调度中基于树搜索的剪枝方法,其特征在于,所述方法包括步骤:
S1、求出DAG图的关键路径;
S2、初始化上下界;
S3、初始化搜索树和就绪队列;
S4、选择阶段:根结点s0开始,选择路径上UCT值最大的子结点s,直到到达叶子结点,对UCT值最大的子结点s进行判断;
S5、剪枝阶段:对从根结点到当前结点的路径上的所有结点的makespan值和未调度的关键路径任务结点在各自最快完成的处理器上执行时间的累加值做判断;
S6、扩展阶段:判断S4步骤选中的叶子结点是不是终止结点,依据判断结果创建新的子结点,添加到搜索树上,更新新的子结点的标记;
S7、模拟阶段:从扩展结点开始,将剩余的任务进行模拟任务调度的过程;
S8、回传阶段:模拟结束后,将所得信息回传到根结点上;
S9、依据makespan值找出一条调度顺序。


2.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S1步骤中:利用CPOP算法求出DAG图的关键路径;
S2步骤中:下界此值为所有关键路径结点在各自最快完成的处理器上执行时间的累加值,上界β=+∞,CPMIN表示DAG图中所有的关键路径任务节点的集合。


3.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S3步骤中:初始化搜索树和就绪队列,搜索树的根结点标记为False,将DAG图的入口结点任务加入就绪队列,同时更新这些任务的孩子结点的父结点数


4.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S4步骤中:从根结点s0开始,递归的选择路径上UCT值最大的子结点s,直到到达叶子结点,若选择的UCT值最大的子结点s的标记为False,就进入剪枝阶段,否则就回退到父结点,重新选择其他子结点,判断标记是否为False,若此父结点的所有孩子结点的标记都为True,则将此父结点的标记也改为True,并退回到根结点,清空就绪队列里的任务,从根结点重新开始进行选择阶段;
UCT=argmax(Q(s,a)+U(s,a))



Cpuct是重要的超参数;N(s,a)表示当前任务结点的访问次数;表示当前任务的所有父结点的访问次数,Q(s,a)表示当前树节点的累积奖励值。


5.根据权利要求1所述...

【专利技术属性】
技术研发人员:程雨夏刘奎吴志伟吴卿
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1