[发明专利]在多核处理器中使用干预消息来避免活锁有效
申请号: | 200880103458.2 | 申请日: | 2008-06-20 |
公开(公告)号: | CN101802798A | 公开(公告)日: | 2010-08-11 |
发明(设计)人: | R·金特;E·南吉亚 | 申请(专利权)人: | 密普斯技术股份有限公司 |
主分类号: | G06F13/36 | 分类号: | G06F13/36 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 李玲;钱静芳 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多核 处理器 使用 干预 消息 避免 | ||
发明背景
本发明涉及微处理器体系结构领域。微处理器设计者正不断地努力提高微 处理器性能,设计提供例如增加的计算能力、增加的运算速度、降低的功耗、 和/或降低的成本的微处理器体系结构。对于许多先前的微处理器体系结构,通 过增加其运算频率来提高微处理器性能已经变得日益困难。结果,许多较新的 体系结构聚焦于并行处理来提高性能。
在微处理器体系结构中采用的一种并行处理技术是多处理核。该技术利用 并行运算的多个单独的处理器(称为核)来执行软件应用程序。两个或更多个 处理核可以在同一集成电路管芯中实现、在集成在同一集成电路封装内的多个 集成电路管芯中实现、或这些实现的组合。通常,多个处理核共享公共接口并 可以共享存储器和其它外围资源。
通常,诸如共享存储器或外设等共享资源一次只可由一个处理器使用。为 控制对共享资源的访问,处理器核可以利用同步原语,如信号量(semaphore)、 标志、锁、原子交换、取值并增值(fetch and increment)、或其它信令机制。 例如,存储器位置可用作信号量来确保对诸如临界段或区;存储器的共享部分; 或外围资源等相关联的共享资源的独占访问。第一处理器核可以检查信号量的 状态来确定另一处理器核当前是否拥有对该资源的独占访问。如果信号量值指 示该资源可用,则第一处理器核可以尝试将其自己的指示符值写入该信号量存 储器位置。这将向其它处理器核指示第一处理器核拥有对该资源的独占访问。 如果另一处理器核在第一处理器核的写入完成之前修改该信号量位置的值,则 第一处理器核的写入尝试将失败。
两个或更多个处理器核可能大约同时尝试访问与临界段或共享资源相关 联的同步原语。在某些情况下,每一处理器核访问同步原语的请求将使得对同 一存储器位置的其他待决访问请求失败。结果,没有处理器核能够获得对同步 原语及其相关联的临界段或共享资源的访问。处理器核随后可重复它们的访问 请求,从而造成进一步的访问失败。所导致的情况被称为同步活锁。在同步活 锁中,处理器核卡在尝试和无法获得对与临界段或共享资源相关联的同步原语 的访问的循环链中。除非采取纠正动作来结束该活锁,否则所涉及的所有处理 器核将卡在永久循环中。
因此,防止具有多个处理器核的处理器中的活锁或从活锁中恢复的系统和 方法是合乎需要的。对处理器性能和复杂性造成最小影响的系统和方法也是合 乎需要的。与单线程和多线程处理器核一起工作的系统和方法也是合乎需要 的。
发明概要
本发明的一实施例通过在向其它处理器核发送可导致其它数据访问请求 失败的消息之前对于作出请求的处理器核验证数据访问请求仍然有效,来防止 在多核处理器中由于数据访问请求而发生活锁。在一实施例中,高速缓存相干 性管理器从多个处理器核接收数据访问请求并协调它们的执行。在接收到可能 导致活锁的数据访问请求后,高速缓存相干性管理器首先向作出请求的处理器 核发送回干预消息以确认没有其他处理器核干扰该数据访问请求,这种干扰将 导致该数据访问请求失败。
在一实施例中,如果作出请求的处理器核确定数据访问请求仍然有效,则 它对干预消息作出响应并指示高速缓存相干性管理器继续该数据访问请求。高 速缓存相干性管理器随后可以向其它处理器核发送附加干预消息来完成该数 据访问请求。如果作出请求的处理器核确定数据访问请求已经变得无效,则它 对干预消息作出响应并指示高速缓存相干性管理器放弃该数据访问请求。作为 响应,高速缓存相干性管理器将不向其它处理器核发送针对该数据访问请求的 任何附加干预消息。这防止一个数据访问请求的失败级联并导致其它处理器核 的其它数据访问请求失败。
在另一实施例中,如果高速缓存相干性管理器确定不太可能发生活锁情 况,则高速缓存相干性管理器可以另选地响应于数据访问请求来同时向作出请 求的处理器核和其他处理器核发送干预消息。在一实施例中,高速缓存相干性 管理器确定可导致活锁的数据访问请求的数据访问请求失败率。如果数据访问 请求失败率超过阈值(其可在程序中预定或指定),则高速缓存相干性管理器 回复到在向其它处理器核发送干预消息以完成该数据访问请求之前首先向作 出请求的处理器核发送干预消息以验证该数据访问请求的有效性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于密普斯技术股份有限公司,未经密普斯技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880103458.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:具有照明功能的座式放大镜
- 下一篇:全透射式空间目标探测镜头