首页> 中国专利> 用于具有多个处理器核心的处理器系统的同步器

用于具有多个处理器核心的处理器系统的同步器

摘要

一种用于具有多个处理器核心的处理器系统的同步器包括:同步向量表、同步处理部件、断连分析处理部件、以及死锁检查部件。同步向量表由多个条目组成,分别用于接收并对应保存来自多个处理器核心的当前待同步位图请求信息。同步处理部件用于通过查询同步向量表来对同步向量表中的情况进行分析和处理,从而在待同步处理器核心均符合同步要求时向处理器核心返回同步完成信号。断连分析处理部件用于接收降级指示信号,并且根据降级指示信号将同步器设置为降级同步模式或者非降级同步模式;断连分析处理部件用于接收断连位信号,根据断连位信号更改同步向量表,从而实现在位处理器核心与降级断连处理器核心的同步功能。

著录项

  • 公开/公告号CN102880585A

    专利类型发明专利

  • 公开/公告日2013-01-16

    原文格式PDF

  • 申请/专利权人 无锡江南计算技术研究所;

    申请/专利号CN201210370444.5

  • 申请日2012-09-28

  • 分类号G06F15/167;G06F9/52;

  • 代理机构北京众合诚成知识产权代理有限公司;

  • 代理人龚燮英

  • 地址 214083 江苏省无锡市滨湖区军东新村030号

  • 入库时间 2024-02-19 17:08:41

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-05-06

    授权

    授权

  • 2013-02-27

    实质审查的生效 IPC(主分类):G06F15/167 申请日:20120928

    实质审查的生效

  • 2013-01-16

    公开

    公开

说明书

技术领域

本发明涉及计算机设计领域,更具体地说,本发明涉及一种用于具有 多个处理器核心的处理器系统的同步器。

背景技术

随着单核处理器芯片集成度和主频的提高,处理器技术遇到了制造成 本、功耗、散热等问题,促使多核、多线程技术成为处理器系统发展的新 方向。其中集成几百甚至上千个核的处理器系统一般称为众核处理器系 统。多核处理器系统以及众核处理器系统中的核数的增加保证了计算和数 据处理能力持续提高。

多核处理器以及众核处理器内的同步操作比较频繁,对同步效率的要 求也越来越高,使用专用硬件同步器进行同步效率远远高于传统的锁方式 效率。

同时,在多核及众核处理器系统中,某个核心出现故障的概率大大提 高。核心降级是最常用的容错方式,为支持容错,降低软件并行程序开发 复杂度,就需要同步器具有支持降级同步的能力。

要充分发挥多核处理器以及众核处理器的性能,程序就必须采用多线 程并发计算的方式。但是,多线程必然会遇到同步问题,如果同步控制出 现问题,就可能出现死锁。具体地说,当一个线程因等待另一个线程的资 源而阻塞,而同时该资源永远不会被释放时,就发生死锁。死锁检查功能 是进行死锁避免和消除的基础支撑。

因此,希望能够提供一种能够有效提高本处理器的容错能力并支持死 锁检查机制的处理器同步方案。

发明内容

本发明所要解决的技术问题是针对现有技术中存在上述缺陷,提供一 种能够有效提高处理器系统的健壮性和容错能力、并支持死锁检查机制和 可降级同步的同步器以及处理器系统。

根据本发明的第一方面,提供了一种用于具有多个处理器核心的处理 器系统的同步器,其包括:同步向量表、同步处理部件、以及断连分析处 理部件;其中,所述同步向量表由多个条目组成,分别用于接收并对应保 存来自多个处理器核心的当前待同步位图请求信息;所述同步处理部件用 于通过查询所述同步向量表来对同步向量表中的情况进行分析和处理,从 而在待同步处理器核心均符合同步要求时向处理器核心返回同步完成信 号;所述断连分析处理部件用于接收降级指示信号,并且根据降级指示信 号将所述同步器设置为降级同步模式或者非降级同步模式;此外,所述断 连分析处理部件用于接收断连位信号,根据断连位信号更改所述同步向量 表,从而实现在位处理器核心与降级断连处理器核心的同步功能。

优选地,上述用于具有多个处理器核心的处理器系统的同步器,其特 征在于还包括:死锁检查部件,用于完成对所述同步向量表的死锁条件检 查,当同步向量表中描述的待同步位图信息存在死锁时,进行提示和报警。

