[发明专利]用于利用条件所有权请求的智能存储操作的方法和装置有效
申请号: | 201680089060.2 | 申请日: | 2016-09-30 |
公开(公告)号: | CN109661656B | 公开(公告)日: | 2023-10-03 |
发明(设计)人: | A.D.冈萨莱斯;F.G.伯纳特 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F12/0831 | 分类号: | G06F12/0831 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 高苇娟;闫小龙 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 利用 条件 所有权 请求 智能 存储 操作 方法 装置 | ||
利用条件所有权请求实现智能存储操作的方法和装置。一个方面包括在多核心处理器中实现的方法,该方法包括:响应于用新值修改目标高速缓存行(CL)的指令的执行,从请求者接收针对所有权的条件读(CondRFO),CondRFO标识目标CL和新值;从本地高速缓存确定与目标CL对应的本地CL;从本地CL确定本地值;将本地值与新值进行比较;当本地值与新值相同时,将本地CL的一致性状态设置成(S)共享;当本地值与新值不同时,将本地CL的一致性状态设置成(I)无效;以及向请求者发送响应和本地CL的副本。其他实施例包括被配置成执行该方法的动作的装置。
技术领域
本发明的实施例涉及计算机架构领域,并且具体地涉及数据传送。
背景技术
在软件应用中,代码一再地对相同的存储器位置做出重复更新并不罕见。时常,要写到存储器位置中的值与已存储在该位置处的现有值相同。在这些情况下,利用相同值更新存储器位置是冗余且不必要的。通常这不是严重的问题,并且大多数程序员由于方便或缺乏对性能的关注而仅使用以下代码语法来存储或更新存储器中的值:
var = val
然而,在其中存储器中的空间局部性低且相同或附近数据的线程之间的共享比率高的实例(诸如常常是利用控制块的情况)中,对存储器的不必要更新可导致显著的性能降级,并且因此应当在可能时避免。
在具有用于每个核心的单独高速缓冲存储器的共享存储器多核心处理器系统中,同一高速缓存行的许多副本可以同时存在。例如,高速缓存行的一副本可以驻留在主存储器,而另一副本被缓存在核心中的一个或多个的本地高速缓冲存储器中。当改变高速缓存行的一个副本时,还必须改变或无效同一高速缓存行的其他副本,以便维持不同副本之间的一致性。为了防止在多个核心试图对同一高速缓存行做出重叠改变时发生的冲突,期望修改高速缓存行的核心必须首先拥有它想要修改的高速缓存行。通常,为了建立高速缓存行的所有权,第一核心通过其缓存代理向其他核心广播针对所有权的读或针对所有权的请求消息,以使其他核心中的该高速缓存行的所有副本无效。然后,在其本地高速缓存中拥有该高速缓存行副本的第二核心将在接收到消息时使其副本无效。稍后,如果第二核心希望从其本地高速缓存访问该高速缓存行的副本,则将导致高速缓存未命中,因为其副本不再有效。然后,根据所期望的访问的类型,第二核心将需要发布读、针对所有权的读或针对所有权的请求消息,以获取该高速缓存行的有效副本。第二核心发出的消息可以继而使该高速缓存行的其他副本无效,并且当另一核心在将来试图访问无效的高速缓存行时引起类似的本地高速缓存未命中。即使这样的获取是不必要的,诸如例如当要被写到高速缓存行中的值与已经存储的值相同时,也发生由于写请求而引起的特定高速缓存行的该全局无效。为了减少这些种类的情况的发生,更高级的程序员在向存储器位置进行存储或更新时倾向于使用以下语法:
if ( var <> val ) var = val
这确保了存储或更新操作以及跟随的相关联的针对所有权的读或针对所有权的请求消息仅发生在该存储器位置中的值实际上与将要被写的值不同时。
虽然在许多情况下有用,但该方法伴随它自己的一组缺点一起发生。例如,它需要额外的代码,所述额外的代码在大量存储的情况下可能导致代码大小中的显著增加。而且,添加的检查使控制流程复杂化,并且可能限制编译器应用代码优化(诸如向量化、循环不变代码移动等)的能力。此外,断言(predicate)条件引入了许多分支并且倾向于污染分支预测表,更不必说在不正确的预测的情况下的高执行和恢复成本。
附图说明
因为参考以下详细描述,在结合附图理解时,本发明的前述方面和许多伴随的优点变得更好理解,所以其将变得更容易领会,其中除非另外指定,否则相似的参考数字贯穿各种视图指代相似的部分:
图1是例示主机平台的示例性配置的示意图;
图2是例示图1中所示的平台采用的存储器一致性架构的抽象视图的示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680089060.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:在芯片删除校正存储器架构中提供存储器带宽压缩
- 下一篇:电子装置