[发明专利]任务分配装置和任务分配方法有效
申请号: | 201110448873.5 | 申请日: | 2011-12-28 |
公开(公告)号: | CN102521056A | 公开(公告)日: | 2012-06-27 |
发明(设计)人: | 祝奇 | 申请(专利权)人: | 用友软件股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京友联知识产权代理事务所(普通合伙) 11343 | 代理人: | 尚志峰;汪海屏 |
地址: | 100094 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 分配 装置 方法 | ||
技术领域
本发明涉及计算机技术领域,具体而言,涉及任务分配装置和任务分配方法。
背景技术
在计算机技术领域中,大量存在着这样的计算场景:一个复杂的计算任务模型由多个有依赖性的计算任务组成,依赖任务只能在被依赖任务完成后才能进行计算,而不具有依赖关系的计算任务可并行计算。同时,这些任务计算量具有时间可变性:即每次计算时任务计算量不同,且其计算量对被依赖任务的输出敏感;同时,不同的任务其计算量具有较大的差异性。
如图1,一个典型的计算任务模型实例的执行过程如下:
在这个实例中包含任务1-1、任务2-1、任务2-2、任务3-1、任务3-2,这些任务的计算量均不相同且不可分割。其中任务2-1、任务2-2这两个任务依赖于任务1-1的完成,并且可以并行计算。任务3-1依赖于任务2-1的完成,任务3-2依赖于任务2-1,任务2-2的完成,并且任务3-1、任务3-2可以并行计算。
对于这类计算任务模型,如何把任务分配到计算资源上,以获得优选的计算时间,是一个很重要的问题。在并行计算领域现有技术解决方案主要有以下几种:1,基于计算资源的能力,人为静态指定任务分配到哪些计算资源;2,引入分配服务器,对计算资源建立任务队列,分配服务器监测计算资源任务队列中待执行任务数的多少来分配计算资源;3,编译时建立任务间的静态依赖关系,依赖于其它任务完成的任务设置启动点,被依赖任务完成后通知依赖任务执行,同时在编译时基于任务关键路径进行任务分配建立执行链。
目前这些方法均要求任务的计算量有基本稳定的特征,任务间的计算量差异较小的特征,同时未考虑计算资源的能力差异性。这些方法会导致不同计算资源从计算量角度看会出现分配不合理的情况,出现计算任务未分配到可最早可完成的计算资源上,从而导致任务最终完成需要更多的时间。
分析目前技术方案主要存在的问题在于没有考虑任务的计算量的可变性、任务间计算量的差异性、计算资源的计算能力差异。因此,需要一种新的任务分配方法,能够更合理地分配计算资源,提高整个计算任务的执行效率。
发明内容
本发明所要解决的技术问题在于,需要提出一种新的任务分配方法,能够更合理地分配计算资源,提高整个计算任务的执行效率。
有鉴于此,本发明提供了一种任务分配装置,包括:依赖分析模块,根据第一组任务以及所述第一组任务之间的依赖关系,从所述第一组任务中取得被依赖任务不存在或已完成的第二组任务;时间计算模块,计算所述第二组任务中每个任务的预计完成时间;任务分配模块,根据所述预计完成时间,将为所述第二组任务逐次分配给计算资源以进行执行。在该技术方案中,以预计完成时间为标准,对当前可执行(被依赖任务不存在或已完成)的任务进行了计算量计算,实现了任务的合理分配。
在上述技术方案中,优选地,所述依赖分析模块在所述第二组任务中的任一任务执行完成时,从所述第一组任务中取得新的被依赖任务不存在或已完成的任务,加入所述第二组任务。在该技术方案中,根据任务完成情况,更新被依赖任务不存在或已完成的任务,能够保证当前情况下任务的合理分配。
在上述技术方案中,优选地,所述依赖分析模块还存储所述依赖关系,并在所述第二组任务中的任一任务执行完成时,对所述依赖关系中与所述已完成任务相关的部分进行修改,并根据所述依赖关系修改的部分,取得所述新的被依赖任务不存在或已完成的任务。在该技术方案中,可以防止给依赖任务分配计算资源,同时当依赖任务状态改变时,可以及时根据改变的依赖关系来分配任务,保证了任务分配的合理性。
在上述技术方案中,优选地,所述的任务分配装置,还包括:状态设置模块,为所述第二组任务设置任务状态,所述时间计算模块根据所述任务状态,识别并选取所述第二组任务,再计算所述预计完成时间。在该技术方案中,通过任务状态的设置,可以轻易地识别出被哪些任务的被依赖任务已不存在,并准确地进行选取。
在上述技术方案中,优选地,所述预计完成时间=max(所述计算资源当前执行任务的预计完工时间,当前时间)+(所述第二组任务中每个任务的计算量/所述计算资源的处理速度)。在该技术方案中,通过在计算资源当前执行任务的预计完工时间与当前时间之间选取最大值,可以准确计算出任务完成所需的时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于用友软件股份有限公司,未经用友软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110448873.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:径向伸缩式光纤电缆
- 下一篇:一种分离式防水多芯光缆