根据本发明的第二方面,提供了一种用于具有多个处理器核心的处理 器系统的同步器,其特征在于包括:同步向量表、同步处理部件、以及死 锁检查部件;其中,所述同步向量表由多个条目组成,分别用于接收并对 应保存来自多个处理器核心的当前待同步位图请求信息;所述同步处理部 件用于通过查询所述同步向量表来对同步向量表中的情况进行分析和处 理,从而在待同步处理器核心均符合同步要求时向处理器核心返回同步完 成信号;所述死锁检查部件,用于完成对所述同步向量表的死锁条件检查, 当同步向量表中描述的待同步位图信息存在死锁时,进行提示和报警。

优选地,上述用于具有多个处理器核心的处理器系统的同步器,其特 征在于还包括述断连分析处理部件,所述断连分析处理部件用于接收降级 指示信号,并且根据降级指示信号将所述同步器设置为降级同步模式或者 非降级同步模式;此外,所述断连分析处理部件用于接收断连位信号,根 据断连位信号更改所述同步向量表,从而实现在位处理器核心与降级断连 处理器核心的同步功能。

优选地,所述同步处理部件通过查询所述同步向量表判断处理器系统 中的各个处理器核心是否满足同步完成条件。

优选地,在所述同步器处于降级同步模式时,如果待同步的处理器核 心视图中存在不可同步的降级处理器核心,则同步处理部件使所述不可同 步处理器核心排除在同步操作之外;并且当所述同步请求信号携带至少两 个待同步的处理器核的信息时,同步处理部件生成同步完成信号并且将所 述同步完成信号传递给可同步未降级的待同步的处理器核心。

优选地,在所述同步器处于非降级同步模式时,如果待同步的处理器 核中存在故障核心或者已经被屏蔽的核心,则判断发生异常,同步操作被 撤销。例如,在判断发生异常时,可通过断连分析处理部件发出断连异常 信号。

优选地,所述死锁检查器周期扫描所述同步向量表登记信息,根据资 源依赖关系进行硬件死锁检查,当存在同步死锁时,发出异常信号。

优选地,所述同步处理部件包括:接收单元,用于接收来自处理器核 的同步请求信号,所述同步请求信号携带至少两个待同步的处理器核的同 步向量信息;信号生成单元,用于当所述接收单元接收到所述至少两个待 同步的处理器核的同步请求信号、并且所述同步请求信号中携带相同的待 同步的处理器核的同步向量信息时,生成同步完成信号;以及发送单元, 用于将所述信号生成单元生成的同步完成信号发送至相应的待同步的处 理器核。

优选地,所述同步向量表的每个条目包括请求有效位、行同步或列同 步指示位、同步向量信息。

根据本发明,采用本发明上述同步器进行多个处理器核心的同步,不 仅软件上易于编程,而且提高了同步速率;此外,同步器支持可降级同步, 可以有效提高处理器的容错能力,而且支持死锁检查机制,提高了处理器 系统的健壮性。

附图说明

结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更 完整的理解并且更容易地理解其伴随的优点和特征,其中:

图1示意性地示出了根据本发明实施例的同步器的框图。

图2示意性地示出了根据本发明实施例的同步器的同步处理部件的框 图。

需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示 结构的附图可能并非按比例绘制。并且,附图中,相同或者类似的元件标 有相同或者类似的标号。

具体实施方式

为了使本发明的内容更加清楚和易懂,下面结合具体实施例和附图对 本发明的内容进行详细描述。

图1示意性地示出了根据本发明实施例的用于具有多个处理器核心的 处理器系统的同步器的框图。

如图1所示,根据本发明实施例的用于具有多个处理器核心的处理器 系统的同步器包括:同步向量表1、同步处理部件2、以及断连分析处理 部件3和/或死锁检查部件5。

具体地说,在具体实施应用中,上述用于具有多个处理器核心的处理 器系统的同步器可包括:同步向量表1、同步处理部件2、以及断连分析 处理部件3。或者,可替换地,上述用于具有多个处理器核心的处理器系 统的同步器可包括:同步向量表1、同步处理部件2、以及死锁检查部件5。 或者,可替换地,上述用于具有多个处理器核心的处理器系统的同步器可 包括:同步向量表1、同步处理部件2、断连分析处理部件3以及死锁检 查部件5。

并且其中,例如,同步向量表1可存储在处理器系统的存储介质中。 并且,可替换地,例如,同步向量表1可并入同步处理部件2。

