CN104778132A - 一种多核处理器目录缓存替换方法 - Google Patents
一种多核处理器目录缓存替换方法 Download PDFInfo
- Publication number
- CN104778132A CN104778132A CN201510162370.XA CN201510162370A CN104778132A CN 104778132 A CN104778132 A CN 104778132A CN 201510162370 A CN201510162370 A CN 201510162370A CN 104778132 A CN104778132 A CN 104778132A
- Authority
- CN
- China
- Prior art keywords
- l1cache
- buffer memory
- message
- replacement
- cache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种多核处理器目录缓存替换方法,属于计算机存储技术领域,具体为:多核处理器采用两级缓存结构,每个处理器核组合一个L1Cache,所有的处理器核共享L2Cache;L1Cache之间通过目录缓存维护数据一致性,根据目录缓存与L1Cache的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;为目录缓存增设每个L1Cache缓存组的无消息替换计数向量组,保存每个L1Cache在该缓存组发生的无消息替换次数;以便决定被替换的缓存块;本发明有效识别目录缓存中的无效项并进行有限替换,提高目录缓存的有效容量,提升多核处理器的整体性能。
Description
技术领域
本发明公开一种目录缓存替换方法,属于计算机存储技术领域,具体涉及多核处理器目录缓存替换方法及目录缓存替换系统。
背景技术
多核处理器结构已经成为了处理器设计的主流,从桌面处理器到服务器处理器,甚至手机处理器都广泛采用的多核结构,并且核数的增长趋势明显。随着核数的增加,多核处理器系统具备可扩展性,随之而来就需要维护多个处理器核的缓存数据一致性,而目录一致性可以有效地维护缓存数据一致性。但是商业处理器中采用的缓存一致性协议导致目录缓存空间浪费,为了降低L1Cache的响应时间(Load-To-Use Time),对干净的数据执行降级操作时往往不会通知目录缓存(Directory Cache)。通常就是如果L1Cache发生了替换,被替换的缓存块是S状态,当S状态的数据降级到I状态,L1Cache不需要与Directory Cache通信,这样虽然减小替换操作的时间延迟,但是这种降级操作没有通知Directory Cache,Directory Cache依旧为I状态的数据维护数据一致性。这导致了由于无消息替换操作引起的无效项浪费了Directory Cache的容量,造成Directory Cache更为严重的容量冲突,损害了多核处理器的整体性能。
本发明提供一种多核处理器目录缓存替换方法,重点设计目录一致性协议中的关键部件目录缓存,提出了新的目录缓存替换算法以提高目录缓存的容量利用率。可以有效识别目录缓存中的无效项并进行有限替换,提高目录缓存的有效容量,提升多核处理器的整体性能。
发明内容
在多核处理器系统中,目录缓存的容量有限,有效利用目录的容量成为多核处理器设计的关键性问题。而商业处理器广泛采用的无消息替换(Silent Replacement)浪费了目录缓存的容量,损害了多核处理器的整体性能针对上述问题,本发明提供一种多核处理器目录缓存替换方法,实现了有效识别目录缓存中的无效项并进行有限替换,提高目录缓存的有效容量,提升多核处理器的整体性能。
本发明提出的具体方案是:
一种多核处理器目录缓存替换方法,具体如下:
多核处理器采用两级缓存结构,每个处理器核组合一个L1Cache,所有的处理器核共享L2Cache;
L1Cache之间通过目录缓存维护数据一致性,根据目录缓存与L1Cache的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;
为目录缓存增设每个L1Cache缓存组的无消息替换计数向量组,保存每个L1Cache在该缓存组发生的无消息替换次数;
当目录缓存发生替换时,根据当前的替换策略、目录缓存块的共享状态向量以及无消息替换计数向量的状态,来共同决定被替换的缓存块,以便节省目录缓存空间。
当处理器核发出请求访问给L1Cache,如果L1Cache命中则返回数据或者确认消息;
如果L1Cache缺失,则在L1Cache当中选择一个空闲项保存从L2Cache或者内存当中返回的数据,如果L1Cache当中没有空闲项,则选择一项发生替换;以上述条件确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数。
确定无消息替换次数具体过程为:
利用GETX(S)+GETS(S)=Rep(S)+INV-ALL(S)+ASSOC 式1
Rep(S)=SRep(S)+ERep(S) 式2
PUTX(S)=ERep(S)+INV-L1M(S) 式3
SRep(S) = GETX(S)+GETS(S)-INV-ALL(S)-ASSOC-(PUTX(S)-INV-L1M(S))式4
针对每个处理器核对应的L1Cache的某一缓存组,称缓存组S,Directory Cache收到的来自该处理器的数据请求总数与该处理器L1Cache发生的缓存块替换次数、目录缓存向该处理器核发出的INV总数以及其L1Cache的组相联度的总和相同,用式1表示,其中GETX(S)表示L1Cache针对缓存组S发出独占请求的数量,GETS(S)表示L1Cache针对缓存组S发出共享读请求的次数,Rep(S)是L1Cache中针对缓存组S发生的替换总数,INV-ALL(S)是Directory Cache针对缓存组S发出的INV消息总数,ASSOC是L1Cache的组相联度;
L1Cache发生的缓存块替换可以分成两类有消息的替换与无消息的替换,其中Srep(S)表示L1Cache中针对缓存组S发生的无消息替换次数,ERep(S)表示L1Cache中针对缓存组S发生的有消息替换次数;
针对缓存组S,L1Cache写回数据由两类事件引起,分别是替换L1Cache中的脏数据与使无效L1Cache中的脏数据,即M状态的数据,用式3所示,其中PUTX(S)表示L1Cache针对缓存组S发出的数据写回,INV-L1M(S)表示目录缓存使无效L1Cache中的脏数据;
式4即通过目录缓存观测到的数据得出缓存组S的无消息替换次数,其中INV-L1M表示的是目录缓存发出的INV但是没有收到INV-ACK的这一部分消息。
所述的无消息替换计数向量组,即SRC cache,是一个M路组相联的缓存,每一路缓存共有S项缓存块,其每一项缓存块包含一个N项整数的向量,N为处理器核数,整数向量的每一个元素用来保存该处理器核对应的L1Cache在该缓存组发生的无消息替换次数;SRC cache与L1Cache在其他方面具有相同的配置。
所述的决定被替换的缓存块的过程为:
当目录缓存处理新请求发生缺失时,如果该缓存组中存在空闲项,则不执行替换,给新请求分配空闲项;
如果该缓存组中没有空闲项,则执行替换:给该缓存组的每个缓存块都计算权值,优先替换权值低于阈值的缓存块;如果所有的缓存块都没有低于阈值,根据pseudo-LRU策略执行替换。
所述的计算权值是指:
利用如下式5
目录缓存块的共享状态向量为SL(Line)=C--0C1C2…CN-1,CK∈{0,1},则每个缓存块的权重W(Line)用式5表示,其中C[K]与SR[K]分别表示SL(Line)与SR(Line)的第K+1位,当SR[K]等于零时,有下式:
x是自然数。
所述的阈值,其调节方法为:
目录缓存执行替换以后,暂时保存被替换的缓存块到Recycle FIFO中,Recycle FIFO采用先进先出的替换方法;当L1Cache发出的请求在Recycle FIFO中大量命中,则说明存在误识别现象,要降低阈值;当超过一定时间没有L1Cache的请求在Recycle FIFO中命中,则说明没有有效识别,要提高阈值。阈值的初始值可以设置为0.5*N,操作粒度为0.1。阈值设置的是否合理对多核处理器的性能有重要的影响。阈值设置的过低,不能有效的识别目录缓存中的无效项,相反,阈值设置的过高,则出现大量的误识别,目录缓存中的有效项被误识别为无效项被优先替换,造成L1Cache的性能损失。
一种多核处理器目录缓存替换系统:
包括两级缓存结构,L1Cache和L2Cache;每个处理器核组合一个L1Cache,所有的处理器核共享L2Cache;L1Cache之间通过目录缓存维护数据一致性,L1Cache与目录缓存的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;
还包括目录缓存,且为目录缓存增设每个L1Cache缓存组的无消息替换计数向量组,保存每个L1Cache在该缓存组发生的无消息替换次数;当目录缓存发生替换时,根据当前的替换策略、目录缓存块的共享状态向量以及无消息替换计数向量的状态,来共同决定被替换的缓存块,以便节省目录缓存空间。
所述的L1Cache的每项缓存块由三部分组成,分别是标签、状态位以及数据;
所述的目录缓存的每个缓存块由三部分组成,分别是标签,Coherent State协议状态位与共享状态向量。
所述的无消息替换计数向量组,即SRC cache,是一个M路组相联的缓存,每一路缓存共有S项缓存块,其每一项缓存块包含一个N项整数的向量,N为处理器核数,整数向量的每一个元素用来保存该处理器核对应的L1Cache在该缓存组发生的无消息替换次数;SRC cache与L1Cache在其他方面具有相同的配置。
本发明的有益之处是:本发明的多核处理器设置二级缓存结构,及目录缓存,并且为目录缓存增设无消息替换计数向量组,用来记录每个处理器核对应该缓存组发生无消息替换的次数,其主要是根据目录缓存与L1Cache的交互消息,确定出每个处理器核对应某个缓存组发生无消息替换的次数,并记录在无消息替换计数向量组中;然后,当目录缓存发生替换时,根据当前的替换策略、缓存块的共享状态向量、记录无消息替换的计数向量三者的状态来决定被替换的缓存块,并优先替换目录缓存中由无消息替换引入的无效项,实现了有效识别目录缓存中的无效项并进行有限替换,提高目录缓存的有效容量,提升多核处理器的整体性能。
附图说明
图1本发明设置缓存的多核处理器的结构示意图;
图2 SRC cache的结构示意图;
图3替换算法的执行流程示意图。
具体实施方式
结合附图对本发明做进一步说明。
结合图1,一种多核处理器目录缓存替换系统包括两级缓存结构,四个Tile组成,每个Tile包括一个处理器核与一个L1Cache,通过互连网络与L2Cache以及目录缓存相连,所有的处理器核共享L2Cache,处理器通过外部网络与DDR以及其他处理器相连;
L1Cache与目录缓存的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;
目录缓存增设每个L1Cache缓存组的无消息替换计数向量组,保存每个L1Cache在该缓存组发生的无消息替换次数;当目录缓存发生替换时,根据当前的替换策略、目录缓存块的共享状态向量以及无消息替换计数向量的状态,来共同决定被替换的缓存块,以便节省目录缓存空间。
其中在目录缓存中,每个缓存块由三部分组成,分别是:标签、协议状态位与共享状态向量。
L1Cache的每项缓存块由三部分组成,分别是标签、状态位以及数据。
结合图2,无消息替换计数向量组(SRC cache,Silent Replacement Counter cache),即SRC cache,是一个M路组相联的缓存,每一路缓存共有S项缓存块,其每一项缓存块是一个N个整数的向量SR,N为处理器核数,在图1中N=4。整数向量的每一个元素用来保存该处理器核对应的L1Cache在该缓存组发生的无消息替换次数;SRC cache与L1Cache在其他方面具有相同的配置。如SR[K](0≤K<N且K∈自然数),记录了处理器K在该缓存组发生的无消息替换的次数。
结合图1至图3,其中一种多核处理器目录缓存替换方法,具体过程为:
多核处理器采用两级缓存结构,每个处理器核组合一个L1Cache,所有的处理器核共享L2Cache;
L1Cache之间通过目录缓存维护数据一致性,根据目录缓存与L1Cache的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;
确定无消息替换次数过程可以为:
处理器核发出请求访问给L1Cache,如果L1Cache命中则返回数据或者确认消息;
如果L1Cache缺失,则在L1Cache当中选择一个空闲项保存从L2Cache或者内存当中返回的数据,如果L1Cache当中没有空闲项,则选择一项发生替换;以上述条件确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数。
其中具体的得出过程为:
利用GETX(S)+GETS(S)=Rep(S)+INV-ALL(S)+ASSOC 式1
Rep(S)=SRep(S)+ERep(S) 式2
PUTX(S)=ERep(S)+INV-L1M(S) 式3
SRep(S) = GETX(S)+GETS(S)-INV-ALL(S)-ASSOC-(PUTX(S)-INV-L1M(S))式4
针对每个处理器核对应的L1Cache的某一缓存组,称缓存组S,Directory Cache收到的来自该处理器的数据请求总数与该处理器L1Cache发生的缓存块替换次数、目录缓存向该处理器核发出的INV总数以及其L1Cache的组相联度的总和相同,用式1表示,其中GETX(S)表示L1Cache针对缓存组S发出独占请求的数量,GETS(S)表示L1Cache针对缓存组S发出共享读请求的次数,Rep(S)是L1Cache中针对缓存组S发生的替换总数,INV-ALL(S)是Directory Cache针对缓存组S发出的INV消息总数,ASSOC是L1Cache的组相联度;
L1Cache发生的缓存块替换可以分成两类有消息的替换与无消息的替换,其中Srep(S)表示L1Cache中针对缓存组S发生的无消息替换次数,ERep(S)表示L1Cache中针对缓存组S发生的有消息替换次数;
针对缓存组S,L1Cache写回数据由两类事件引起,分别是替换L1Cache中的脏数据与使无效L1Cache中的脏数据,即M状态的数据,用式3所示,其中PUTX(S)表示L1Cache针对缓存组S发出的数据写回,INV-L1M(S)表示目录缓存使无效L1Cache中的脏数据;
式4即通过目录缓存观测到的数据得出缓存组S的无消息替换次数,其中INV-L1M表示的是目录缓存发出的INV但是没有收到INV-ACK的这一部分消息。其中INV为使无效消息的简称。
又决定被替换的缓存块的过程为:
当目录缓存处理新请求发生缺失时,如果该缓存组中存在空闲项,则不执行替换,给新请求分配空闲项;
如果该缓存组中没有空闲项,则执行替换:给该缓存组的每个缓存块都计算权值,优先替换权值低于阈值的缓存块;如果所有的缓存块都没有低于阈值,根据pseudo-LRU策略执行替换。
其计算权值可以通过下式
目录缓存块的共享状态向量为SL(Line)=C--0C1C2…CN-1,CK∈{0,1},则每个缓存块的权重W(Line)用式5表示,其中C[K]与SR[K]分别表示SL(Line)与SR(Line)的第K+1位,当SR[K]等于零时,有下式:
x是自然数。
其中的阈值设置的是否合理对多核处理器的性能有重要的影响。阈值设置的过低,不能有效的识别Directory Cache中的无效项,相反,阈值设置的过高,则出现大量的误识别,Directory Cache中的有效项被误识别为无效项被优先替换,造成L1Cache的性能损失。
为了防止上述现象的出现,本发明中采用动态调整的阈值。阈值的初始值可以设置为0.5*N,操作粒度为0.1。目录缓存执行替换以后,暂时保存被替换的缓存块到Recycle FIFO中,与Directory Cache相比,RecycleFIFO仅有128项,每项仅含有被替换的缓存块的标签,Recycle FIFO采用先进先出的替换方法;当L1Cache发出的请求在Recycle FIFO中大量命中,则说明存在误识别现象,要降低阈值;当超过一定时间没有L1Cache的请求在Recycle FIFO中命中,则说明没有有效识别,要提高阈值。
图3中的流程可以概括为首先,检查该缓存组中是否存在空闲项,如果存在,则不执行替换,给新请求分配空闲项。如果不存在,则执行替换。然后,给该组的每个缓存块计算权值,优先替换权值低于某个阈值的缓存块。如果所有的缓存块都没有低于阈值,根据pseudo-LRU策略执行替换。
除本发明公开的技术外,本发明中运用的其他技术都为所属领域的技术人员所能了解的现有技术。
Claims (10)
1.一种多核处理器目录缓存替换方法,其特征是:
多核处理器采用两级缓存结构,每个处理器核组合一个L1Cache,所有的处理器核共享L2Cache;
L1Cache之间通过目录缓存维护数据一致性,根据目录缓存与L1Cache的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;
为目录缓存增设每个L1Cache缓存组的无消息替换计数向量组,保存每个L1Cache在该缓存组发生的无消息替换次数;
当目录缓存发生替换时,根据当前的替换策略、目录缓存块的共享状态向量以及无消息替换计数向量的状态,来共同决定被替换的缓存块,以便节省目录缓存空间。
2.根据权利要求1所述的一种多核处理器目录缓存替换方法,其特征是处理器核发出请求访问给L1Cache,如果L1Cache命中则返回数据或者确认消息;
如果L1Cache缺失,则在L1Cache当中选择一个空闲项保存从L2Cache或者内存当中返回的数据,如果L1Cache当中没有空闲项,则选择一项发生替换;以上述条件确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数。
3.根据权利要求2所述的一种多核处理器目录缓存替换方法,其特征是确定无消息替换次数具体过程为:
利用GETX(S)+GETS(S)=Rep(S)+INV-ALL(S)+ASSOC 式1
Rep(S)=SRep(S)+ERep(S) 式2
PUTX(S)=ERep(S)+INV-L1M(S) 式3
SRep(S) = GETX(S)+GETS(S)-INV-ALL(S)-ASSOC-(PUTX(S)-INV-L1M(S))式4
针对每个处理器核对应的L1Cache的某一缓存组,称缓存组S,Directory Cache收到的来自该处理器的数据请求总数与该处理器L1Cache发生的缓存块替换次数、目录缓存向该处理器核发出的INV总数以及其L1Cache的组相联度的总和相同,用式1表示,其中GETX(S)表示L1Cache针对缓存组S发出独占请求的数量,GETS(S)表示L1Cache针对缓存组S发出共享读请求的次数,Rep(S)是L1Cache中针对缓存组S发生的替换总数,INV-ALL(S)是Directory Cache针对缓存组S发出的INV消息总数,ASSOC是L1Cache的组相联度;
L1Cache发生的缓存块替换可以分成两类有消息的替换与无消息的替换,其中Srep(S)表示L1Cache中针对缓存组S发生的无消息替换次数,ERep(S)表示L1Cache中针对缓存组S发生的有消息替换次数;
针对缓存组S,L1Cache写回数据由两类事件引起,分别是替换L1Cache中的脏数据与使无效L1Cache中的脏数据,即M状态的数据,用式3所示,其中PUTX(S)表示L1Cache针对缓存组S发出的数据写回,INV-L1M(S)表示目录缓存使无效L1Cache中的脏数据;
式4即通过目录缓存观测到的数据得出缓存组S的无消息替换次数,其中INV-L1M表示的是目录缓存发出的INV但是没有收到INV-ACK的这一部分消息。
4.根据权利要求1或3所述的一种多核处理器目录缓存替换方法,其特征是所述的无消息替换计数向量组,即SRC cache,是一个M路组相联的缓存,每一路缓存共有S项缓存块,其每一项缓存块包含一个N项整数的向量,N为处理器核数,整数向量的每一个元素用来保存该处理器核对应的L1Cache在该缓存组发生的无消息替换次数;SRC cache与L1Cache在其他方面具有相同的配置。
5.根据权利要求4所述的一种多核处理器目录缓存替换方法,其特征是所述的决定被替换的缓存块的过程为:
当目录缓存处理新请求发生缺失时,如果该缓存组中存在空闲项,则不执行替换,给新请求分配空闲项;
如果该缓存组中没有空闲项,则执行替换:给该缓存组的每个缓存块都计算权值,优先替换权值低于阈值的缓存块;如果所有的缓存块都没有低于阈值,根据pseudo-LRU策略执行替换。
6.根据权利要求5所述的一种多核处理器目录缓存替换方法,其特征是所述的计算权值是指:
利用如下式5
目录缓存块的共享状态向量为SL(Line)=C--0C1C2…CN-1,CK∈{0,1},则每个缓存块的权重W(Line)用式5表示,其中C[K]与SR[K]分别表示SL(Line)与SR(Line)的第K+1位,当SR[K]等于零时,有下式:
x是自然数。
7.根据权利要求5或6所述的一种多核处理器目录缓存替换方法,其特征是所述的阈值,其调节方法为:
目录缓存执行替换以后,暂时保存被替换的缓存块到Recycle FIFO中,Recycle FIFO采用先进先出的替换方法;当L1Cache发出的请求在Recycle FIFO中大量命中,则说明存在误识别现象,要降低阈值;当超过一定时间没有L1Cache的请求在Recycle FIFO中命中,则说明没有有效识别,要提高阈值。
8.一种多核处理器目录缓存替换系统,其特征是:
所述的系统包括两级缓存结构,L1Cache和L2Cache;每个处理器核组合一个L1Cache,所有的处理器核共享L2Cache;L1Cache之间通过目录缓存维护数据一致性,L1Cache与目录缓存的交互消息,确定每个处理器核对应的L1Cache的某个缓存组发生的无消息替换次数;
所述的系统还包括目录缓存,且为目录缓存增设每个L1Cache缓存组的无消息替换计数向量组,保存每个L1Cache在该缓存组发生的无消息替换次数;当目录缓存发生替换时,根据当前的替换策略、目录缓存块的共享状态向量以及无消息替换计数向量的状态,来共同决定被替换的缓存块,以便节省目录缓存空间。
9.根据权利要求8所述的一种多核处理器目录缓存替换系统,其特征是
所述的L1Cache的每项缓存块由三部分组成,分别是标签、状态位以及数据;
所述的目录缓存的每个缓存块由三部分组成,分别是标签,Coherent State协议状态位与共享状态向量。
10.根据权利要求8或9所述的一种多核处理器目录缓存替换系统,其特征是所述的无消息替换计数向量组,即SRC cache,是一个M路组相联的缓存,每一路缓存共有S项缓存块,其每一项缓存块包含一个N项整数的向量,N为处理器核数,整数向量的每一个元素用来保存该处理器核对应的L1Cache在该缓存组发生的无消息替换次数;SRC cache与L1Cache在其他方面具有相同的配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510162370.XA CN104778132B (zh) | 2015-04-08 | 2015-04-08 | 一种多核处理器目录缓存替换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510162370.XA CN104778132B (zh) | 2015-04-08 | 2015-04-08 | 一种多核处理器目录缓存替换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104778132A true CN104778132A (zh) | 2015-07-15 |
CN104778132B CN104778132B (zh) | 2018-02-23 |
Family
ID=53619610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510162370.XA Active CN104778132B (zh) | 2015-04-08 | 2015-04-08 | 一种多核处理器目录缓存替换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104778132B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095725A (zh) * | 2016-05-31 | 2016-11-09 | 浪潮(北京)电子信息产业有限公司 | 一种一致性目录构建方法、系统及多处理器计算机系统 |
CN106909517A (zh) * | 2015-12-22 | 2017-06-30 | 超威半导体产品(中国)有限公司 | 用于基于目录的缓存一致性的目录替换方法和系统 |
CN109408411A (zh) * | 2018-09-25 | 2019-03-01 | 浙江工商大学 | 基于数据访问次数的GPGPU的L1 Cache管理方法 |
WO2020001295A1 (en) * | 2018-06-27 | 2020-01-02 | The Hong Kong Polytechnic University | Client-server architecture for multicore computer system to realize single-core-equivalent view |
CN112667534A (zh) * | 2020-12-31 | 2021-04-16 | 海光信息技术股份有限公司 | 缓冲存储装置、处理器及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591800A (zh) * | 2011-12-31 | 2012-07-18 | 龙芯中科技术有限公司 | 一种弱一致性存储模型的数据访存系统和方法 |
US20130151785A1 (en) * | 2011-12-08 | 2013-06-13 | Huawei Technologies Co., Ltd. | Directory replacement method and device |
CN104484288A (zh) * | 2014-12-30 | 2015-04-01 | 浪潮电子信息产业股份有限公司 | 一种对目录条目进行替换的方法及装置 |
-
2015
- 2015-04-08 CN CN201510162370.XA patent/CN104778132B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130151785A1 (en) * | 2011-12-08 | 2013-06-13 | Huawei Technologies Co., Ltd. | Directory replacement method and device |
CN102591800A (zh) * | 2011-12-31 | 2012-07-18 | 龙芯中科技术有限公司 | 一种弱一致性存储模型的数据访存系统和方法 |
CN104484288A (zh) * | 2014-12-30 | 2015-04-01 | 浪潮电子信息产业股份有限公司 | 一种对目录条目进行替换的方法及装置 |
Non-Patent Citations (1)
Title |
---|
张轮凯,宋凤龙: "提升稀疏目录缓存一致性系统性能的方法", 《计算机研究与发展》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106909517A (zh) * | 2015-12-22 | 2017-06-30 | 超威半导体产品(中国)有限公司 | 用于基于目录的缓存一致性的目录替换方法和系统 |
CN106095725A (zh) * | 2016-05-31 | 2016-11-09 | 浪潮(北京)电子信息产业有限公司 | 一种一致性目录构建方法、系统及多处理器计算机系统 |
WO2020001295A1 (en) * | 2018-06-27 | 2020-01-02 | The Hong Kong Polytechnic University | Client-server architecture for multicore computer system to realize single-core-equivalent view |
CN109408411A (zh) * | 2018-09-25 | 2019-03-01 | 浙江工商大学 | 基于数据访问次数的GPGPU的L1 Cache管理方法 |
CN112667534A (zh) * | 2020-12-31 | 2021-04-16 | 海光信息技术股份有限公司 | 缓冲存储装置、处理器及电子设备 |
CN112667534B (zh) * | 2020-12-31 | 2023-10-20 | 海光信息技术股份有限公司 | 缓冲存储装置、处理器及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104778132B (zh) | 2018-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7380065B2 (en) | Performance of a cache by detecting cache lines that have been reused | |
CN103246616B (zh) | 一种长短周期访问频度的全局共享缓存替换方法 | |
CN104778132A (zh) | 一种多核处理器目录缓存替换方法 | |
KR100978156B1 (ko) | 스누프 필터에서의 실효를 감소시키기 위한 라인 스와핑 스킴을 위한 방법, 장치, 시스템 및 컴퓨터 판독 가능 기록 매체 | |
US20140208038A1 (en) | Sectored cache replacement algorithm for reducing memory writebacks | |
CN107391398B (zh) | 一种闪存缓存区的管理方法及系统 | |
CN103150136B (zh) | 基于ssd的大容量缓存中的lru策略实现方法 | |
US10216414B2 (en) | Frame choosing during storage constraint condition | |
WO2019127104A1 (zh) | 高速缓存中资源调整方法、数据访问方法及装置 | |
CN105095116A (zh) | 缓存替换的方法、缓存控制器和处理器 | |
CN104239225A (zh) | 一种管理异构混合内存的方法及装置 | |
CN102331974A (zh) | 用于处理器主存储器的持久存储器 | |
US20200042343A1 (en) | Virtual machine replication and migration | |
US9727465B2 (en) | Self-disabling working set cache | |
CN105183662A (zh) | 一种无cache一致性协议的分布式共享片上存储架构 | |
CN107025130B (zh) | 处理节点、计算机系统及事务冲突检测方法 | |
CN102253901B (zh) | 一种基于相变内存的读写区分数据存储替换方法 | |
CN108572799B (zh) | 一种双向哈希链表的异构内存系统数据页迁移方法 | |
CN115794669A (zh) | 一种扩展内存的方法、装置及相关设备 | |
CN116501249A (zh) | 一种减少gpu内存重复数据读写的方法及相关设备 | |
US11226898B2 (en) | Data caching method and apparatus | |
Valero et al. | An hybrid eDRAM/SRAM macrocell to implement first-level data caches | |
CN106164874B (zh) | 多核系统中数据访问者目录的访问方法及设备 | |
CN112612419B (zh) | Nvm的数据存储结构、存储方法、读取方法、设备及介质 | |
CN102521144A (zh) | 一种闪存转换层系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |