CN113190336B - 一种基于有向无环图分层的工作流调度方法及装置 - Google Patents
一种基于有向无环图分层的工作流调度方法及装置 Download PDFInfo
- Publication number
- CN113190336B CN113190336B CN202110545583.6A CN202110545583A CN113190336B CN 113190336 B CN113190336 B CN 113190336B CN 202110545583 A CN202110545583 A CN 202110545583A CN 113190336 B CN113190336 B CN 113190336B
- Authority
- CN
- China
- Prior art keywords
- time
- service
- layer
- workflow
- parallel
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 16
- 238000004891 communication Methods 0.000 claims description 19
- 239000002243 precursor Substances 0.000 claims description 8
- 238000010187 selection method Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 3
- 238000003064 k means clustering Methods 0.000 claims description 3
- 239000012634 fragment Substances 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于有向无环图分层的工作流调度方法,包括:将输入的工作流转换为DAG图;将关键路径分层划分,得到多个并行层的DAG图;将工作流宽裕时间按各并行层任务数量比例进行分配得到各层宽裕时间,基于各层宽裕时间,以及各并行层关键结点的最早开始时间和最晚完成时间,构建各并行层的时间窗口;采用马尔科夫决策算法,基于各并行层的时间窗口,形成各并行层的多个服务资源链队列;通过对多个服务资源链队列进一步选择,得到各并行层的最优服务资源链队列,完成工作流的服务资源调度。本发明还提供了一种基于有向无环图分层的工作流调度装置,利用该装置,可以高效地完成工作流的服务调度。
Description
技术领域
本发明属于分布式计算下工作流调度领域,具体涉及一种基于有向无环图分层的工作流调度方法及装置。
背景技术
随着分布式系统、Web服务技术、SOA架构的广泛应用,网络计算这一新型计算模式被得到的较多的关注和研究。标准化组织已经建立了开放网格服务架构OGSA(open gridservice architecture)和Web服务资源框架WSRF(Web service resource framework)等标准化方案,将网格计算和Web服务融合起来构建服务网络,为异构和分布式系统中的计算问题提供解决方案,已经在生产自动化、电子商务、科研活动等领域有许多应用。
随着信息化覆盖面越来越广,网格规模不断扩大,Web服务数量也不断增长,但各个服务性能各异,很多大规模科学计算问题都可以抽象为工作流模型。工作流调度问题,是指给定工作流的任务作为对象,若干的处理器作为完成任务的资源,要在满足一定的约束条件下,对任务和处理器进行分配并安排先后次序,将所需的资源进行最优分配和最优调度。调度问题在物流、航空航天、医疗、生物等各领域都有广泛的应用。
在网格或云平台下,用户通常需要在一定时间和费用内完成工作流调度,资源的管理者根据资源的不同性能给出不同的价格,用户想租用资源完成复杂的应用程序,因此他们需要支付资源管理者一定的费用并且希望在有限的时间内完成任务,而资源的管理者需要合理分配资源,使得资源不被浪费,这就需要规划者给出合理的调度方法使得用户和资源管理者都接受。
因此用户期望工作流执行能够满足预期的一些服务质量(QoS)需求,如完工时间、费用、可靠性等。工作流调度算法就是研究如何从众多有逻辑关联的候选服务中选择合适的服务,在指定的QoS要求下,协同工作,完成用户的复杂任务。
网络中的工作流一般包含大量服务,各服务之间存在约束关系,有向无环图DAG(directed acyclicgraph)是一种常用建模方法,可以对服务及其约束进行抽象表述,也方便其可视化。工作流调度已被证明是一个NP难题,因此,许多启发式方法被提出来,一些是随机方法如遗传算法、模拟退火算法、混合粒子群算法等,在庞大的解空间中限制解的搜索,在某些线索的指引下,逐步逼近最优解,这些方法耗时较长。
专利号为CN110287011A的中国专利公开了一种基于局部路径与截止期限分配的云工作流调度算法,包括两个阶段:期限分配与资源选择两个阶段,期限分配阶段中,全局任务DAG的截止期限在个体任务间进行分配,若每个任务可在其子期限内完成,则整个任务DAG可在截止期限内完成;资源选择阶段中,在满足任务子期限的同时,为每个任务选择最优资源完成任务调度。上述调度方法将全局期限在所有工作流任务上进行分割,以得到任务的子期限,然后在实例提供时仅满足子期限。未将碎片时间充分利用,时间利用率较低,无法动态调控每个任务的时间窗口。
发明内容
本发明提供了一种基于有向无环图分层的工作流调度方法,该方法能够充分利用碎片时间,动态调控每个任务时间窗口,为每个任务选择最优服务资源。
将输入的工作流转换为DAG图,DAG图中每个工作结点对应多个服务资源;
从工作结点对应的多个服务资源选择时间最短的服务,基于选择的结果得到DAG图的关键路径,将关键路径分层划分,得到多个并行层的DAG图;
根据工作流的截止时间与工作流执行时间的差值,得到工作流宽裕时间,所述工作流执行时间为关键路径服务资源执行时间之和,将工作流宽裕时间按各并行层任务数量比例进行分配得到各层宽裕时间,基于各层宽裕时间,以及各并行层关键结点的最早开始时间和最晚完成时间,构建各并行层的时间窗口;
采用马尔科夫决策算法,基于各并行层的时间窗口,对各并行层的DAG图中工作结点分配服务资源,形成各并行层的多个服务资源链队列,完成离线状态DAG图构建;
通过在线动态调度离线状态DAG图,采用分级选择方法,对所述的各并行层的多个服务资源链队列进一步选择,得到各并行层的最优服务资源链队列,完成工作流的服务资源调度。
通过动态调控各并行层的宽裕时间,能够实现根据前序工作结点的完成情况完成各工作结点时间窗口动态变化,且最终满足工作流的截止时间,从而充分利用碎片时间,在尽量合理的时间窗内内,选择最优服务资源,高效的完成工作流的调度。
所述的将输入的工作流转换为DAG图,具体步骤为:
将输入的工作流分配为多个工作结点,各工作结点之间的前后依赖关系为有向边;
每个工作结点对应多个服务资源,所述服务资源包括执行时间,服务资源参数和物理域标识,不同物理域内服务之间切换的所需的时间为通信时间,提取各工作结点的服务资源参数,所述服务资源参数包括服务执行费用、失效概率或可替换服务,通过服务资源参数,对多个服务资源进行K-means聚类;
基于所述工作结点,有向边和每个工作结点对应的多个服务资源构建DAG图。
通过将服务资源,根据各类参数进行K-means聚类,为后续应用马尔科夫算法进行调度提供优选支持,与现有技术相比,本发明将服务资源的各个参数作为服务资源中心进行聚合,并整合到DAG图中,为将各服务资源的通讯时间,动态选择不同参数的服务资源提供支持。
所述的将关键路径分层划分,具体步骤为:
将关键路径进行分层,每一层具有一个关键结点,以及与所述关键结点并行执行的一个或多个关联结点,所述每一层内一个或多个关联结点的执行时间位于所述关键结点的时间窗内。
所述的各层宽裕时间为:
其中,st为工作流宽裕时间,|V|工作流总层数,|PLj|为第j层任务数量。
所述的构建各并行层的时间窗口的最早开始时间最晚完成时间/>为:
其中,PLj表示第j层工作结点集合,KTj为第j层关键工作结点集合,表示工作结点Tj的最早开始时间,/>表示工作结点Tj的最晚完成时间,Tk为第j层工作结点与第j层关键工作结点的交集工作结点,k为交集工作结点索引,/>为交集工作结点的最早开始时间,/>为交集工作结点的最晚完成时间。
基于前向一致原则,如果任务前驱集合为空,只需选择服务资源中执行时间最短的服务,所述执行时间最短的服务的执行时间为对应工作结点的执行时间;
向后推进时,工作结点前驱集合非空,则遍历工作结点对应的每一项服务资源,计算每一项服务资源与所有前驱工作结点的通信时间,加上所述服务资源的运行时间,两个时间之和最小的,就是工作结点的执行时间。
将各并行层的关键结点的最早完成时间作为各并行层的最早完成时间,将各并行层的关键结点的最晚完成时间和宽裕时间之和作为最晚完成时间,从而得到离线状态下的各并行层的时间窗口。
所述的通过在线动态调度离线状态DAG图的步骤包括:
每一并行层服务资源执行完毕后,基于工作执行时间的动态变化,采用动态规划法,对后续并行层宽裕时间进行动态更新,基于动态更新结果,重新确定各并行层时间窗口;
基于每一并行层的时间窗口的动态调整,采用马尔科夫决策算法,对后续并行层重新选择服务链队列。
每一并行层服务执行完成后,对后续的并行层的工作执行时间进行更新,从而完成后续各并行层宽裕时间的调整,从而充分利用碎片时间,为各并行层选择最优的服务链队列。
在线调度过程中,是需要按照新的时间窗口来进行新服务的选择。新的调度只涉及下一并行层中的各个分支,而不是所有任务,耗时很小。
所述的对各并行层的DAG图中工作结点分配服务资源F(Tq)为:
其中,f(Tq,Spk,Tp)为任务Tq选择服务资源Spk后转向前一任务Tp的过程,f(Tq,Spk,Tp)的值表示Spk的执行费用,F(Tp)为能够完成任务Tp的最优服务,|PLq|为第q并行层工作结点的数量,k为第q并行层的工作结点索引;
采用马尔科夫决策算法,对Tq任务对应的服务资源进行选择,得到各并行层的多个服务资源链队列。
为具体工作结点选择服务时,在满足时间窗要求的前提下,优先选择执行费用低的服务;其次是失效概率低的服务;再次选择可替换服务多的服务,对各并行层中各工作结点进行服务优化调度,同样在满足时间窗要求的前提下选择符合质量需求的服务。如果出现失效情形,则转入服务队列中下一个可用服务。
所述的各并形层服务资源的执行时间和通讯时间满足以下条件:
其中,Sm.t表示服务Sm的执行时间,|c(m-1)m|表示各服务资源与前驱服务资源间的通信时间,m为各并行层的工作结点索引。
本发明将各服务资源之间的通讯时间考虑到时间窗内,使得构建的DAG图调度模型能够满足工作流截止时间的要求。
本发明还提供了一种基于有向无环图分层的工作流调度装置,利用该装置,可以高效地完成工作流的服务调度。
一种基于有向无环图分层的工作流调度装置,包括计算机存储器、计算机处理器以及存储在所述计算机存储器中并可在所述计算机处理器上执行的计算机程序,所述计算机存储器中采用上述的基于有向无环图分层的工作流调度方法构建的多个并行层的DAG模型;
所述计算机处理器执行所述计算机程序时实现以下步骤:
将工作流输入至多个并行层的DAG模型中,经计算完成工作流的服务调度。
与现有技术相比,本发明的有益效果为:
(1)将宽裕时间按照并行任务数量分配到各个层中,为复杂任务的调度提供更多宽裕时间,并且将通信时间考虑到时间窗内,能够胜任复杂工作流的动态调度。
(2)本发明基于对宽裕时间的动态调度,以达到对碎片时间的合理应用,为费用优化提供更多选择。
附图说明
图1为具体实施方式的一种基于DAG分层的工作流调度方法流程示意图。
具体实施方式
为了更加具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明:
一种基于有向无环图分层的工作流调度方法,如图1所示,包括以下步骤:
S1:将输入的工作流转换为DAG图,DAG图中每个工作结点对应多个服务资源;
S2:从工作结点对应的多个服务资源选择时间最短的服务,基于选择的结果得到DAG图的关键路径,将关键路径分层划分,得到多个并行层的DAG图;
S3:根据工作流的截止时间与工作流执行时间的差值,得到工作流宽裕时间,所述工作流执行时间为关键路径服务资源执行时间之和,将工作流宽裕时间按各并行层任务数量比例进行分配得到各层宽裕时间,基于各层宽裕时间,以及各并行层关键结点的最早开始时间和最晚完成时间,构建各并行层的时间窗口;
S4:采用马尔科夫决策算法,基于各并行层的时间窗口,对各并行层的DAG图中工作结点分配服务资源,形成各并行层的多个服务资源链队列,完成离线状态DAG图构建;
S5:通过在线动态调度离线状态DAG图,采用分级选择方法,对所述的各并行层的多个服务资源链队列进一步选择,得到各并行层的最优服务资源链队列,完成工作流的服务资源调度。
具体实施方式如下所示:
(1)初始化工作流,为DAG各结点分配服务资源
工作流可用有向无环图DAG表示,令G=<V,E,S>。其中V={1,2,…,n}为工作结点的集合,表示工作流的所有任务。E={eij}(i,j∈V)为有向边的集合,表示任务之间的控制或依赖关系,同时称i为j的前驱,j为i的后继,i的所有前驱形成前驱集合,记为所有后继形成后继集合,记为/>|cij|为任务i,j之间通信所需时间。S为所有的服务集合,每个任务i都对应服务池,S(i)={Sik|Sik∈S,0<k<Ni},Ni为服务池中候选服务数量。在分布式系统中不同服务虽然可能提供相同的功能,但所需资源是不同的。Sik=<t,c,m>表示任务i的一个候选服务资源,其中t为其执行时间,c为其执行费用,m表示服务所在的物理域标识。通信时间为不同物理域内服务之间进行切换时所需的时间,对于任务i,j,分别采用服务Sia,Sjb,当这两个服务位于相同物理域时,通信时间为0;位于不同物理域时通信时间为|cij|。
(2)工作流任务分层,得到分层的DAG图
在不计通信时间的前提下,为工作流图G每个任务分配执行时间最短的服务,可求得工作流G的关键任务,关键路径上的任务集合记为KT,关键路径上各服务执行时间之和为工作流的执行时间tmin,对于工作流图G,在分层时,将与关键路径上的关键任务KT并行执行的一个或多个关联任务划分为一层,使得每层中关键任务的数目尽量为1;每层任务的执行时间均位于关键任务的时间窗内。
搜索每个并行层,层内除关键任务外,还包含多个分支,每个分支包含一个非关键任务,或者多个相邻的非关键任务。
(3)宽裕时间分配
将工作流截止时间tdl和工作流执行时间tmin的差值即工作流宽裕时间计为st=tdl-tmin,将该差值按并行层任务数量比例进行分配,各层分到的宽裕时间为:
其中,|V|为工作流总任务数,由于首尾任务无需分配宽裕时间,因此减去2;|PLj|为第j层任务数量。
(4)计算各并行层时间窗口
基于各层宽裕时间,以及各并行层关键结点的最早开始时间和最晚完成时间,构建各并行层的时间窗口,计算各并行层的时间窗为:
其中,PLj表示第j层工作结点集合,KTj为第j层关键工作结点集合,表示工作结点Tj的最早开始时间,/>表示工作结点Tj的最晚完成时间,Tk为第j层工作结点与第j层关键工作结点的交集工作结点,k为交集工作结点索引,/>为交集工作结点的最早开始时间,/>为交集工作结点的最晚完成时间;
为保证工作流能够运行,所述时间窗口满足以下条件:
fn≤tdl (3)
其中,fn为出口工作结点最晚完成时间,fi表示工作i的最晚完成时间,tdl为出口任务截止时间,为任务i选择服务池中第k个服务资源的运行时间。
(5)工作流调度
采用离线和在线规划方法,通过调整各并行层的时间窗口,在窗口范围内进行服务资源的选择。
(5.1)离线的服务选择过程
每个任务在选择服务时,以并行分支为单位,根据马尔科夫决策算法(MDP)开展服务选择。各并行分支的执行费用可描述为:
F(Tq)=min1≤k≤|PLq|{f(Tq,Spk,Tp)+F(Tp)} (5)
其中,f(Tq,Spk,Tp)为任务Tq选择服务Spk后转向前一任务Tp的过程,其值表示服务Spk的执行费用,F(Tp)表示能够完成任务Tp的最优服务。
这是一个递归的过程,为各层的每条并行分支上的所有任务选择服务,形成服务链S1,S2,…Sm…Sz,其中z为并行分支上的任务数。由于本方法计入通信时间,服务所在的物理域会对当前任务的完成时间造成影响。该并行分支上的服务链必须满足并行层时间窗条件:
其中Sm.t表示服务Sm的执行时间,|c(m-1)m|表示各服务与前驱服务间的通信时间,特别地,|c01|表示前一并行层最后一个服务与本层第一个服务间的通信时差。
为支持后续基于服务聚类的服务选择和在线决策过程,在服务链满足公式(6)的基础上,采集一定数量的服务链方案并按公式(5)进行排序,称为最优服务链队列。
(5.2)考虑质量需求的服务聚类
对于任务i,其自身的复杂度一般利用其前驱任务数量和后继任务数量之和来度量,可能有多个服务Si1,Si1…Sia能够胜任完成,这些服务可能位于不同物理域m(同一物理域上可能存在多个可用服务)。考虑到服务在执行时自身可能存在失效的可能,物理域也存在失效的可能,在失效时能够找到另一可用服务或物理域的条件也不一致。因此在选择服务时应综合考虑服务执行费用、失效概率、可替换服务数等参数,基于服务的各类参数进行K-means聚类,为服务优化选择提供支持。
(5.3)在线调度
在线调度过程中,按照服务具体执行过程,有的任务层并未将宽裕时间完全用完,式(1)中tmin会动态变化。为此,在每一层执行完毕后,根据式(2)重新计算中各层分配到的宽裕采用马尔科夫决策算法(MDP)对下一层任务层中各任务进行服务优化调度,同样在满足时间窗要求的前提下,采用分级选择方法,选择符合质量需求的服务,具体为聚类后服务链按费用、失效概率等条件分了类,如果费用最低的服务链不可用,就选次优的,如果次优的有多个,就按失效概率低的原则选,如此继续,如果出现失效情形,则转入服务队列中下一个可用服务,并更新式(2)中相应参数。循环执行,直至整个工作流完成;
工作流执行费用为所有服务的执行费用之和。工作流调度的目标是,在满足指定截止时间要求的前提下,为工作流中每个任务选择合适的服务,使得总执行费用最小化,即:
其中,i表示任务编号,表示任务i选择服务池中第k个服务的费用,为具体工作结点选择服务时,在满足时间窗要求的前提下,优先选择执行费用低的服务;其次是失效概率低的服务;再次选择可替换服务多的服务。
Claims (4)
1.一种基于有向无环图分层的工作流调度方法,其特征在于,包括以下步骤:
将输入的工作流转换为DAG图,DAG图中每个工作结点对应多个服务资源;
从工作结点对应的多个服务资源选择时间最短的服务,基于选择的结果得到DAG图的关键路径,将关键路径分层划分,得到多个并行层的DAG图;
根据工作流的截止时间与工作流执行时间的差值,得到工作流宽裕时间,所述工作流执行时间为关键路径服务资源执行时间之和,将工作流宽裕时间按各并行层任务数量比例进行分配得到各层宽裕时间,基于各层宽裕时间,以及各并行层关键结点的最早开始时间和最晚完成时间,构建各并行层的时间窗口;
采用马尔科夫决策算法,基于各并行层的时间窗口,对各并行层的DAG图中工作结点分配服务资源,形成各并行层的多个服务资源链队列,完成离线状态DAG图构建;
通过在线动态调度离线状态DAG图,采用分级选择方法,对所述的各并行层的多个服务资源链队列进一步选择,得到各并行层的最优服务资源链队列,完成工作流的服务资源调度;
所述的将输入的工作流转换为DAG图,具体步骤为:
将输入的工作流分配为多个工作结点,各工作结点之间的前后依赖关系为有向边;
每个工作结点对应多个服务资源,所述服务资源包括执行时间,服务资源参数和物理域标识,不同物理域内服务之间切换的所需的时间为通信时间,提取各工作结点的服务资源参数,所述服务资源参数包括服务执行费用、失效概率或可替换服务,通过服务资源参数,对多个服务资源进行K-means聚类;
基于所述工作结点,有向边和每个工作结点对应的多个服务资源构建DAG图;
所述的各层宽裕时间为:
其中,st为工作流宽裕时间,|V|为工作流总层数,|PLj|为第j层任务数量;
所述的构建各并行层的时间窗口的最早开始时间最晚完成时间/>为:
其中,PLj表示第j层工作结点集合,KTj为第j层关键工作结点集合,表示工作结点Tj的最早开始时间,/>表示工作结点Tj的最晚完成时间,Tk为第j层工作结点与第j层关键工作结点的交集工作结点,k为交集工作结点索引,/>为交集工作结点的最早开始时间,为交集工作结点的最晚完成时间;
所述的对各并行层的DAG图中工作结点分配服务资源F(Tq)包括:
其中,f(Tq,Spk,Tp)为任务Tq选择服务资源Spk后转向前一任务Tp的过程,f(Tq,Spk,Tp)的值表示Spk的执行费用,F(Tp)为能够完成任务Tp的最优服务,|PLq|为第q并行层工作结点的数量,k为第q并行层的工作结点索引;
采用马尔科夫决策算法,对Tq任务对应的多个服务资源进行选择,得到各并行层的多个服务资源链队列;
各并形层服务资源的执行时间和通讯时间满足以下条件:
其中,Sm.t表示服务Sm的执行时间,|c(m-1)m|表示各服务资源与前驱服务资源间的通信时间,m为各并行层的工作结点索引。
2.根据权利要求1所述的基于有向无环图分层的工作流调度方法,其特征在于,所述的将关键路径分层划分,具体步骤为:
将关键路径进行分层,每一层具有一个关键结点,以及与所述关键结点并行执行的一个或多个关联结点,所述每一层内一个或多个关联结点的执行时间位于所述关键结点的时间窗内。
3.根据权利要求1所述的基于有向无环图分层的工作流调度方法,其特征在于,所述的通过在线动态调度离线状态DAG图的步骤包括:
每一并行层服务资源执行完毕后,基于工作执行时间的动态变化,采用动态规划法,对后续并行层宽裕时间进行动态更新,基于动态更新结果,重新确定各并行层时间窗口;
基于每一并行层的时间窗口的动态调整,采用马尔科夫决策算法,对后续并行层重新选择服务链队列。
4.一种基于有向无环图分层的工作流调度装置,包括计算机存储器、计算机处理器以及存储在所述计算机存储器中并可在所述计算机处理器上执行的计算机程序,其特征在于,所述计算机存储器中采用权利要求1~3任一项所述的基于有向无环图分层的工作流调度方法构建的多个并行层的DAG模型;
所述计算机处理器执行所述计算机程序时实现以下步骤:
将工作流输入至多个并行层的DAG模型中,经计算完成工作流的服务调度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110545583.6A CN113190336B (zh) | 2021-05-19 | 2021-05-19 | 一种基于有向无环图分层的工作流调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110545583.6A CN113190336B (zh) | 2021-05-19 | 2021-05-19 | 一种基于有向无环图分层的工作流调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113190336A CN113190336A (zh) | 2021-07-30 |
CN113190336B true CN113190336B (zh) | 2024-04-30 |
Family
ID=76982476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110545583.6A Active CN113190336B (zh) | 2021-05-19 | 2021-05-19 | 一种基于有向无环图分层的工作流调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113190336B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106447173A (zh) * | 2016-09-05 | 2017-02-22 | 北京理工大学 | 一种支持任意流程结构的云工作流调度方法 |
CN107301500A (zh) * | 2017-06-02 | 2017-10-27 | 北京工业大学 | 一种基于关键路径任务前瞻的工作流调度方法 |
CN110287011A (zh) * | 2019-06-17 | 2019-09-27 | 南通大学 | 一种基于局部路径与截止期限分配的云工作流调度算法 |
-
2021
- 2021-05-19 CN CN202110545583.6A patent/CN113190336B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106447173A (zh) * | 2016-09-05 | 2017-02-22 | 北京理工大学 | 一种支持任意流程结构的云工作流调度方法 |
CN107301500A (zh) * | 2017-06-02 | 2017-10-27 | 北京工业大学 | 一种基于关键路径任务前瞻的工作流调度方法 |
CN110287011A (zh) * | 2019-06-17 | 2019-09-27 | 南通大学 | 一种基于局部路径与截止期限分配的云工作流调度算法 |
Non-Patent Citations (1)
Title |
---|
使用宽裕时间有效分配优化工作流逆向分层算法;郑美光;胡志刚;杨柳;赵锦元;;小型微型计算机系统;20160815(第08期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113190336A (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Madni et al. | Recent advancements in resource allocation techniques for cloud computing environment: a systematic review | |
Madni et al. | Resource scheduling for infrastructure as a service (IaaS) in cloud computing: Challenges and opportunities | |
Wieczorek et al. | Towards a general model of the multi-criteria workflow scheduling on the grid | |
CN102508639B (zh) | 一种基于卫星遥感数据特征的分布式并行处理方法 | |
Chakravarthi et al. | TOPSIS inspired budget and deadline aware multi-workflow scheduling for cloud computing | |
CN103729246A (zh) | 一种任务调度方法和装置 | |
CN104123182A (zh) | 基于主从架构的MapReduce任务跨数据中心调度系统及方法 | |
CN106371924B (zh) | 一种最小化MapReduce集群能耗的任务调度方法 | |
Malik et al. | Comparison of task scheduling algorithms in cloud environment | |
Lu et al. | A review of cost and makespan-aware workflow scheduling in clouds | |
Wang et al. | Kepler+ cometcloud: Dynamic scientific workflow execution on federated cloud resources | |
Klevanskiy et al. | Multi-project scheduling: multicriteria time-cost trade-off problem | |
Liu et al. | Towards a robust meta-reinforcement learning-based scheduling framework for time critical tasks in cloud environments | |
Kumar | A new hybrid particle swarm optimizationalgorithm for optimal tasks scheduling in distributed computing system | |
Choudhary et al. | A novel strategy for deterministic workflow scheduling with load balancing using modified min-min heuristic in cloud computing environment | |
Ananth et al. | Cooperative game theoretic approach for job scheduling in cloud computing | |
CN113190336B (zh) | 一种基于有向无环图分层的工作流调度方法及装置 | |
Shahid et al. | A multi-objective workflow allocation strategyin IaaS cloud environment | |
Wang et al. | Electricity-cost-aware multi-workflow scheduling in heterogeneous cloud | |
Xue et al. | Towards Efficient Workflow Scheduling Over Yarn Cluster Using Deep Reinforcement Learning | |
Ammar et al. | Scheduling real time parallel structure on cluster computing | |
Chen et al. | Priority-based dag task offloading and secondary resource allocation in iot edge computing environments | |
Nesmachnow et al. | Multiobjective energy-aware workflow scheduling in distributed datacenters | |
Liu | A Programming Model for the Cloud Platform | |
Duan et al. | A sequential cooperative game theoretic approach to Storage-Aware scheduling of multiple Large-Scale workflow applications in grids |
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 |