在基于处理器的设备中维护包括域状态非拥有(DSN)的域一致性状态制造技术

技术编号:37634472 阅读:14 留言:0更新日期:2023-05-20 08:54
公开了在基于处理器的设备中维护包括域状态非拥有(DSN)的域一致性状态。在这方面,基于处理器的设备提供被组织成多个域的多个处理元件(PE),每一个处理元件包含一个或多个PE和本地排序点电路(LOP)。基于处理器的设备支持给定域内针对由PE高速缓存的一致性颗粒的域一致性状态。域一致性状态包括DSN域一致性状态,其指示一致性颗粒未在任何域内以共享修改状态被高速缓存。在一些实施例中,在接收到用于对一致性颗粒的读取访问请求后,系统排序点电路(SOP)确定一致性颗粒在多个域中的域内以DSN域一致性状态被高速缓存,并且如果必要,可以安全地从系统存储器中读取一致性颗粒以满足读取访问。满足读取访问。满足读取访问。

【技术实现步骤摘要】
【国外来华专利技术】在基于处理器的设备中维护包括域状态非拥有(DSN)的域一致性状态


[0001]本公开的技术涉及基于处理器的设备中的高速缓存一致性协议,并且更具体地,涉及维护域一致性状态。

技术介绍

[0002]基于处理器的设备可以包括多个处理元件(PE)(例如,作为非限制性示例,处理器核),每一个处理元件提供用于存储频繁访问的数据的一个或多个本地高速缓存。因为基于处理器的设备的多个PE可以共享诸如系统存储器的存储器资源,所以从给定存储器地址读取的共享数据的多个副本可以同时存在于系统存储器和PE的本地高速缓存中。因此,为了确保所有PE具有共享数据的一致视图,基于处理器的设备提供用于维护高速缓存一致性的机制。这允许避免由于共享数据的本地副本之间的不一致而在PE之间可能出现的冲突。
[0003]用于保证基于处理器的设备内的PE观测共享数据的一致视图的一种这样的机制是系统排序点电路(SOP)。在采用SOP的基于处理器的设备中,从系统存储器中寻找一致性颗粒(即,被维护用于其一致性的最小存储器块,通常对应于高速缓存行)的副本的PE向SOP发送针对一致性颗粒的读取请求。SOP然后向基于处理器的设备内的其他PE发送窥探,以确定其他PE中的任何PE是否拥有该一致性颗粒的一致性副本。具有一致性颗粒的一致性副本的PE用窥探响应进行回复,并将其一致性颗粒的副本提供给请求PE以满足读取请求。通过将基于处理器的设备的PE细分为多个域,其中每一个域具有本地排序点电路(LOP),域内的PE向其发送存储器访问请求,可以进一步提高使用SOP的基于处理器的设备的性能。结合SOP使用LOP可以使请求更快地得到满足,例如,在请求PE和持有所请求一致性颗粒的一致副本的PE在同一域内的情况下。
[0004]然而,可能会出现这样的情况,即,由于第一PE寻求一致性颗粒的副本而发送窥探,但是持有一致性颗粒的一致副本的第二PE不能及时地服务于窥探(例如,因为第二PE的窥探处理资源或其域的LOP由于先前的操作而繁忙)。SOP不能代表第一PE简单地从系统存储器中读取所请求的一致性颗粒,因为SOP不能确定系统存储器中的一致性颗粒是否过时(即,由PE持有的一致性颗粒的高速缓存副本是否已被修改,但未写回系统存储器)。因此,要么SOP 124必须连续地重新发送窥探,直到第二PE 104(0)服务于窥探,要么第二PE 104(0)可以使窥探信道暂停,直到第二PE 104(0)能够服务于窥探。这两种方法都可能导致访问一致性颗粒的不可接受的长等待时间,并且可能降低基于处理器的设备的整体系统性能。
[0005]因此,期望一种用于减少与无响应域通信的需要的机制。

技术实现思路

