工作流执行时间优化方法及装置制造方法及图纸

技术编号:27244070 阅读:24 留言:0更新日期:2021-02-04 12:17
本发明专利技术公开了工作流执行时间优化方法及装置,涉及分布式计算技术领域。用以解决异构预算约束调度方法在预算分配方面的不足,导致低优先级的任务具有更长执行时间的问题。该方法包括:根据任务在处理器集合上的执行时间差异值,确定每个任务的优先级等级值以及任务优先级队列;根据每个任务在处理器集合上的执行成本差异值、平均执行成本以及空余预算,确定每个任务的空余预算、预分配子预算以及最大可用预算;根据任务的最大可以预算与任务的实际执行成本的大小关系,得到至少一个可用处理器,基于最早完成时间EFT,确定每个任务在可用处理器上的实际完成时间,根据实际完成时间得到任务优先级队列的初始调度方法。到任务优先级队列的初始调度方法。到任务优先级队列的初始调度方法。

【技术实现步骤摘要】
工作流执行时间优化方法及装置


[0001]本专利技术涉及分布式计算
,更具体的涉及工作流执行时间优化方法及装置。

技术介绍

[0002]大规模科学应用,如电子商务、自动驾驶、智能制造,对计算处理器的需求日益增多,进而推动了分布式计算系统的发展。这些科学应用可以被划分为一组任务,任务之间通过数据依赖确定执行的先后次序,最终形成一个工作流。工作流是目前最重要的表示科学应用的编程范式,传统的分布式计算系统,如集群、超级计算机、网格经常被用来执行复杂的工作流应用。随着云计算的出现以及云基础设施的快速发展,越来越多的工作流应用已经迁移至云计算系统。云计算系统以按需的处理器供应模式向外提供具有不同计算能力的处理器,一般来说,处理器的单价与计算能力呈现正相关关系:在这种计算模式下,用户可以根据应用的规模以及期望的服务质量(quality of service,QoS)层次动态扩张或收缩使用的处理器数量,并且只需为实际的使用量计费,同时,随着系统处理器的更新换代,旧的、缓慢的设备持续被新的、快速的设备替代,系统处理器越来越异构化,云计算系统也呈现出异构的特征。对于异构云计算系统的用户而言,工作流应用的完成时间与执行费用是两个关键的因素,如何在两者之间取得平衡是工作流调度的关键。
[0003]在用户所关注的QoS需求中,预算(budget)无疑是非常重要且常见的一个因素,预算代表着用户在执行工作流应用时的经济承受能力。因此,研究异构云计算系统中预算约束的工作流执行时间最小化问题具有重要的现实意义,预算约束的工作流执行时间最小化问题具有很强的挑战性:首先,从用户的角度出发,执行工作流产生的执行费用不能超过预设的预算约束;其次,从系统的角度而言,最小化工作流的完成时间是核心问题,也预示着系统在满足用户QoS需求上的能力;预算约束的工作流调度问题得到了广泛的研究,当前一般采用启发式的方法解决此问题,这些方法一般都采用预算划分的方式解决此问题,即将工作流的预算转换为每个任务的子预算,进而保证预算约束得到满足;异构预算约束调度方法(heterogeneous budget constrained scheduling,HBCS)通过为任务预分配最小的执行成本来满足预算约束,空余预算则由所有的任务共同使用,但是,在HBCS中,优先级高的任务能够优先利用空余预算,在选择计算处理器上具有更大的自由度,优先级低的任务则只有较少的预算可以使用,甚至只能选择最慢的计算处理器,此种调度方法对低优先级的任务是不公平的,也会导致更长的执行时间。
[0004]综上所述,现有的异构预算约束调度方法存在在预算分配方面的不足,而导致低优先级的任务具有更长执行时间的问题。

技术实现思路

