一种基于差异识别的并行系统局部迁移容错方法

文档序号:9708161阅读:263来源:国知局
一种基于差异识别的并行系统局部迁移容错方法
【技术领域】
[0001]本发明涉及处理器技术领域,具体涉及一种基于差异识别的并行系统局部迀移容错方法。
【背景技术】
[0002]在并行系统中,大规模作业的容错处理一直是影响系统可用性、好用性和资源利用率关键性问题。
[0003]具体地说,在并行系统中,由于节点规模巨大,所以频发的节点故障导致作业的连续运行会经常性的被打断;而频繁的容错不但影响作业的持续运行,降低了系统资源的利用率,也极大的影响用户的使用体验。
[0004]基于故障预警实现主动容错的作业迀移是解决该问题的一个有效手段。在这种方案中,一般在发现某些节点发生故障预警或健康度降低时,将该节点上的作业任务迀移到其他健康资源,以避免节点故障影响作业的持续运行。
[0005]但是,在现有技术的这种方案中,主要是针对预警节点进行整机环境迀移或者对预警节点上的作业用户进程进行整体迀移,两种情况都需要迀移的环境较大,容错时间长、开销大。

【发明内容】

[0006]本发明所要解决的技术问题是针对现有技术中存在上述缺陷,主要针对常规作业迀移开销较大的问题,实现了一种基于差异识别的并行系统局部迀移容错方法,能够有效的降低节点作业任务迀移时的开销,有效减少迀移容错时间,降低容错风险,提高资源利用率。
[0007]根据本发明,提供了一种基于差异识别的并行系统局部迀移容错方法,包括:
[0008]第一步骤:系统根据节点的工作状态启动并行作业迀移容错并申请新资源用于作业迀移;
[0009]第二步骤:作业管理进行迀移前准备;
[0010]第三步骤:并行文件系统进行飞行数据驱赶及状态保留,而且并行语言库进行消息驱赶及任务同步;
[0011]第四步骤:并行语言库提取出用户使用的内存中需要迀移的关键信息,将关键信息通知到系统核心,并通知作业管理作业任务已经做好迀移准备;
[0012]第五步骤:作业管理调用系统核心接口进行作业任务迀移,其中系统核心仅仅将系统核心状态与作业任务进程信息传送到目标节点,并恢复包含关键信息的作业任务进程;
[0013]第六步骤:在目标节点,并行文件系统根据迀移前记录的描述符,再次打开对应的文件,恢复文件环境;
[0014]第七步骤:在目标节点,并行语言根据系统核心恢复的关键信息,恢复作业运行环境;
[0015]第八步骤:作业管理根据新的作业运行环境重构作业,恢复作业的继续运行。
[0016]优选地,在第一步骤中,系统判断在节点发生故障预警或健康度减低时,启动并行作业迀移容错并申请新的资源用于作业迀移。
[0017]优选地,在第二步骤中,作业管理以信号方式将并行文件系统与并行语言通知迀移源方。
[0018]优选地,在第四步骤中,并行语言库根据用户课题类型提取出用户使用的内存中需要迀移的关键信息。
【附图说明】
[0019]结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更完整的理解并且更容易地理解其伴随的优点和特征,其中:
[0020]图1示意性地示出了根据本发明优选实施例的基于差异识别的并行系统局部迀移容错方法的流程图。
[0021]需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示结构的附图可能并非按比例绘制。并且,附图中,相同或者类似的元件标有相同或者类似的标号。
【具体实施方式】
[0022]为了使本发明的内容更加清楚和易懂,下面结合具体实施例和附图对本发明的内容进行详细描述。
[0023]在根据本发明的基于差异识别的并行系统局部迀移容错方法中,结合并行作业运行状态,有效区分主动容错时需要迀移的有效信息与其它无效信息,只对有效信息进行迀移与恢复,实现低开销的容错。
[0024]下面将结合附图来描述本发明的具体优选实施例。
[0025]图1示意性地示出了根据本发明优选实施例的基于差异识别的并行系统局部迀移容错方法的流程图。
[0026]如图1所示,根据本发明优选实施例的基于差异识别的并行系统局部迀移容错方法包括依次执行的下述步骤:
[0027]第一步骤S1:系统根据节点的工作状态(系统在判断节点发生故障预警或健康度减低时)启动并行作业迀移容错并申请新资源用于作业迀移;
[0028]第二步骤S2:作业管理进行迀移前准备,例如,以信号方式通知迀移源方的并行文件系统与并行语言;其中,迀移源方是第一步骤的发生故障预警或健康度减低的节点,也就是需要将作业任务迀出的节点。
[0029]第三步骤S3:并行文件系统进行飞行数据驱赶及状态保留,以达到数据稳定态并减少迀移内容;而且并行语言库进行消息驱赶及任务同步,确保达到消息稳定状态;
[0030]第四步骤S4:并行语言库(例如根据用户课题类型),区分用户使用的内存中需要迀移的关键信息与不需迀移的其他信息(也就是说,提取出用户使用的内存中需要迀移的关键信息),将关键信息通知到系统核心,并通知作业管理作业任务已经做好迀移准备;
[0031]第五步骤S5:作业管理调用系统核心接口进行作业任务迀移,其中系统核心仅仅将系统核心状态与作业任务进程信息传送到目标节点,并恢复包含关键信息的作业任务进程;
[0032]其中,对于包含了关键信息的作业任务进程,举例来说,用户进程使用了100M内存,传统实现中,进程迀移时,核心需要迀移和恢复所有用户使用的100M内存的内容。本发明中,迀移前并行语言库通知核心内存中需要迀移的关键信息(比如10M),则进程迀移时,核心迀移和恢复用户进程时,只需要迀移和恢复这10M关键信息就可以了,其余90M无用信息可以不用迀移和恢复。
[0033]具体地,例如,当作业管理接收到作业任务已经做好迀移准备的通知时(也就是说,当作业管理判断作业任务已经做好迀移准备后),作业管理调用系统核心接口进行作业任务迀移,其中系统核心根据第四步骤S4中并行语言库通知的需要保留的关键信息(第四步骤S4中并行语言库通知核心哪些关键信息需要迀移和恢复),只需将必要的系统核心状态与作业任务进程信息传送到目标节点并恢复作业任务进程;
[0034]第六步骤S6:在目标节点(S卩,申请到的新资源),并行文件系统根据迀移前记录的描述符,再次打开对应的文件,恢复文件环境;
[0035]第七步骤S7:在目标节点,并行语言根据系统核心恢复的关键信息,恢复作业运行环境。
[0036]第八步骤S8:作业管理根据新作业运行环境(S卩,在作业原完整运行环境基础上使用目标节点替换源节点后的新作业运行环境)重构整道作业,恢复作业的继续运行。
[0037]具体地,由于作业管理重构作业运行环境时需要作业使用的所有节点的参与(包括由于替换源节点而新加入的目标节点和未变动的节点),所以新的作业运行环境包含迀移后的完整环境,不仅仅指目标节点。即,新作业运行环境包含替换源节点的目标节点以及原作业运行环境重下未变动的节点。
[0038]由此,本发明实现了一种基于差异识别的并行系统局部迀移容错方法,能够有效的降低节点作业任务迀移时的开销,有效减少迀移容错时间,降低容错风险,提高资源利用率。
[0039]为了使得技术人员能够更好地理解本发明,下面对于本说明书中使用的术语,做出下述解释:
[0040]并行作业:一般指由MPI等并行语言编写,运行于并行计算机计算资源上的任务进程集合,由作业管理系统启动和控制,通过进程间协同完成同一问题求解。
[0041]进程迀移:进程迀移就是将一个进程从当前位置移动到指定节点的指定处理器上,继续存取它的所有资源并继续运行。其主要工作就在于提取进程状态,然后在目的节点根据进程状态再生该进程。在并行计算中,进程迀移是支持负载平衡和高容错性的一种非常有效的手段。
[0042]可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
【主权项】
1.一种基于差异识别的并行系统局部迀移容错方法,其特征在于包括: 第一步骤:系统根据节点的工作状态启动并行作业迀移容错并申请新资源用于作业迀移; 第二步骤:作业管理进行迀移前准备; 第三步骤:并行文件系统进行飞行数据驱赶及状态保留,而且并行语言库进行消息驱赶及任务同步; 第四步骤:并行语言库提取出用户使用的内存中需要迀移的关键信息,将关键信息通知到系统核心,并通知作业管理作业任务已经做好迀移准备; 第五步骤:作业管理调用系统核心接口进行作业任务迀移,其中系统核心仅仅将系统核心状态与作业任务进程信息传送到目标节点,并恢复包含关键信息的作业任务进程。2.根据权利要求1所述的基于差异识别的并行系统局部迀移容错方法,其特征在于还包括: 第六步骤:在目标节点,并行文件系统根据迀移前记录的描述符,再次打开对应的文件,恢复文件环境; 第七步骤:在目标节点,并行语言根据系统核心恢复的关键信息,恢复作业运行环境。3.根据权利要求1或2所述的基于差异识别的并行系统局部迀移容错方法,其特征在于还包括: 第八步骤:作业管理根据新的作业运行环境重构作业,恢复作业的继续运行。4.根据权利要求1或2所述的基于差异识别的并行系统局部迀移容错方法,其特征在于,在第一步骤中,系统判断在节点发生故障预警或健康度减低时,启动并行作业迀移容错并申请新的资源用于作业迀移。5.根据权利要求1或2所述的基于差异识别的并行系统局部迀移容错方法,其特征在于,在第二步骤中,作业管理以信号方式将并行文件系统与并行语言通知迀移源方。6.根据权利要求1或2所述的基于差异识别的并行系统局部迀移容错方法,其特征在于,在第四步骤中,并行语言库根据用户课题类型提取出用户使用的内存中需要迀移的关键信息。
【专利摘要】一种基于差异识别的并行系统局部迁移容错方法包括:系统启动并行作业迁移容错并申请新的资源用于作业迁移;作业管理进行迁移前准备;并行文件系统进行飞行数据驱赶及状态保留;并行语言库进行消息驱赶及任务同步;并行语言库提取出需要迁移的关键信息,并通知到系统核心,并通知作业管理作业任务已经做好迁移准备;作业管理调用系统核心接口进行作业任务迁移,系统核心仅仅将系统核心状态与作业任务进程信息传送到目标节点,并恢复包含关键信息的作业任务进程;在目标节点,并行文件系统根据迁移前记录的描述符再次打开对应的文件,恢复文件环境,并行语言根据系统核心恢复的关键信息,恢复作业运行环境;作业管理重构作业,恢复作业的继续运行。
【IPC分类】G06F11/20, G06F9/50
【公开号】CN105468457
【申请号】CN201510830319
【发明人】宋长明, 刘沙, 李伟东, 张宏宇, 王礼生
【申请人】无锡江南计算技术研究所
【公开日】2016年4月6日
【申请日】2015年11月24日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1