[0006]本文所公开的示例性实施例包括在基于处理器的设备中维护包括域状态非拥有(DSN)的域一致性状态。在这方面,在一个示例性实施例中,基于处理器的设备提供组织成
多个域的多个处理元件(PE),每一个域包含一个或多个PE。每一个域包括本地排序点电路(LOP),其通信耦合到域内的PE,并且还通信耦合到基于处理器的设备的系统排序点电路(SOP)。基于处理器的设备被配置为支持域一致性状态,其是指示由给定域内的PE高速缓存的每一个一致性颗粒的域级一致性状态的常规高速缓存一致性状态超集。由基于处理器的设备支持的域一致性状态包括DSN域一致性状态,其指示一致性颗粒未在任何域内以拥有(O)高速缓存一致性状态被高速缓存(即,一致性颗粒没有以共享修改状态被高速缓存)。在一些实施例中,如果基于处理器的设备的系统排序点电路(SOP)随后接收到用于对一致性颗粒的读取访问的请求,并且在多个域的一个域内的DSN域一致性状态中确定一致性颗粒被高速缓存,如果必要的话(例如,如果未及时从LOP接收到窥探响应),SOP能够安全地从系统存储器读取一致性颗粒以满足读取访问。以这种方式,能够更快地满足读取请求,因为SOP不必等待来自无响应LOP的窥探响应,并且能够确保SOP保持在DSN域一致性状态中的一致性颗粒在系统存储器中不过时。
[0007]在另一示例性实施例中,提供了一种基于处理器的设备。基于处理器的设备包括多个PE和多个域。每一个域包括多个PE中的一个或多个PE,以及通信地耦合到一个或多个PE的LOP。多个域中的第一域的第一LOP被配置为确定在第一域的一个或多个PE的第一PE的本地高速缓存内被高速缓存为第一高速缓存副本的一致性颗粒未在多个域的任何域内以O高速缓存一致性状态被高速缓存。第一LOP还被配置为更新针对一致性颗粒的域一致性状态指示符,以指示一致性颗粒在DSN域一致性状态中被高速缓存。
[0008]在另一示例性实施例中,提供了一种方法。该方法包括由基于处理器的设备的LOP确定一致性颗粒未在多个域中的任何域内以O高速缓存一致性状态被高速缓存,该一致性颗粒在第一域的一个或多个PE的第一PE的本地高速缓存内被高速缓存为第一高速缓存副本,LOP位于多个域中的第一域内,每一个域包括多个PE中的一个或多个PE。该方法还包括更新针对一致性颗粒的域一致性状态指示符,以指示一致性颗粒在第一域内在DSN域一致性状态中被高速缓存。
[0009]在另一示例性实施例中,提供了其上存储有计算机可执行指令的非暂时性计算机可读介质。计算机可执行指令当由处理器设备执行时,使处理器设备:确定一致性颗粒未在多个域中的任何域内以O高速缓存一致性状态被高速缓存,该一致性颗粒在多个域中的第一域的一个或多个PE中的第一PE的本地高速缓存内被高速缓存为第一高速缓存副本。计算机可执行指令还使处理器设备更新针对一致性颗粒的域一致性状态指示符,以指示一致性颗粒在第一域内在DSN域一致性状态中被高速缓存。
[0010]本领域技术人员将理解本公开的范围,并在阅读以下与附图相关联的优选实施例的详细描述之后实现本公开的附加实施例。
附图说明
[0011]包含在本说明书中并形成本说明书一部分的附图说明了本公开的几个实施例,并且与说明书一起用于解释本公开的原理。
[0012]图1是示出根据一些实施例的示例性基于处理器的设备的框图,该设备被配置为在基于处理器的设备中维护包括域状态非拥有(DSN)域一致性状态的域一致性状态;
[0013]图2是根据一些实施例的说明域一致性状态和域一致性状态之间的转换的一致性
状态转换图;
[0014]图3A至图3D是示出根据一些实施例的用于维护包括DSN域一致性状态的域一致性状态的图1的元件之间的示例性通信流以及由图1的元件执行的操作的消息流图;
[0015]图4A至图4C是示出根据一些实施例的用于从域状态共享(DSS)域一致性状态转换到DSN域一致性状态的图1的元件之间的示例性通信流以及由图1的元件执行的操作的消息流图;
[0016]图5是示出根据一些实施例的用于基于接收DSO_NOW_CLEAN消息,从DSS域一致性状态转换到DSN域一致性状态的图1的元件之间的示例性通信流以及由图1的元件执行的操作的消息流图;
[0017]图6是示出根据一些实施例的用于从域状态拥有(DSO本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种基于处理器的设备,包括:系统排序点电路(SOP);系统存储器;多个处理元件(PE);以及多个域,每一个域包括:所述多个PE中的一个或多个PE;以及本地排序点电路(LOP),所述本地排序点电路(LOP)通信地耦合到所述一个或多个PE;其中:所述多个域中的第一域的第一LOP被配置为:确定一致性颗粒未在所述多个域的任何域内以拥有(O)高速缓存一致性状态被高速缓存,所述一致性颗粒在所述第一域的所述一个或多个PE中的第一PE的本地高速缓存内被高速缓存为第一高速缓存副本;以及更新针对所述一致性颗粒的域一致性状态指示符,以指示所述一致性颗粒在所述第一域内以域状态非拥有(DSN)域一致性状态被高速缓存。2.根据权利要求1所述的基于处理器的设备,其中所述SOP被配置为:从所述多个域中的第二域接收用于对所述一致性颗粒的读取访问的请求;确定所述一致性颗粒在所述第一域内以所述DSN域一致性状态被高速缓存;以及从所述系统存储器读取所述一致性颗粒以满足所述读取访问。3.根据权利要求1所述的基于处理器的设备,其中:所述第一LOP还被配置为:更新针对所述一致性颗粒的所述域一致性状态指示符,以指示所述一致性颗粒在所述第一域内以域状态共享(DSS)域一致性状态被高速缓存;所述第一LOP通过被配置为确定所述多个域中没有域以域状态拥有(DSO)域一致性状态高速缓存所述一致性颗粒,来被配置为确定所述一致性颗粒未在所述多个域的任何域内以所述O高速缓存一致性状态被高速缓存;并且所述第一LOP通过被配置为将所述域一致性状态指示符从所述DSS域一致性状态更新为所述DSN域一致性状态,来被配置为更新针对所述一致性颗粒的所述域一致性状态指示符。4.根据权利要求3所述的基于处理器的设备,其中所述第一LOP被配置为:基于一个或多个窥探响应确定所述多个域中没有域以DSO域一致性状态高速缓存所述一致性颗粒,所述一个或多个窥探响应响应于用于对所述一致性颗粒的读取访问的请求而被发送并由所述第一LOP观测到,所述请求由所述多个PE中的第二PE发送。5.根据权利要求3所述的基于处理器的设备,其中:所述SOP被配置为:观测一个或多个窥探响应,所述一个或多个窥探响应响应于用于对所述一致性颗粒的读取访问的请求而被发送,所述请求由所述多个PE中的第二PE发送;并且基于所述一个或多个窥探响应,确定所述多个域中没有域以DSO域一致性状态高速缓存所述一致性颗粒;以及向所述第一LOP发送所述多个域中没有域以DSO域一致性状态高速缓存所述一致性颗粒的指示;并且
所述第一LOP被配置为:基于所述指示确定所述多个域中没有域以DSO域一致性状态高速缓存所述一致性颗粒。6.根据权利要求1所述的基于处理器的设备,其中:所述第一LOP还被配置为:更新针对所述一致性颗粒的所述域一致性状态指示符,以指示所述一致性颗粒在所述第一域内以DSS域一致性状态被高速缓存;所述第一LOP通过被配置为确定所述多个域中的至少一个域以所述DSN域一致性状态高速缓存所述一致性颗粒,来被配置为确定所述一致性颗粒未在所述多域中的任何域内以所述O高速缓存一致性状态被高速缓存;并且所述第一LOP通过被配置为将所述域一致性状态指示符从所述DSS域一致性状态更新为所述DSN域一致性状态,来被配置为更新针对所述一致性颗粒的所述域一致性状态指示符。7.根据权利要求6所述的基于处理器的设备,其中所述第一LOP被配置为:基于一个或多个窥探响应确定所述多个域中没有域以DSN域一致性状态高速缓存所述一致性颗粒,所述一个或多个窥探响应响应于用于对所述一致性颗粒的读取访问的请求而被发送并由所述第一LOP观测,所述请求由所述多个PE中的第二PE发送。8.根据权利要求6所述的基于处理器的设备,其中:所述SOP被配置为:观测一个或多个窥探响应,所述一个或多个窥探响应响应于用于对所述一致性颗粒的读取访问的请求而被发送,所述请求由所述多个PE中的第二PE发送;并且基于所述一个或多个窥探响应,确定所述多个域中的至少一个域以所述DSN域一致性状态高速缓存所述一致性颗粒;以及向所述第一LOP发送所述多个域中的至少一个域以所述DSN域一致性状态高速缓存所述一致性颗粒的指示;并且所述第一LOP被配置为:基于所述指示确定所述多个域中没有域以DSO域一致性状态高速缓存所述一致性颗粒...

【专利技术属性】
技术研发人员:E
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:

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

1