[0005]本专利技术实施例提供工作流执行时间优化方法及装置,用以解决现有的异构预算约束调度方法存在在预算分配方面的不足,而导致低优先级的任务具有更长执行时间的问
题。
[0006]本专利技术实施例提供工作流执行时间优化方法,包括:
[0007]根据任务在处理器集合上的执行时间差异值,确定每个所述任务的优先级等级值以及任务优先级队列;其中,所述任务优先级队列按照每个所述任务的调度按照非升序排列;
[0008]根据每个所述任务在处理器集合上的执行成本差异值、每个所述任务的平均执行成本以及每个所述任务的空余预算,确定每个所述任务的空余预算;
[0009]根据所述工作流的空余预算和所述任务在处理器集合上的最小执行成本,确定每个所述任务的预分配子预算以及最大可用预算;
[0010]根据所述任务的最大可以预算与所述任务的实际执行成本的大小关系,对处理器集合进行优化,得到至少一个可用处理器,基于最早完成时间EFT,依次确定所述任务优先级队列包括的每个所述任务在可用处理器上的实际完成时间,根据所述实际完成时间得到所述任务优先级队列的初始调度方法。
[0011]优选地,所述根据每个所述任务在处理器集合上的执行成本差异值、每个所述任务的平均执行成本以及每个所述任务的空余预算,确定每个所述任务的空余预算,具体包括:
[0012]根据下列公式确定每个所述任务的成本层次:
[0013][0014]根据下列公式确定每个所述任务的空余预算:
[0015][0016]其中,其表示任务t
i
的在处理器集合上执行成本的差异值,其表示任务t
i
的平均执行成本,cost(t
i
,p
k
)表示任务t
i
在处理器p
k
上的执行成本,|P|表示处理器集合中处理器的数目,costlv(t
i
)表示任务t
i
的成本层次,cost
spare
(t
i
)表示任务t
i
的空余预算,cost
spare
(G)表示工作流G的空余预算。
[0017]优选地,所述根据所述工作流的空余预算和所述任务在处理器集合上的最小执行成本,确定每个所述任务的预分配子预算以及最大可用预算,具体包括:
[0018]根据下列公式确定每个所述任务的预分配子预算:
[0019]cost
pre
(t
i
)=cost
min
(t
i
)+cost
spare
(t
i
)
[0020]其中,表示任务t
i
在处理器集合上的最小执行成本,cost
spare
(t
i
)表示任务t
i
分到的空余预算,cost
pre
(t
i
)表示任务t
i
的预分配子预算;
[0021]根据下列公式确定每个所述任务的最大可用预算:
[0022][0023]其中,cost
given
(G)表示工作流G的预算,cost(t
s(x)
,p
f(s(x))
)表示已分配任务t
s(x)
的实际执行成本,cost
pre
(t
s(x)
)表示未分配任务t
s(x)
的预分配预算,cost
given
(t
s(i)
)表示任务t
s(i)
的最大可用预算。
[0024]优选地,所述根据所述实际完成时间得到所述任务优先级队列的初始调度方法之后,还包括:
[0025]根据所述初始调度方法对所述任务优先级队列包括的任务进行升序排列,得到任务优化队列;
[0026]根据所述工作流的初始预算和所述任务优先级队列包括的所述任务的实际完成时间,确定所述工作流的未使用预算以及所述工作流的累计可用预算;
[0027]根据延迟判断条件确定所述任务优化队列包括的每个所述任务是否可延迟,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.工作流执行时间优化方法,其特征在于,包括:根据任务在处理器集合上的执行时间差异值,确定每个所述任务的优先级等级值以及任务优先级队列;其中,所述任务优先级队列按照每个所述任务的调度按照非升序排列;根据每个所述任务在处理器集合上的执行成本差异值、每个所述任务的平均执行成本以及每个所述任务的空余预算,确定每个所述任务的空余预算;根据所述工作流的空余预算和所述任务在处理器集合上的最小执行成本,确定每个所述任务的预分配子预算以及最大可用预算;根据所述任务的最大可以预算与所述任务的实际执行成本的大小关系,对处理器集合进行优化,得到至少一个可用处理器,基于最早完成时间EFT,依次确定所述任务优先级队列包括的每个所述任务在可用处理器上的实际完成时间,根据所述实际完成时间得到所述任务优先级队列的初始调度方法。2.如权利要求1所述的方法,其特征在于,所述根据每个所述任务在处理器集合上的执行成本差异值、每个所述任务的平均执行成本以及每个所述任务的空余预算,确定每个所述任务的空余预算,具体包括:根据下列公式确定每个所述任务的成本层次:根据下列公式确定每个所述任务的空余预算:cost
spare
(t
i
)=cost
spare
(G)
×
costlv(t
i
)/∑
1≤k≤|N|
costlv(t
i
)其中,其表示任务t
i
的在处理器集合上执行成本的差异值,其表示任务t
i
的平均执行成本,cost(t
i
,p
k
)表示任务t
i
在处理器p
k
上的执行成本,|P|表示处理器集合中处理器的数目,costlv(t
i
)表示任务t
i
的成本层次,cost
spare
(t
i
)表示任务t
i
的空余预算,cost
spare
(G)表示工作流G的空余预算。3.如权利要求1所述的方法,其特征在于,所述根据所述工作流的空余预算和所述任务在处理器集合上的最小执行成本,确定每个所述任务的预分配子预算以及最大可用预算,具体包括:根据下列公式确定每个所述任务的预分配子预算:cost
pre
(t
i
)=cost
min
(t
i
)+cost
spare
(t
i
)其中,表示任务t
i
在处理器集合上的最小执行成本,cost
spare
(t
i
)表示任务t
i
分到的空余预算,cost
pre
(t
i
)表示任务t
i
的预分配子预算;根据下列公式确定每个所述任务的最大可用预算:其中,cost
given
(G)表示工作流G的预算,cost(t
s(x)
,p
f(s(x))
)表示已分配任务t
s(x)
的实际
执行成本,cost
pre
(t
s(x)
)表示未分配任务t
s(x)
的预分配预算,cost
given
(t
s(i)
)表示任务t
s(i)
的最大可用预算。4.如权利要求1所述的方法,其特征在于,所述根据所述实际完成时间得到所述任务优先级队列的初始调度方法之后,还包括:根据所述初始调度方法对所述任务优先级队列包括的任务进行升序排列,得到任务优化队列;根据所述工作流的初始预算和所述任务优先级队列包括的所述任务的实际完成时间,确定工作流的未使用预算以及工作流的累计可用预算;根据延迟判断条件确定所述任务优化队列包括的每个所述任务是否可延迟,并根据判断结果,输出每个所述任务的优化调度方法;其中,优化调度方法包括:可延迟任务分配至不影响后继续任务开始且具有最小执行成本的处理器上;或者,根据所述工作流的累计可用预算,将不可延迟任务分配至具有最小执行成本的处理器上。5.如权利要求4所述的方法,其特征在于,根据下列公式确定所述工作流的未使用预算:其中,cost
unused
(G)表示工作流G的未使用预算,cost
given
(G)表示工作流G的初始预算,cost(t
i
,p
f(i)
)表示任务t
i
的实际执行成本,f(i)表示任务t
i
在所述任务优化队列所分配的处理器的索引值。6.如权利要求4所述的方法,其特征在于,所述延迟判断条件通过下列公式确定:所述输出每个所述任务的优化调度方法之后,还包括:根据下列公式更新所述工作流的累计可用预算:cost
accum
(G)=cost
accum
(G)+cost(t
o(i)
,p
f(o(i))
)-cost(t
o(i)
,p
f'(o(i))
)其中,w
j,f(j)
表示任务t
j
在处理器P
f(j)
上的执行时间,c'
i,j
为任务t
i
与任务t
j
之间的传输时间,AFT(t
j
)为任务t
j
的实际完成时间,cost(t
o(i)
,p
f'(o(i))
)表示所述任务优化队列中包括的任务t
o(i)
在处理器p
f'(o(i))
上的实际执行成本,cost
accum
(G)表示所述工作流的累计可用预算,cost(t
o(i)
,p
f(o(i))
)表示所述任务优化队列中包括的任务t
o(i)
在处理器p...

【专利技术属性】
技术研发人员:陈进朝杜承烈陈雪聪韩朋城段雨昕王丽芳尤涛蒋泽军
申请(专利权)人:北京仿真中心
类型:发明
国别省市:

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

1