一种集群系统中的进程通信方法及装置制造方法及图纸

技术编号:19778146 阅读:46 留言:0更新日期:2018-12-15 11:15
本申请实施例提供了一种集群系统中的进程通信方法及装置,该方法包括:确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系;根据所述进程编号间的启动关系,以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;进行进程间通信;且在进程间进行第一次通信时,使通信双方向0号进程查询对方的地址信息。本申请实施可提高集群系统的并行处理效率,具有高性能高扩展性易于使用的优点,可以满足计算密集和数据密集的勘探地球物理领域海量数据并行计算框架开发的需要,并显著提升大规模并行与分布式地震应用程序的开发效率和质量。

【技术实现步骤摘要】
一种集群系统中的进程通信方法及装置
本申请涉及计算机通信
,尤其是涉及一种集群系统中的进程通信方法及装置。
技术介绍
近年来,随着地震采集技术的发展,地震资料的数据量不断增大,同时一些超大计算量的先进算法逐步进入生产实用,海量地震资料的并行计算进一步加强了对超大规模并行计算系统的需求。由于与之匹配的并行实现技术框架缺乏,集群系统的超大并行规模和多态复杂的体系结构,给传统高性能计算应用带来巨大的挑战。当前面向集群计算系统的并行实现大都基于两级并行模型,即MPI(MessagePassingInterface,消息传递接口)并行+线程并行两级方式。据目前可查文献,应用领域的计算机系统的主要并行应用的MPI级并行规模都在百千量级,很难支撑更大规模和更复杂的并行计算应用。目前,并行编程框架是并行程序实现的基础平台,其表达能力和性能将对并行算法设计和应用程序实现产生根本性的影响。因此,如何实现支持单作业千节点以上并行规模,表达复杂运行模式的高性能高可扩展性的并行编程框架,已成为本领域技术人员亟待解决的技术难题。
技术实现思路
本申请实施例的目的在于提供一种集群系统中的进程通信方法及装置,以提高集群系统的并行处理效率。为达到上述目的,一方面,本申请实施例提供了一种集群系统中的进程通信方法,包括:确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系;根据所述进程编号间的启动关系,以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;进行进程间通信;且在进程间进行第一次通信时,使通信双方向0号进程查询对方的地址信息。本申请实施例的集群系统中的进程通信方法,还包括:使每个子进程在成功启动后向0号进程发送成功启动信息;对应的,使父进程在启动其子进程后向0号进程询问该子进程是否已成功启动;如果未成功启动,则确认该子进程出现故障,并使所述父进程接管该子进程启动下一级进程的任务。本申请实施例的集群系统中的进程通信方法,所述进行进程间通信,包括:使源进程向目标进程发送消息;所述消息为序列化对象;使所述目标进程基于预设的PutHandler方法反序列化所述消息并处理。本申请实施例的集群系统中的进程通信方法,所述进行进程间通信,包括:使源进程从目标进程获取消息;使所述目标进程基于预设的GetHandler方法组装消息,并将组装后的消息发送给所述源进程。本申请实施例的集群系统中的进程通信方法,所述进行进程间通信,包括:使源进程向目标进程发送第一消息;使所述目标进程基于预设的GetHandler方法或CallHandler方法接收并处理所述第一消息,然后根据所述第一消息的处理结果生成第二消息并返给所述源进程。本申请实施例的集群系统中的进程通信方法,所述进行进程间通信,还包括:在作业任务完成初始化阶段之后,定时ping每个作业进程,以进行进程故障检测;当通过ping确认存在故障进程时,使集群系统中的主节点将进程故障事件通知所有的正常作业进程。本申请实施例的集群系统中的进程通信方法,在使集群系统中的主节点将进程故障事件通知所有的正常作业进程之后,还包括:当有进程请求失败的任务时,使该进程截获所述故障事件通知并交由故障处理类进行处理。本申请实施例的集群系统中的进程通信方法,所述使集群系统中的主节点将进程故障事件通知所有的正常作业进程,包括:当通过ping确认存在故障进程时,基于预设的进程组管理策略从进程组中剔除所有故障进程,并使集群系统中的主节点将进程故障事件通知已剔除所有故障进程后的进程组中的每个进程。另一方面,本申请实施例还提供了一种集群系统中的进程通信装置,包括:启动关系确定模块,用于确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系;进程启动执行模块,用于根据所述进程编号间的启动关系,以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;进程通信执行模块,用于进行进程间通信;且在进程间进行第一次通信时,使通信双方向0号进程查询对方的地址信息。另一方面,本申请实施例还提供了另一种集群系统中的进程通信装置,包括存储器、处理器、以及存储在所述存储器上的计算机程序,所述计算机程序被所述处理器运行时执行如下步骤:确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系;根据所述进程编号间的启动关系,以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;进行进程间通信;且在进程间进行第一次通信时,使通信双方向0号进程查询对方的地址信息。由以上本申请实施例提供的技术方案可见,本申请实施例以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;当进程间进行第一次通信时,可使通信双方向0号进程查询对方的地址信息,因此,本申请实施例可降低进程启动过程的时间复杂度得以大大降低,从而提高了集群系统的并行处理效率。此外,本申请实施例的进程间的活动消息通信方式可以表达更加复杂的并行模式和非规则计算,从而提高集群系统的适应性及高扩展性;本申请实施例的容错机制使得节点故障时可以自动迁移任务,从而提高系统的适应性和健壮性;本申请实施例的进程组管理策略有利于容错广播的实现。因此,本申请实施可以满足计算密集和数据密集的勘探地球物理领域海量数据并行计算框架开发的需要,并显著提升大规模并行与分布式地震应用程序的开发效率和质量。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:图1为本申请一实施例的集群系统中的进程通信方法的流程图;图2为本申请一实施例中进程编号的启动关系示意图;图3为本申请一实施例中Put通信接口的描述图;图4为本申请一实施例中Put通信接口的通信模型;图5为本申请一实施例中Get通信接口的描述图;图6为本申请一实施例中Get通信接口的通信模型;图7为本申请一实施例中Call通信接口的描述图;图8为本申请一实施例中进程管理组类的描述图;图9为本申请一实施例中故障处理示例的描述图;图10为本申请一实施例中进程启动性能测试示意图;图11为本申请一实施例中GPP的系统架构图;图12为本申请一实施例中GeoPSTM的测试数据的数据表;图13为本申请一实施例中GeoPSTM的示意图;图14为本申请一实施例的集群系统中的进程通信装置的结构框图;图15为本申请另一实施例的集群系统中的进程通信装置的结构框图。具体实施方式为了使本
的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。参考图1所示,本申请实施例的集群系统中的进程通信方法可以包括以下步骤:S101、确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系。在本申请一些实施例中,进程编号间的本文档来自技高网
...

