当前位置: 首页 > 专利查询>英特尔公司专利>正文

减少来自侦听过滤器的后无效事务制造技术

技术编号:9894953 阅读:136 留言:0更新日期:2014-04-09 21:11
本发明专利技术涉及减少来自侦听过滤器的后无效事务,在一个实施例中,本发明专利技术包括一种方法:从高速缓存代理接收未决容量驱逐的指示,确定来自高速缓存代理的无效写回事务对于与未决容量驱逐相关联的高速缓存线是否是可能的,以及如果为是,则将与所述高速缓存线相关联的侦听过滤器条目从侦听过滤器移到分级区。描述并要求保护其他实施例。

【技术实现步骤摘要】
减少来自侦听过滤器的后无效事务的方法、装置和系统本申请是申请日为2009年5月27日、申请号200910145575.1、名称为“减少来自侦听过滤器的后无效事务”的申请的分案申请。
本专利技术涉及计算领域,尤其涉及减少来自侦听过滤器的后无效事务的方法、装置和系统。
技术介绍
在具有多个处理器和多个高速缓存的多处理器系统中,每个高速缓存可存储存储器中所存储的数据片的副本。当一个以上的高速缓存包含同一数据片的副本时出现了问题。已经开发了多种技术来确保多个高速缓存上的数据一致性。例如,当一个高速缓存中的数据被修改时,该数据的其它副本被标记为无效,以使得它们将不会被使用。为了帮助维持高速缓存一致性,很多系统包括诸如侦听过滤器之类的目录以帮助确定在这种多个高速缓存的高速缓存线中数据的存在和状态。可发生总线代理监视例如读/写操作的存储器事务的侦听操作。代理可将存储器事务中涉及的高速缓存线的状态记录在侦听过滤器中。高速缓存线的状态可指示该线是仅具有在主存储器外的一个有效副本,具有由多个高速缓存共享的多个有效副本,还是不具有在主存储器外的副本(即它在所有高速缓存中都已经无效)。侦听过滤器中的数据条目通常部分地根据主存储器中其地址的一部分索引。侦听过滤器有时会缺乏用于记录新存储器事务的线的状态的空间,且可能需要从侦听过滤器驱逐条目以容纳新的事务。通常当条目被驱逐出侦听过滤器时,后无效(back-invalidation)消息被发送到可能保存与所驱逐条目相关联的线的有效副本的每个处理器高速缓存。很多高速缓存未命中是由于侦听过滤器发起即将使用的高速缓存线的后无效。某些侦听过滤器被称为包含式侦听过滤器(ISF),因为侦听过滤器中的信息用侦听过滤器覆盖的高速缓存的高速缓存线来包含式地维持。在包含式高速缓存分层结构中,高速缓存存储器之一(即,较低层的高速缓存存储器)包括另一个高速缓存存储器(较高层高速缓存存储器)中所包含的数据的子集。高速缓存分层结构可提高处理器性能,因为它们使得具有相对较快存取速度的较小高速缓存包含频繁使用的数据。而存取速度比较小高速缓存慢的较大高速缓存存储较不频繁使用的数据(以及较低层高速缓存中的数据的副本)。侦听过滤器同它们覆盖的高速缓存一样分配并驱逐条目。然而,因为具有ISF的包含式高速缓存分层结构存储某些共用数据,一个高速缓存层中的高速缓存线或侦听过滤器的驱逐可导致高速缓存分层结构的另一个层中的相应高速缓存线驱逐以维持高速缓存一致性。ISF必需确保其地址被驱逐出侦听过滤器的高速缓存线从所有覆盖的高速缓存中去除。一般而言,这涉及将后无效请求从侦听过滤器发送到所覆盖的高速缓存。当侦听过滤器发送很多这种请求时它消耗互连带宽,这可增加有效存储器等待时间,并可能去除有用的高速缓存条目。附图说明图1是多处理器系统的实施例的框图。图2是根据本专利技术一个实施例的一致性控制器的框图。图3是根据本专利技术的实施例示出高速缓存代理、侦听过滤器和分级区(stagingarea)之间的交互的框图。图4是根据本专利技术一个实施例的方法的流程图。具体实施方式在各实施例中,侦听过滤器可被配置成使得它将数量减少的后无效消息发送到与其耦合的高速缓存。由此,从高速缓存驱逐较少的条目,从而提高高速缓存命中率。减少后无效消息的数量还将减少系统互连通信量,从而改进存储器等待时间和其它系统效率因数。更具体地,在各实现中,如果相应的高速缓存有可能将立刻发出给定高速缓存线的其自身的无效消息,则将从侦听过滤器驱逐条目的侦听过滤器(其中条目与该给定高速缓存线相关联)可避免发送后无效消息。由此,可避免从侦听过滤器发送后无效消息的开销。取决于高速缓存大小和应用,被驱逐出侦听过滤器的高速缓存线的相当大的部分将被修改(也称为“脏”)。当高速缓存决定驱逐脏线时,它一般发出“显式写回”(EWB)事务。在某些实现中,这种事务被称为无效显式写回(或BWL.INVLD)事务,其将两个语义组合到单个事务中。更具体地,该事务报告所指高速缓存线的当前值,并提供指示高速缓存线已经从高速缓存分层结构的所有层中完全去除的指示。各实施例利用该第二属性,以使得覆盖该高速缓存的侦听过滤器可静默去除其相关联的条目。即,侦听过滤器可将相应条目驱逐出侦听过滤器而不发出后无效请求。因此,当ISF可确定所覆盖的高速缓存有可能对已经或即将被驱逐的ISF条目发出无效显式写回事务时,它可延迟发出无效请求。然后,当高速缓存对所指高速缓存线发出该事务时,侦听过滤器不需要发出该无效请求。因此,实施例可提供第一机制,其向ISF提供可能对该侦听过滤器中已驱逐(或即将驱逐)的条目发出无效显式写回的指示,以及第二机制,其利用该信息制止在给定时间段内发出无效请求。如果在该时间段中接收到相关联的无效显式写回事务,则侦听过滤器可避免发送该请求。在一个实施例中,第一机制可就读取事务利用提示,其指示特定高速缓存中的哪个高速缓存线位置正被驱逐从而为读取结果让出空间。提示本身可包括用以报告该驱逐方式被修改的在本文中称为“EWB提示”的信息。该机制的替换形式可利用侦听过滤器本身中的信息。例如,在接收驱逐提示后,侦听过滤器可保持指示高速缓存获得将被驱逐的线的独占所有权的指示。请求线的独占所有权与修改该线高度相关(通常,对于64和架构(IA)-32指令集架构(ISA)应用远超过90%的概率)。因此,该指示可导致侦听过滤器延迟发出无效消息。在一个实施例中,第二机制可被实现为缓冲器,诸如无效请求的虚拟或物理队列或池。即,侦听过滤器可被分成主侦听过滤器部分和辅侦听过滤器部分,在主侦听过滤器部分中存储所有的侦听过滤器条目,辅侦听过滤器部分可被称为分级池或无效池,其中存储要被驱逐出侦听过滤器的条目。因此在驱逐前,且在其中阻止来自侦听过滤器的无效请求进行传输的至少一个时间段(例如,在某些实施例中可以是约100纳秒数量级的预定时间段)内,被驱逐出主侦听过滤器部分的条目可被存储在该分级池中。因此传入的无效显式写回事务可用于引起对包括等待无效请求的未决条目集合的该池的搜索并删除任何匹配项。该虚拟或物理结构中的未决无效可在某一时间段之后发出,在池或队列群体达到某一水平时以某种时间顺序为基础发出,和/或在有足够的系统资源可用时发出。参照图1,示出的是多处理器系统10的实施例的框图。如图1所示,系统10可具有与芯片组13互连的多个处理节点17。每个处理节点17可包括一个或多个处理器11(示出每个处理节点有两个处理器,其中每个处理器可以是处理器核或多核处理器)和高速缓存12。每个高速缓存12可被“主节点”(该高速缓存所处的处理节点)的处理器11本地访问,且可被“远程节点”(主节点以外的处理节点)的处理器11远程访问。高速缓存12被称为关于主节点的处理器11的“本地高速缓存”,且可由诸如静态随机存取存储器(SRAM)之类的相对较小且快速的存储器构成。处理节点17可经由一个或多个前端总线(FSB)14(仅示出两个FSB)或诸如点对点互连之类的其它类型的互连耦合到芯片组13。可在单个芯片上实现一个或多个处理节点17。系统10由于其所具有的高集合处理能力而可用作服务器系统,但本专利技术的范围不限于此方面。芯片组13可包括一致性控制器132,其可包括根据本专利技术实施例的侦听过滤本文档来自技高网...
减少来自侦听过滤器的后无效事务

【技术保护点】
一种方法,包括:从高速缓存代理接收未决容量驱逐的指示;确定来自所述高速缓存代理的无效写回事务对于与所述未决容量驱逐相关联的高速缓存线是否是可能的;以及如果所述无效写回事务是可能的,则将与所述高速缓存线相关联的侦听过滤器条目从侦听过滤器移到分级区。

【技术特征摘要】
2008.05.30 US 12/156,3401.一种减少后无效事务的方法,包括:在芯片组的一致性控制器中从处理器节点接收未决容量驱逐的指示,所述未决容量驱逐对应于读取事务,所述读取事务指示与未决容量驱逐相关联的高速缓存线要被驱逐从而为读取事务的结果提供空间;基于在一致性控制器中的信息,对于与所述未决容量驱逐相关联的高速缓存线,确定来自所述处理器节点的无效写回事务是否能从处理器节点发送到一致性控制器;以及如果所述无效写回事务能从处理器节点发送到一致性控制器,则将与所述高速缓存线相关联的侦听过滤器条目从一致性控制器的侦听过滤器移到一致性控制器的分级池。2.如权利要求1所述的方法,其特征在于,还包括如果无效写回事务不能从处理器节点发送到一致性控制器,则基于所述侦听过滤器中的信息,驱逐所述侦听过滤器条目并将无效事务从所述侦听过滤器发送到一个或多个处理器节点。3.如权利要求1所述的方法,其特征在于,还包括确定从所述侦听过滤器条目移到所述分级池开始的预定时间段内是否从所述处理器节点接收所述无效写回事务。4.如权利要求3所述的方法,其特征在于,还包括如果在所述预定时间段内接收到所述无效写回事务,则可不发送无效事务就将所述侦听过滤器条目驱逐出所述分级池。5.如权利要求4所述的方法,其特征在于,还包括如果在所述预定时间段内没有接收到所述无效写回事务,则将所述无效事务从所述侦听过滤器发送到一个或多个处理器节点。6.如权利要求5所述的方法,其特征在于,还包括至少部分地基于系统资源水平将所述无效事务从所述侦听过滤器发送到所述一个或多个处理器节点。7.如权利要求1所述的方法,其特征在于,至少部分地基于来自所述处理器节点的用于指示将被驱逐的高速缓存线被修改的路提示确定无效写回事务能从处理器节点发送到一致性控制器。8.如权利要求1所述的方法,其特征在于,还包括基于所述侦听过滤器中将被驱逐的所述相关联的高速缓存线在所述处理器节点中处于独占状态的指示确定所述无效写回事务能从处理器节点发送到一致性控制器。9.一种用于处理后无效事务的装置,包括:输入/输出控制器,用于向一个或多个输入/输出设备提供接口;存储器控制器,用于提供接口以访问存储器;侦听过滤器,用于存储各自与高速缓存存储器的高速缓存线相关联的条目,其中所述侦听过滤器用多个高速缓存存储器包含;以及与所述侦听过滤器耦合的一致性单元,其用于控制所述侦听过滤器,其中如果高速缓存存储器能向一致性单元发送对与所驱逐的侦听过滤器条目相对应的高速缓存线的无效事务,则所述一致性单元响应于来自高速缓存存储器的未决容量驱逐阻止对要被驱逐出所述侦听过滤器的侦听过滤器条目的后无效事务的传输。10.如权...

【专利技术属性】
技术研发人员:T·库尔茨K·程J·D·吉尔伯特J·曼德尔布莱特
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1