其中,同步向量表1由多个条目组成,分别对应多个处理器核心的当 前同步位图信息,其中,每个条目都包括同步向量信息。优选地,例如, 所述同步向量表的每个条目包括请求有效位、行同步或列同步指示位、同 步向量信息。

死锁检查部件5用于完成对所述同步向量表1的死锁条件检查,当同 步向量表1中描述的待同步位图信息存在死锁时,进行提示和报警。例如, 死锁检查器5周期扫描所述同步向量表1的登记信息,根据资源依赖关系 进行硬件死锁检查,当存在同步死锁时,发出异常信号。

同步处理部件2用于接收来自处理器核R1…RN的同步请求信号 RE1…REN,所述同步请求信号RE1…REN携带至少两个待同步的处理器 核的信息(具体地说,处理器核的同步向量信息),并通过查询所述同步 向量表1来对同步向量表中的情况进行分析和处理,从而在待同步处理器 核心均符合同步要求时向处理器核心返回同步完成信号。

断连分析处理部件3用于接收降级指示信号S4,并且根据降级指示信 号S4将同步器设置为降级同步模式或者非降级同步模式。其中,降级指 示信号S4例如通过其它指令输入或者人工输入。

并且,不可同步处理器核(断连的处理器核心,例如故障核心或者已 经被屏蔽的核心等)的位图可通过断连分析处理部件3经由断连位信号S3 由外部输入,例如通过其它指令输入或者人工输入。

换言之,断连分析处理部件3用于接收断连位信号S3,根据断连位信 号S3更改所述同步向量表1,从而实现在位处理器核心与降级断连处理器 核心的同步功能。

具体地说,在上述同步器中,同步处理部件2通过查询所述同步向量 表1判断处理器系统中的各个处理器核心是否满足同步完成条件,例如判 断处理器系统中的各个处理器核心是不是不可同步处理器核(例如,是否 断连)。

更具体地说,一方面,在所述同步器处于降级同步模式时,如果待同 步的处理器核心视图(同步目标核心心视图)中存在不可同步的降级处理 器核心(故障核心或者已经被屏蔽的核心等),则同步处理部件2使所述 不可同步处理器核心排除在同步操作之外;而其余的处理器核如果满足同 步条件,即可完成同步,即当所述同步请求信号RE1…REN携带至少两个 待同步的处理器核的信息(具体地说,处理器核的同步向量信息)时,同 步处理部件2生成同步完成信号并且将所述同步完成信号传递给可同步未 降级的待同步的处理器核心。

此外,另一方面,在所述同步器处于非降级同步模式时,如果待同步 的处理器核(同步目标核心)中存在故障核心或者已经被屏蔽的核心,则 判断发生异常,同步操作被撤销。例如,在判断发生异常时,可通过断连 分析处理部件3发出断连异常信号S2。

优选地,根据本发明实施例的同步器还可以包括IO访问控制部件4, 用于外部对于当前同步操作状态的访问。

由于同步处理部件2可进行断连检查(即,不允许降级同步时,遇到 与断连从核发生同步,报异常),由此,同步处理部件2可支持硬件实现 的死锁检查。

图2示意性地示出了根据本发明实施例的同步器的同步处理部件2的 框图。

如图2所示,根据本发明实施例的同步器的同步处理部件2可包括:

接收单元21,用于接收来自处理器核R1…RN的同步请求信号 RE1…REN,所述同步请求信号RE1…REN携带至少两个待同步的处理器 核的信息(具体地说,处理器核的同步向量信息);

信号生成单元22,用于当所述接收单元21接收到所述至少两个待同 步的处理器核的同步请求信号、并且所述同步请求信号中携带相同的待同 步的处理器核的信息(具体地说,处理器核的同步向量信息)时,生成同 步完成信号;

发送单元23,用于将所述信号生成单元22生成的同步完成信号发送 至相应的待同步的处理器核,例如所述至少两个待同步的处理器核。

采用本发明上述实施例的同步器进行多个处理器核心的同步,软件上 易于编程,提高了同步速率。支持可降级同步,可以有效提高处理器的容 错能力。支持死锁检查机制(即,同步向量发生死锁时向外部系统发出异 常信号),提高了处理器系统的健壮性。

根据本发明的另一优选实施例,本发明还提供了一种采用了上述同步 器的多核处理器系统。此外,根据本发明的又另一优选实施例,本发明还 提供了一种采用了上述同步器的众核处理器系统。

可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施 例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离 本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术 方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此, 凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例 所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的 范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号