用于维持高速缓存一致性的只写无数据状态制造技术

技术编号:10812648 阅读:64 留言:0更新日期:2014-12-24 17:37
本文揭示用于维持具有共享存储器的多处理器系统(100)中的高速缓存一致性的系统和方法,包含经配置以在写入操作期间减少拖延的写入数据无效WDI状态(310)。所述WDI状态为具有保证的写入权限的无数据状态。当所述多处理器系统的第一处理器(102)做出对第一高速缓冲存储器(106)的第一高速缓存条目的写入请求时,与所述第一高速缓存条目相关联的所述WDI状态包含对于所述写入直接进行到所述共享存储器中的一或多个较高级别的存储器(112、114)的写入权限,以使得在所述第一高速缓冲存储器处减少与获得写入权限相关联的延迟。所述WDI状态被视为所述第一处理器对所述第一高速缓存条目的读取请求的无效状态。

【技术实现步骤摘要】
【国外来华专利技术】【专利摘要】本文揭示用于维持具有共享存储器的多处理器系统(100)中的高速缓存一致性的系统和方法,包含经配置以在写入操作期间减少拖延的写入数据无效WDI状态(310)。所述WDI状态为具有保证的写入权限的无数据状态。当所述多处理器系统的第一处理器(102)做出对第一高速缓冲存储器(106)的第一高速缓存条目的写入请求时,与所述第一高速缓存条目相关联的所述WDI状态包含对于所述写入直接进行到所述共享存储器中的一或多个较高级别的存储器(112、114)的写入权限,以使得在所述第一高速缓冲存储器处减少与获得写入权限相关联的延迟。所述WDI状态被视为所述第一处理器对所述第一高速缓存条目的读取请求的无效状态。【专利说明】用于维持高速缓存一致性的只写无数据状态
所揭示实施例针对用于维持多处理器系统中的高速缓存一致性的系统和方法。更具体来说,示范性实施例针对具有写入权限的无数据写入数据无效(write-data-1nvalid ;WDI)状态,且经设计以减少在写入操作期间具有共享存储器的多处理器系统中的延迟。
技术介绍
在具有共享存储器架构的多处理器系统中,维持存储器或高速缓存一致性是公认为富有挑战性的。举例来说,多处理器系统可具有若干处理器,所述处理器可各自包含最终耦合到主存储器的一或多个级别的高速缓冲存储器。因为在若干处理器中共享主存储器,所以将对主存储器的内容的一致性看法提供给所有处理器是必要的。 通常出现的情况是对驻留于一或多个级别的高速缓冲存储器中的数据(或指令)的更新可能不会立即反映在存储器系统中的相同数据的所有其它事件中。这样破坏一致性。问题在回写高速缓冲存储器时加剧。对高速缓冲存储器的写入可执行为:直写,其中对高速缓冲存储器的每次写入导致对在下一级别的高速缓冲存储器及主存储器中的数据备用存储位置的同步写入;或回写,其中对高速缓冲存储器的数据写入只在对应高速缓存线(或“高速缓存块”)从高速缓冲存储器收回时在数据备用存储位置中更新。虽然直写高速缓冲存储器有助于高速缓存一致性,但所述直写高速缓冲存储器也慢得多,这是因为每次高速缓冲存储器写入经历更新备用存储位置所需的额外时间。另一方面,虽然回写高速缓冲存储器促进高速缓冲存储器写入(因为在正常写入操作期间只写高速缓冲存储器),但所述回写高速缓冲存储器可能由于不立即更新备用存储位置中的新写入数据而破坏一致性。 维持尤其是回写高速缓冲存储器中的一致性的常用机制涉及所谓的MESI协议。MESI协议针对每一高速缓存线定义四种状态:修改(M)、独占(E)、共享⑶及无效⑴。修改状态指示高速缓存线只存在于即时高速缓冲存储器中,但其为“已更改的(dirty)”,SP,已根据主存储器中的值修改所述高速缓存线。独占状态指示只有即时高速缓冲存储器拥有高速缓存线,且其为“清洁的(clean)”,S卩,所述高速缓存线匹配主存储器中的值。共享状态指示高速缓存线为清洁的,但高速缓存线的副本也可存在于存储器系统中的一或多个其它高速缓冲存储器中。无效状态指示高速缓存线为无效的。MESI协议的共用变体(例如,MOESI协议)可涉及额外状态,例如,自有(O)状态,其中高速缓存线经指示保持数据的最新但已更改且共享的副本。 通过与所需存储器访问有关的各种处理元件之间的通信及基于高速缓存线的状态(M/0/E/S/I)而管理对高速缓冲存储器及主存储器的更新的权限来维持一致性。举例来说,如果多处理器系统中的处理器希望将数据写入与其相关联的I级(LI)高速缓冲存储器的高速缓存线,那么当高速缓存线处于独占(E)状态时,处理器则可写入高速缓存线且将其更新为修改(M)状态。另一方面,如果高速缓存线处于共享(S)状态,那么必须在可准许处理器写入高速缓存线之前首先使高速缓存线的所有其它副本无效。一致性协议(例如,MESI/MOESI)的特定实施方案是本领域中熟知的且将不在本文中进行进一步描述。 因此,在一致性协议(例如,MESI/MOESI)的常规实施方案中,可将对高速缓存线的写入拖延到获得写入权限为止。举例来说,如果高速缓存线的状态指示不能在本地获得权限,那么为了获得对于驻留于LI高速缓冲存储器中的高速缓存线的权限,常规实施方案可要求向下遍历一或多个级别的存储器层级直到一致点,以获得权限。换句话说,如果高速缓存线在LI状态中的状态指示写入权限不是当前的,那么可能需要查询较高级别的存储器层级(例如,2级(L2)高速缓冲存储器)或主存储器的备用存储位置以(再次基于这些备用存储位置中高速缓存线的状态)确定高速缓存线的一致点的位置。获得写入权限的此过程可引起在延时及功率方面的严重损失。 —些回写高速缓冲存储器架构可根据不按写分配(no-write-al locate/write-no-allocate)策略设计。在此类架构中,如果LI高速缓冲存储器中的高速缓存线写入遇到未命中,那么写入操作跳过在LI高速缓冲存储器中分配高速缓存线(即,不从备用存储位置提取高速缓存线到LI高速缓冲存储器),且继续将高速缓存线写入将找到高速缓存线的备用存储器中,例如,L2高速缓冲存储器或主存储器。然而,将再次需要在找到高速缓存线的备用存储位置处获得权限,从而引起相关联损失。 因此,常规实施方案具有与维持高速缓存一致性及获得写入操作权限相关联的上述缺点。因此,在所属领域中存在促进具有共享存储器架构的多处理器系统中对高速缓冲存储器的写入操作的对应需要。
技术实现思路
本专利技术的示范性实施例针对用于维持多处理器系统中的高速缓存一致性的系统及方法,包含写入数据无效(WDI)状态,所述WDI状态经配置以减少在写入操作期间具有共享存储器的多处理器系统中的延迟,其中WDI状态包括具有写入权限的无数据状态。 举例来说,示范性实施例针对一种维持多处理器系统中的一致性的方法,所述方法包括:建立状态,所述状态包含:写入数据无效(WDI)状态,所述WDI状态用于第一高速缓冲存储器中的第一高速缓存条目,其中WDI状态包括用于与第一高速缓冲存储器相关联的第一处理器针对第一处理器对高速缓存条目的写入请求而写入一或多个较高级别的存储器层级的权限,且其中WDI状态被视为第一处理器对第一高速缓存条目的读取请求的无效状态。 另一示范性实施例针对多处理器系统,所述系统包括:第一处理器、第一高速缓冲存储器、一或多个较高级别的存储器层级及与第一高速缓冲存储器的第一高速缓存条目相关联的写入数据无效(WDI)状态,其中WDI状态包括用于第一处理器针对第一处理器对第一高速缓存条目的写入请求而写入一或多个较高级别的存储器层级的权限,且其中WDI状态被视为第一处理器对第一高速缓存条目的读取请求的无效状态。 另一示范性实施例针对多处理器系统,所述系统包括:第一处理器、第一存储装置、一或多个较高级别的存储器层级及与第一存储装置的第一条目相关联的写入数据无效(WDI)装置,其中WDI装置包括用于第一处理器针对第一处理器对第一条目的写入请求而写入一或多个较高级别的存储器层级的权限,且其中WDI装置被视为第一处理器对第一条目的读取请求的无效状态。 又一示范性实施例针对非暂时性计算机可读存储媒体,所述媒体包括代码,当由处理器执行时,所述代码致使处本文档来自技高网
...
用于维持高速缓存一致性的只写无数据状态

【技术保护点】
一种维持多处理器系统(100)中的一致性的方法,其包括:建立状态,所述状态包含:用于第一高速缓冲存储器(106)中的第一高速缓存条目的写入数据无效WDI状态(310),其中所述WDI状态包括与所述第一高速缓冲存储器相关联的第一处理器(102)针对所述第一处理器对所述高速缓存条目的写入请求而写入一或多个较高级别的存储器层级(112、114)的权限,且其中所述WDI状态被视为所述第一处理器对所述第一高速缓存条目的读取请求的无效状态。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:克里斯托弗·爱德华·科布达娜·M·万特雷斯
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国;US

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

1