【技术保护点】
1.一种集群系统中的进程通信方法,其特征在于,包括:确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系;根据所述进程编号间的启动关系,以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;进行进程间通信;且在进程间进行第一次通信时,使通信双方向0号进程查询对方的地址信息。

【技术特征摘要】
1.一种集群系统中的进程通信方法,其特征在于,包括:确定进程编号间的启动关系;所述启动关系包括细胞分裂式的启动关系;根据所述进程编号间的启动关系,以细胞分裂方式启动进程;且在进程启动期间,使每个进程将其地址信息发送给0号进程;进行进程间通信;且在进程间进行第一次通信时,使通信双方向0号进程查询对方的地址信息。2.如权利要求1所述的集群系统中的进程通信方法,其特征在于,还包括:使每个子进程在成功启动后向0号进程发送成功启动信息;对应的,使父进程在启动其子进程后向0号进程询问该子进程是否已成功启动;如果未成功启动,则确认该子进程出现故障,并使所述父进程接管该子进程启动下一级进程的任务。3.如权利要求1所述的集群系统中的进程通信方法,其特征在于,所述进行进程间通信,包括:使源进程向目标进程发送消息;所述消息为序列化对象;使所述目标进程基于预设的PutHandler方法反序列化所述消息并处理。4.如权利要求1所述的集群系统中的进程通信方法,其特征在于,所述进行进程间通信,包括:使源进程从目标进程获取消息;使所述目标进程基于预设的GetHandler方法组装消息,并将组装后的消息发送给所述源进程。5.如权利要求1所述的集群系统中的进程通信方法,其特征在于,所述进行进程间通信,包括:使源进程向目标进程发送第一消息;使所述目标进程基于预设的GetHandler方法或CallHandler方法接收并处理所述第一消息,然后根据所述第一消息的处理结果生成第二消息并返给所述源进程。6.如权利要求3至5任一项所述的集群系统中的进程通信方法,其特征在于,所述进行进程间通信,还包括:在作业任务完成初始化阶段之后,定时pin...

【专利技术属性】
技术研发人员:赵长海文佳敏罗国安薛贵仁王狮虎张建磊
申请(专利权)人:中国石油天然气集团有限公司中国石油集团东方地球物理勘探有限责任公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1