一种基于预约的批量作业调度方法

文档序号:6377180阅读:249来源:国知局
专利名称:一种基于预约的批量作业调度方法
技术领域
本发明属于计算机技术领域,具体涉及一种基于预约的批量作业调度方法。
背景技术
高性能集群是用于进行高性能计算的软硬件系统的总称。硬件上通常由高性能服务器、高速存储、高速网络、机房基础设施(如供电、制冷)等部分组成;软件方面,通常包括作业调度软件、集群监控管理软件、并行存储软件等部分组成。作业调度系统是负责完成应用作业调度的软件系统。从功能上说,通常由资源管理器、作业调度器、任务执行器等部分组成;调度系统类似于一个操作系统,一般会提供比较完善的对于作业、资源等内部对象进行管理的接口,包括命令行接口、API接口。比较常
见的调度系统包括LSF、SGE、PBS (Torque是pbs的一个分支)。耦合仿真计算是当前一种比较热门的仿真应用领域。在高速列车、飞机、汽车等领域中都有重要的应用。目前,耦合仿真应用通常都是作为一个专有的软件系统,运行于类似工作站等环境下,很少考虑在集群环境下的使用。从发展趋势来看,这类应用以后在集群下运行是必然的。问题就在于调度系统如何支持该类型计算。耦合任务计算有一个显著特征就是,各个耦合模块必须同时调度成功,耦合任务才能开始计算。这与传统的作业调度是不同的。在目前主流的调度系统都是对于单个作业提供了各种调度算法,作业流功能也仅仅是定义作业之间数据流转、作业运行等时序关系,基本都不支持对于作业的批量调度。

发明内容
为了克服上述现有技术的不足,本发明提供一种基于预约的批量作业调度方法,解决了耦合作业批量调度的问题,可以保证耦合任务的正常计算,同时还可以避免个别耦合任务启动但耦合作业整体不能计算的问题,提高集群的整体利用率。为了实现上述发明目的,本发明采取如下技术方案一种基于预约的批量作业调度方法,所述方法包括以下步骤步骤I :提交作业并为作业指定耦合属性;步骤2 :作业调度系统对作业进行调度,若发现某个任务为耦合任务,则自动将这类任务作为一组,统一任务的优先级为该耦合任务中优先级最高的任务;步骤3 :若所有耦合任务成功创建临时预约,则开始作业启动过程;否则,删除之前创建的临时预约,然后继续处理下个作业;步骤4 :若所有耦合任务均对应临时预约,则批量启动所有耦合任务。所述步骤I中,提交第一个耦合任务时,所述作业调度系统自动返回耦合编号。提交后续任务时,指定使用所述耦合编号。所述步骤2中,作业调度系统根据优先级调度任务时,若发现该耦合任务,则在匹配资源成功时,创建临时预约,然后继续检查同一耦合作业的其它任务。
所述步骤4中,若有任一任务启动失败,则通过回滚删除已经启动的任务,并删除临时预约,继续处理下个作业。与现有技术相比,本发明的有益效果在于本发明提供一种基于预约的批量作业调度方法,解决了耦合作业批量调度的问题,可以保证耦合任务的正常计算,同时还可以避免个别耦合任务启动但耦合作业整体不能计算的问题,提高集群的整体利用率;该方法简单可靠,易执行。


图I是耦合任务调度流程图。
具体实施例方式下面结合附图对本发明作进一步详细说明。 本发明提供一种基于预约的批量作业调度方法,所述方法包括以下步骤步骤I :提交作业并为作业指定耦合属性;提交第一个耦合任务时,所述作业调度系统自动返回耦合编号。提交后续任务时,指定使用所述耦合编号。耦合任务提交完成后可以通过命令通知调度系统该组耦合任务可以调度。步骤2 :作业调度系统对作业进行调度,若发现某个任务为耦合任务,则自动将这类任务作为一组,统一任务的优先级为该耦合任务中优先级最高的任务;作业调度系统根据优先级调度任务时,若发现该耦合任务,则在匹配资源成功时,创建临时预约,然后继续检查同一耦合作业的其它任务。步骤3 :若所有耦合任务成功创建临时预约,则开始作业启动过程;否则,删除之前创建的临时预约,然后继续处理下个作业;步骤4 :若所有耦合任务均对应临时预约,则批量启动所有耦合任务。若有任一任务启动失败,则通过回滚删除已经启动的任务,并删除临时预约,继续处理下个作业。最后应当说明的是以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解依然可以对本发明的具体实施方式
进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种基于预约的批量作业调度方法,其特征在于所述方法包括以下步骤 步骤I:提交作业并为作业指定耦合属性; 步骤2 :作业调度系统对作业进行调度,若发现某个任务为耦合任务,则自动将这类任务作为一组,统一任务的优先级为该耦合任务中优先级最高的任务; 步骤3 :若所有耦合任务成功创建临时预约,则开始作业启动过程;否则,删除之前创建的临时预约,然后继续处理下个作业; 步骤4 :若所有耦合任务均对应临时预约,则批量启动所有耦合任务。
2.根据权利要求I所述的基于预约的批量作业调度方法,其特征在于所述步骤I中,提交第一个耦合任务时,所述作业调度系统自动返回耦合编号。
3.根据权利要求2所述的基于预约的批量作业调度方法,其特征在于提交后续任务时,指定使用所述耦合编号。
4.根据权利要求I所述的基于预约的批量作业调度方法,其特征在于所述步骤2中,作业调度系统根据优先级调度任务时,若发现该耦合任务,则在匹配资源成功时,创建临时预 约,然后继续检查同一耦合作业的其它任务。
5.根据权利要求I所述的基于预约的批量作业调度方法,其特征在于所述步骤4中,若有任一任务启动失败,则通过回滚删除已经启动的任务,并删除临时预约,继续处理下个作业。
全文摘要
本发明提供一种基于预约的批量作业调度方法,包括以下步骤提交作业并为作业指定耦合属性;作业调度系统对作业进行调度,若发现某个任务为耦合任务,则自动将这类任务作为一组,统一任务的优先级为该耦合任务中优先级最高的任务;若所有耦合任务成功创建临时预约,则开始作业启动过程;否则,删除之前创建的临时预约,然后继续处理下个作业;若所有耦合任务均对应临时预约,则批量启动所有耦合任务。本发明解决了耦合作业批量调度的问题,可以保证耦合任务的正常计算,同时还可以避免个别耦合任务启动但耦合作业整体不能计算的问题,提高集群的整体利用率。
文档编号G06F9/46GK102929695SQ201210348300
公开日2013年2月13日 申请日期2012年9月18日 优先权日2012年9月18日
发明者张涛 申请人:曙光信息产业(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1