CN111209095B - 一种dag并行任务调度中基于树搜索的剪枝方法 - Google Patents

一种dag并行任务调度中基于树搜索的剪枝方法 Download PDF

Info

Publication number
CN111209095B
CN111209095B CN201910769326.3A CN201910769326A CN111209095B CN 111209095 B CN111209095 B CN 111209095B CN 201910769326 A CN201910769326 A CN 201910769326A CN 111209095 B CN111209095 B CN 111209095B
Authority
CN
China
Prior art keywords
node
task
dag
nodes
value
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.)
Active
Application number
CN201910769326.3A
Other languages
English (en)
Other versions
CN111209095A (zh
Inventor
程雨夏
刘奎
吴志伟
吴卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN201910769326.3A priority Critical patent/CN111209095B/zh
Publication of CN111209095A publication Critical patent/CN111209095A/zh
Application granted granted Critical
Publication of CN111209095B publication Critical patent/CN111209095B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种DAG并行任务调度中基于树搜索的剪枝方法,所述方法包括步骤:选择阶段:根节点s0开始,选择路径上UCT值最大的子节点s,直到到达叶子节点,对UCT值最大的子节点s进行判断;剪枝阶段:对从根节点到当前节点的路径上的所有节点的makespan值和未调度的关键路径任务节点在各自最快完成的处理器上执行时间的累加值做判断;扩展阶段:判断S4步骤选中的叶子节点是不是终止节点,依据判断结果创建新的子节点,添加到搜索树上,更新新的子节点的标记;模拟阶段:从扩展节点开始,将剩余的任务进行模拟任务调度的过程;回传阶段:模拟结束后,将所得信息回传到根节点上。本发明提供一种加入剪枝的蒙特卡洛树搜索的DAG任务调度方法。

Description

一种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执行任务ti
OEFT(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的节点,并退回到根节点,清空就绪队列里的任务,从根节点重新开始进行选择阶段,否则,将当前节点作为搜索路径节点,并将该节点所对应的的任务节点从就绪队列里取出,同时更新DAG图中当前任务节点的孩子节点的父节点数/>若存在孩子节点的父节点数为零,则将此孩子节点加入到就绪队列,回到S4步骤。根据根节点到当前节点的路径上的所有节点的makespan值和未调度的关键路径任务节点在各自最快完成的处理器上执行时间的累加值来进一步判断该节点是否需要剪枝,需要剪枝的标记变为True,这样可以实现下次不再访问的效果,使得不做无用功,不需要剪枝的节点就可以作为搜索路径节点。
作为优选,所述S6步骤中:计算就绪队列里的任务数量,记为q,若S4步骤选中的叶子节点不是终止节点,那么就创建q×T个新的子节点,T代表处理器数量,添加到搜索树上,并对这些节点的访问次数,奖励值进行初始化N(st,a)=0,Q(st,a)=0,这些节点的标记记为False,随机选择其中一个节点,然后进入S7步骤,N(st,a)表示新扩展节点的访问次数,Q(st,a)表示新扩展节点的奖励值。创建q×T个新的子节点代表就绪队列的任务调度到处理器上所有调度情况,对这些子节点进行分析就可以得出就绪队列里的任务调度到各个处理器的情况,这些子节点因为没有进行过操作,所以初始值要进行赋值。
作为优选,所述S7步骤中:从扩展节点开始,将剩余的任务使用PEFT算法进行模拟任务调度的过程,直到模拟到全部任务都被调度到处理器上为止,得到一个makespan值,如果当前的α<makespan≤β,则更新β=makespan。对剩余的任务进行模拟调度,找到最小的makespan值,然后把上限更新,就可以进一步确定上限的值,缩小范围。
作为优选,所述S8步骤中:当模拟结束后,搜索树中各节点的信息也都已经得到,此时根据makespan值,将搜索后所得最新节点由叶子节点回传到根节点上进行更新,节点访问次数的更新方式N(s,a)=N(s,a)+1;节点的奖励值的更新方式为搜索树中各节点的信息要传到根节点进行更新,这样就可以在此基础上继续进行操作,可以进一步找到合适的路径。
作为优选,所述S9步骤中:执行完S4、S5、S6、S7和S8后,都要将DAG任务图恢复成原始的任务图,然后重复执行S4、S5、S6、S7和S8;步直到达到模拟上限次数为止,根据调度结果找出一条makespan值最小的调度顺序。将DAG任务图恢复成原始的任务图是为了不受上一次的影响,这样才能将所有情况都考虑到,模拟到模拟上限后,依据之前的调度的数据,从中就可以选择出来一条makespan值最小的调度顺序,这样就可以得到较好的调度效果。
因此,本发明具有如下有益效果:(1)把一些调度效果差的节点从搜索树中删除;(2)加快计算速度、提高搜索效率;(3)通过剪枝把搜索树的缩小搜索范围变小;
附图说明
图1是本发明的一种原理图
图2是本发明的一种DAG拓扑图
图3是本发明的一种对DAG拓扑图使用本发明的方法的结果图
具体实施方式
下面结合附图与具体实施方式对本发明做进一步的描述。
实施例:一种DAG并行任务调度中基于树搜索的剪枝方法,对图2所示的DAG拓扑图使用本发明所述的方法,其过程如下:
S1步骤:利用CPOP算法求出DAG图的关键路径;
S2步骤:下界上界β=+∞。
S1步骤中利用CPOP算法求出DAG图的关键路径为下面的步骤提供基础,S2步骤给出了上下界的值,为下面步骤的开始提供初始值。,此值为所有关键路径节点在各自最快完成的处理器上执行时间的累加值,是调度的理想下限时间,
S3步骤:初始化搜索树和就绪队列,搜索树的根节点标记为False,将DAG图的入口节点任务加入就绪队列,同时更新这些任务的孩子节点的父节点数
S4步骤:从根节点root开始,递归的选择路径上UCT值最大的子节点,直到到达叶子节点,若选择的UCT值最大的子节点的标记为False,表明此节点未剪枝过,则进入剪枝阶段,否则就回退到父节点,选择其他子节点判断标记是否为False,若此父节点的所有孩子节点的标记都为True,则将此父节点的标记也变为True。若此父节点的标记为True,就退回到根节点,并清空就绪队列里的任务,从根节点重新开始进行选择阶段;
UCT=argmax(Q(s,a)+U(s,a))
Cpuct是重要的超参数,主要用于平衡探索和利用间的权重;N(s,a)表示当前任务节点的访问次数;表示当前任务的所有父节点的访问次数。
因为路径上UCT值最大的子节点是效果不好的节点,可以通过判断他的标记是否为False时,来决定是需要剪枝,还是退回父节点,退回父节点后再判断这个父节点的子节点是否有为False的子节点,如果有就剪枝,没有就退回根节点,这样就可以把效果不好的子节点给挑出来,以后就不再访问,这样就减少了获得makespan值最小调度顺序的时间。
S5步骤:计算从根节点到当前节点的路径上的所有节点的makespan值,记为计算未调度的关键路径任务节点在各自最快完成的处理器上执行时间的累加值,记为/>若m1+m2>β,则剪去该节点以及它所有的子节点,并将该节点的标记变为True,防止下次再次访问,并退回到根节点,清空就绪队列里的任务,从根节点重新开始进行选择阶段,否则,将当前节点作为搜索路径节点,并将该节点所对应的任务节点从就绪队列里取出,同时更新DAG图中当前任务节点的孩子节点的父节点数/>若存在孩子节点的父节点数为零,则将此子节点加入到就绪队列,回到S4步骤。
根据根节点到当前节点的路径上的所有节点的makespan值和未调度的关键路径任务节点在各自最快完成的处理器上执行时间的累加值来进一步判断该节点是否需要剪枝,需要剪枝的标记变为True,这样可以实现下次不再访问的效果,使得不做无用功,不需要剪枝的节点就可以作为搜索路径节点。
S6步骤:计算就绪队列里的任务数量,记为q,若S4步骤选中的叶子节点不是终止节点,那么就创建q×T个新的子节点,T代表处理器数量,添加到搜索树上,并对这些节点的访问次数,奖励值进行初始化N(st,a)=0,Q(st,a)=0,这些节点的标记记为False,随机选择其中一个节点,然后进入S7步骤。
创建q×T个新的子节点代表就绪队列的任务调度到处理器上所有调度情况,对这些子节点进行分析就可以得出就绪队列里的任务调度到各个处理器的情况,这些子节点因为没有进行过操作,所以初始值要进行赋值。
S7步骤:从扩展节点开始,将剩余的任务使用PEFT算法进行模拟任务调度的过程,直到模拟到全部任务都被调度到处理器上为止,得到一个makespan值,如果当前的α<makespan≤β,则更新β=makespan。
S8步骤:模拟结束后,搜索树中各节点的信息也都已经得到,此时根据makespan值,将搜索后所得最新节点由叶子节点回传到根节点上进行更新,节点访问次数的更新方式N(s,a)=N(s,a)+1;节点的奖励值的更新方式为
S9步骤:执行完S4、S5、S6、S7和S8后,都要将DAG任务图恢复成原始的任务图,然后重复执行S4、S5、S6、S7和S8;直到达到模拟上限次数为止,根据调度结果找出一条makespan值最小的调度顺序。
将DAG任务图恢复成原始的任务图是为了不受上一次的影响,这样才能将所有情况都考虑到,模拟到模拟上限后,依据之前的调度的数据,从中就可以选择出来一条makespan值最小的调度顺序,这样就可以得到较好的调度效果。
图3是对图2中的DAG拓扑图运用本发明的方法得到的结果图,运用本发明的方法可以加速保证算法的效率,同时提高算法搜索效率,通过S4步骤递归的选择路径上需要剪枝的节点,然后进入S5步骤把这些节点从搜索树中删除,这样把这些调度效果差的节点就不会再访问,缩小了搜索范围,可以加快计算速度、提高搜索的效率。

Claims (8)

1.一种DAG并行任务调度中基于树搜索的剪枝方法,其特征在于,所述方法包括步骤:
S1、求出DAG图的关键路径;
S2、初始化上下界;
S3、初始化搜索树和就绪队列;
S4、选择阶段:根节点s0开始,选择路径上UCT值最大的子节点s,直到到达叶子节点,对UCT值最大的子节点s进行判断;
UCT=argmax(Q(s.a)+U(a,s))
Cpuct是重要的超参数;N(s,a)表示当前任务节点的访问次数;表示当前任务的所有父节点的访问次数,Q(s,a)表示当前树节点的累积奖励值;
S5、剪枝阶段:对从根节点到当前节点的路径上的所有节点的makespan值和未调度的关键路径任务节点在各自最快完成的处理器上执行时间的累加值做判断;
S6、扩展阶段:判断S4步骤选中的叶子节点是不是终止节点,依据判断结果创建新的子节点,添加到搜索树上,更新新的子节点的标记;
S7、模拟阶段:从扩展节点开始,将剩余的任务进行模拟任务调度的过程;
S8、回传阶段:模拟结束后,将所得信息回传到根节点上;
S9、依据makespan值找出一条调度顺序;
S5步骤中:计算从根节点到当前节点的路径上的所有节点的makespan值,记为计算未调度的关键路径任务节点在各自最快完成的处理器上执行时间的累加值,记为/>CPfront表示DAG图中当前未调度的关键路径任务节点的集合,若m1+m2>β,则剪去该节点以及它所有的子节点,并将该节点的标记变为True,下次不再次访问标记为True的节点,并退回到根节点,清空就绪队列里的任务,从根节点重新开始进行选择阶段,否则,将当前节点作为搜索路径节点,并将该节点所对应的的任务节点从就绪队列里取出,同时更新DAG图中当前任务节点的孩子节点的父节点数/>若存在孩子节点的父节点数为零,则将此孩子节点加入到就绪队列,回到S4步骤。
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,并退回到根节点,清空就绪队列里的任务,从根节点重新开始进行选择阶段。
5.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S6步骤中:计算就绪队列里的任务数量,记为q,若S4步骤选中的叶子节点不是终止节点,那么就创建q×T个新的子节点,T代表处理器数量,添加到搜索树上,并对这些节点的访问次数,奖励值进行初始化N(st,a)=0,Q(st,a)=0,这些节点的标记记为False,随机选择其中一个节点,然后进入S7步骤,N(st,a)表示新扩展节点的访问次数,Q(st,a)表示新扩展节点的奖励值。
6.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S7步骤中:从扩展节点开始,将剩余的任务使用PEFT算法进行模拟任务调度的过程,直到模拟到全部任务都被调度到处理器上为止,得到一个makespan值,如果当前的α<makespan≤β,则更新β=makespan。
7.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S8步骤中:当模拟结束后,搜索树中各节点的信息也都已经得到,此时根据makespan值,将搜索后所得最新节点由叶子节点回传到根节点上进行更新,节点访问次数的更新方式N(s,a)=N(s,a)+1;
节点的奖励值的更新方式为
8.根据权利要求1所述的一种DAG并行任务调度中基于树搜索的剪枝方法,其特征是S9步骤中:执行完S4、S5、S6、S7和S8后,将DAG任务图恢复成原始的任务图,然后重复执行S4、S5、S6、S7和S8;直到达到模拟上限次数为止,根据调度结果找出一条makespan值最小的调度顺序。
CN201910769326.3A 2019-08-20 2019-08-20 一种dag并行任务调度中基于树搜索的剪枝方法 Active CN111209095B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910769326.3A CN111209095B (zh) 2019-08-20 2019-08-20 一种dag并行任务调度中基于树搜索的剪枝方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910769326.3A CN111209095B (zh) 2019-08-20 2019-08-20 一种dag并行任务调度中基于树搜索的剪枝方法

Publications (2)

Publication Number Publication Date
CN111209095A CN111209095A (zh) 2020-05-29
CN111209095B true CN111209095B (zh) 2023-08-15

Family

ID=70787890

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910769326.3A Active CN111209095B (zh) 2019-08-20 2019-08-20 一种dag并行任务调度中基于树搜索的剪枝方法

Country Status (1)

Country Link
CN (1) CN111209095B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111695727A (zh) * 2020-06-04 2020-09-22 南京音飞峰云科技有限公司 基于甘特图思路的密集库作业任务池实时规划方法
CN112328380B (zh) * 2020-11-10 2024-06-25 武汉理工大学 一种基于异构计算的任务调度方法及装置
CN112734291B (zh) * 2021-01-26 2022-06-21 福州大学 基于树搜索的桁架装配序列规划方法
CN113987979A (zh) * 2021-10-28 2022-01-28 厦门大学 一种面向模拟集成电路的子电路匹配方法
CN115081802B (zh) * 2022-05-13 2023-06-20 珠海优特电力科技股份有限公司 乘务任务集生成方法、装置及对应的电子设备、存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0300456A2 (en) * 1987-07-24 1989-01-25 Bruce H. Faaland Improved scheduling method and system
CN103336723A (zh) * 2013-07-21 2013-10-02 哈尔滨理工大学 基于关键路径的适应处理器内核紧缺调度方法
WO2017113569A1 (zh) * 2015-12-30 2017-07-06 深圳大学 一种基于a星策略的最优多会合点路径搜索方法及装置
CN107122231A (zh) * 2017-03-24 2017-09-01 国家电网公司 一种基于蒙特卡络模拟法的数据流调度优化方法
CN107301500A (zh) * 2017-06-02 2017-10-27 北京工业大学 一种基于关键路径任务前瞻的工作流调度方法
CN109857532A (zh) * 2019-01-22 2019-06-07 杭州电子科技大学 基于蒙特卡洛树搜索的dag任务调度方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725493B2 (en) * 2007-03-23 2010-05-25 Palo Alto Research Center Incorporated Optimization method and process using tree searching operation and non-overlapping support constraint requirements
US10423442B2 (en) * 2017-05-25 2019-09-24 International Business Machines Corporation Processing jobs using task dependencies
US10552161B2 (en) * 2017-06-21 2020-02-04 International Business Machines Corporation Cluster graphical processing unit (GPU) resource sharing efficiency by directed acyclic graph (DAG) generation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0300456A2 (en) * 1987-07-24 1989-01-25 Bruce H. Faaland Improved scheduling method and system
CN103336723A (zh) * 2013-07-21 2013-10-02 哈尔滨理工大学 基于关键路径的适应处理器内核紧缺调度方法
WO2017113569A1 (zh) * 2015-12-30 2017-07-06 深圳大学 一种基于a星策略的最优多会合点路径搜索方法及装置
CN107122231A (zh) * 2017-03-24 2017-09-01 国家电网公司 一种基于蒙特卡络模拟法的数据流调度优化方法
CN107301500A (zh) * 2017-06-02 2017-10-27 北京工业大学 一种基于关键路径任务前瞻的工作流调度方法
CN109857532A (zh) * 2019-01-22 2019-06-07 杭州电子科技大学 基于蒙特卡洛树搜索的dag任务调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于排列树剪枝的经济网格任务调度模型;黄飞雪;姜新娜;李志洁;侯铁珊;;计算机工程(第04期);全文 *

Also Published As

Publication number Publication date
CN111209095A (zh) 2020-05-29

Similar Documents

Publication Publication Date Title
CN111209095B (zh) 一种dag并行任务调度中基于树搜索的剪枝方法
CN109857532B (zh) 基于蒙特卡洛树搜索的dag任务调度方法
CN104317658B (zh) 一种基于MapReduce的负载自适应任务调度方法
CN111274036B (zh) 一种基于速度预测的深度学习任务的调度方法
Gonzalez et al. Distributed parallel inference on large factor graphs
Gaussier et al. Online tuning of EASY-backfilling using queue reordering policies
JPH09171503A (ja) 並列処理方法および並列処理装置
CN112000457B (zh) 管理处理系统中的任务的方法、设备和计算机程序产品
CN111913800B (zh) 基于l-aco的云中微服务成本优化的资源分配方法
EP2884453A1 (en) A computer implemented method, a system and computer program product for partitioning a graph representative of a communication network
CN116932198A (zh) 资源调度方法、装置、电子设备及可读存储介质
CN108712337B (zh) 高性能网络中多路径带宽调度方法
Ahmad et al. DPS: Dynamic priority scheduling heuristic for heterogeneous computing systems
Nasr et al. Task scheduling algorithm for high performance heterogeneous distributed computing systems
CN115495248B (zh) 一种推理卡的内存分配方法、装置、电子设备及存储介质
Liu et al. Smart DAG task scheduling with efficient pruning-based MCTS method
Eswari et al. Path-based heuristic task scheduling algorithm for heterogeneous distributed computing systems
Qin et al. Dependent task scheduling algorithm in distributed system
CN112363819B (zh) 大数据任务动态编排调度方法、装置及计算设备
CN114691302A (zh) 一种面向大数据处理的动态缓存替换方法及设备
CN115509724A (zh) 基于任务分层与回填最早完成时间的任务调度方法及系统
CN113553353A (zh) 一种面向分布式数据挖掘工作流的调度系统
CN113240089A (zh) 基于图检索引擎的图神经网络模型训练方法和装置
Gertsman A faster reinforcement learning approach to efficient job scheduling in Apache Spark
CN117785460A (zh) 一种异构信息处理平台的组件调度方法

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
GR01 Patent grant