[发明专利]一种基于工作流吞吐量最大化的工作流调度方法有效
申请号: | 201410101274.X | 申请日: | 2014-03-18 |
公开(公告)号: | CN103838627B | 公开(公告)日: | 2017-05-17 |
发明(设计)人: | 谢军奇;徐秀杰;田国忠;肖创柏 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
代理公司: | 北京思海天达知识产权代理有限公司11203 | 代理人: | 张慧 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 工作流 吞吐量 最大化 调度 方法 | ||
技术领域
本发明涉及工作流调度技术领域,尤其涉及一种具有执行期限约束的使工作流吞吐量最大化的工作流调度方法。
背景技术
工作流可以看作由多个基本任务组成的集合,某些任务之间具有先后顺序和数据传递依赖关系。工作流调度技术是异构分布式计算领域中的关键技术,它直接影响到异构分布式计算环境下工作流调度系统的运行效率和异构分布式计算资源的利用率。
目前有关异构分布式计算环境下的多DAG混合调度的研究文献分别在执行时间最小化、公平性最大化、吞吐量最大化或资源分配优化等方面已经取得了一些进展。但在很多情况下,用户根据应用需要可以进一步对DAG执行的有关属性和限制条件等进行描述及定义,而期限约束是其中重要的限制条件之一。因此当一个DAG应用有了用户定义的期限约束,其调度执行就不再以执行时间最小化为目标,而只需要在用户指定的期限之前完成即可。解决具有期限约束的多DAG共享资源调度的吞吐量最大化问题,将会对提高多DAG应用调度的吞吐率、提高资源利用率和节省DAG应用执行的费用等方面有重要意义。
著名学者Theodore P.Baker发表在IEEE上的文章An analysis of EDF schedulability on a multiprocessor提出的解决具有期限约束的多个工作流调度问题的EDF(Earliest Deadline First)方法,其基本思想是任务的期限约束越早,其任务将会越早被调度,又如学者GEORGIOS L和STAVRINIDES HELEN D,在2010年发表于Journal of Systems and Software上的Scheduling multiple task graphs with end-to-end deadlines in distributed real-time systems utilizing imprecise computations就是借鉴了EDF的思想,将每个DAG的期限约束作为优先级值来确定多个DAG之间任务调度的优先级关系,虽然采取这种方法在多个DAG的结构和任务量大小相近的情况下会有较好的效果,但是在很多情况下,DAG期限约束的绝对值不足以反应多个结构不同DAG之间的紧急程度关系。例如,A和B两个DAG共享一定数量的一组资源同时进行混合调度,其中A的期限约束(设为DA)较为紧急,接近其Makespan(在某个时间最小化算法下的对DAG单独进行调度的时间长度,称为Makespan),而B的期限约束(设为DB)大约为其Makespan的2倍。但如果B的任务量较小,很有可能会出现DB<DA的情况,按照EDF方法,A的任务只有在B中所有任务优先被调度完毕后才能被调度,那么A将不能在DA之前完成。
发明内容
针对现有技术中存在的上述问题,本发明提出一种在工作流调度系统中使用的具有执行期限约束的工作流吞吐量最大化的方法,即考虑多个工作流在异构分布式计算资源上调度,并使工作流完成的数目尽可能多,计算资源利用尽可能充分,这样就能够大大提高工作流调度系统的效率,减少由于没有在规定时间内完成计算而带来的损失,提高系统的用户体验。
为了达到目的,本发明采用以下技术方案。
一种基于工作流吞吐量最大化的工作流调度方法,包括以下步骤:
步骤1,用户提交具有执行期限约束的工作流。
多个用户向工作流调度系统提交具有执行期限约束的的工作流,要求该工作流必须在规定的时间内完成。如果工作流不能在规定时间内完成,反馈信息给用户,用户可以根据反馈信息选择下一步活动;如果工作流能够在规定的时间内完成,则将工作流的各个任务映射到异构分布式计算资源上调度执行。
步骤2,将工作流转换为有向无环任务模型图DAG(Directed Acyclic Graph)。
当多个工作流同时进入到调度系统时,如果要对工作流进行调度,就必须对工作流进行预处理,将工作流转换为能够被识别和处理的DAG任务模型图。具体方法如下。
步骤2.1,对每一个用户提交的工作流进行预处理。
(1)用G=(V,E)表示DAG任务模型图。
DAG任务模型图如图2所示,各个参数的含义如下:
G=(V,E)中的V和E:V表示v个任务结点的集合,每个结点代表工作流的一个任务,称为任务结点;E表示e条有向边的集合,每条边代表任务结点之间的先后顺序和数据传递依赖关系。DAG任务模型图由v个任务结点和e条有向边构成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410101274.X/2.html,转载请声明来源钻瓜专利网。