CN102521163A - 目录替换方法及设备 - Google Patents

目录替换方法及设备 Download PDF

Info

Publication number
CN102521163A
CN102521163A CN2011104057950A CN201110405795A CN102521163A CN 102521163 A CN102521163 A CN 102521163A CN 2011104057950 A CN2011104057950 A CN 2011104057950A CN 201110405795 A CN201110405795 A CN 201110405795A CN 102521163 A CN102521163 A CN 102521163A
Authority
CN
China
Prior art keywords
address
catalogue
directory
directory entry
mentioned
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
Application number
CN2011104057950A
Other languages
English (en)
Other versions
CN102521163B (zh
Inventor
姚策
赵亚飞
徐建荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XFusion Digital Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201110405795.0A priority Critical patent/CN102521163B/zh
Publication of CN102521163A publication Critical patent/CN102521163A/zh
Priority to US13/682,891 priority patent/US9208100B2/en
Priority to EP12193965.6A priority patent/EP2629206B1/en
Application granted granted Critical
Publication of CN102521163B publication Critical patent/CN102521163B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • G06F12/082Associative directories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供一种目录替换方法及设备。本发明HA接收来自第一CA的包含第一地址的数据访问请求之后,若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,上述HA通过从上述目录中选择第二目录项,使得能够将上述第二目录项从上述目录中删除,并将上述第一目录项增加到上述目录中,由于HA在替换目录中的目录项之前,无论被替换的目录项中地址对应的缓存行的共享状态为任何状态(例如:I状态、S状态或者A状态),HA均不需要请求对应的CA对上述数据进行失效操作,而是直接替换目录中的目录项,从而提高了替换效率。

Description

目录替换方法及设备
技术领域
本发明涉及数据访问技术,尤其涉及一种目录替换方法及设备。
背景技术
非一致性内存访问(Non-Uniform Memory Access,简称NUMA)系统可以包括互联的多个节点,每个节点由一个节点控制器(Node Controller,简称NC)和多个中央处理单元(Central Processing Unit,简称CPU)组成。节点内可以通过采用基于目录的缓存一致性(Cache Coherence,简称CC)协议,来保持各个缓存(Cache)之间数据的一致性。由于存储目录需要很大的存储空间,因此不可能将全部地址对应的目录项均存储到缓存中。现有技术中,可以将一部分地址对应的目录项存储在缓存中。当上述缓存全部被目录占用,且当前需要访问的地址对应的目录项不在上述目录中,内存代理(Home Agent,简称HA)从目录中选择一个目录项,如果CA对该目录项中地址对应的缓存行(Cache Line)的共享状态为共享(即S)状态或者不确定(即A)状态,HA则向上述CA发送窥探(Snoop)请求消息,用以请求上述CA对上述目录项中地址对应的缓存行进行失效操作,用以使得CA对该目录项中地址对应的缓存行的共享状态为无效(即I)状态,然后将上述目录项从该目录中删除,并将当前需要访问的地址对应的目录项增加到上述目录中。
然而,上述HA在替换目录中的目录项之前,如果被替换的目录项中地址对应的缓存行的共享状态为S状态或者A状态,HA则需要请求对应的CA对上述数据进行失效操作,从而导致了替换效率的降低。
发明内容
本发明提供一种目录替换方法及设备,用以提高替换效率。
一方面提供了一种目录替换方法,包括:
HA接收来自第一CA的包含第一地址的数据访问请求,所述数据访问请求用以访问所述第一地址对应的第一存储器或第二存储器中的数据;
若目录所在的具有预设大小的指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,所述HA从所述目录中选择第二目录项;
所述HA将所述第二目录项从所述目录中删除,并将所述第一目录项增加到所述目录中。
另一方面提供了一种目录替换设备,包括:
接收单元,用于接收来自第一CA的包含第一地址的数据访问请求,所述数据访问请求用以访问所述第一地址对应的第一存储器或第二存储器中的数据;
选择单元,用于若目录所在的具有预设大小的指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,从所述目录中选择第二目录项;
替换单元,用于将所述第二目录项从所述目录中删除,并将所述第一目录项增加到所述目录中。
由上述技术方案可知,本发明实施例HA接收来自第一CA的包含第一地址的数据访问请求之后,若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,上述HA通过从上述目录中选择第二目录项,使得能够将上述第二目录项从上述目录中删除,并将上述第一目录项增加到上述目录中,由于HA在替换目录中的目录项之前,无论被替换的目录项中地址对应的缓存行的共享状态为任何状态(例如:I状态、S状态或者A状态),HA均不需要请求对应的CA对上述数据进行失效操作,而是直接替换目录中的目录项,从而提高了替换效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的目录替换方法的流程示意图;
图2为NUMA系统的拓扑结构示意图;
图3为本发明另一实施例提供的目录替换方法的流程示意图;
图4为本发明另一实施例提供的目录替换设备的结构示意图;
图5为本发明另一实施例提供的目录替换设备的结构示意图;
图6为本发明另一实施例提供的目录替换设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明一实施例提供的目录替换方法的流程示意图,如图1所示,本实施例的目录替换方法可以包括:
101、HA接收来自第一CA的包含第一地址的数据访问请求,上述数据访问请求用以访问上述第一地址对应的第一存储器或第二存储器中的数据;
可选地,第一存储器和第二存储器可以是非易失性存储器,例如:固态硬盘、标准闪存、安全数字(Secure Digital,简称SD)卡、硬盘等。
可选地,第一存储器和第二存储器也可以是易失性存储器,例如:双倍数据率同步动态随机存储器(Double Data Rate Synchronous DynamicRandom Access Memory,简称DDR SDRAM)等。
102、若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,上述HA从上述目录中选择第二目录项;
可选地,指定存储器可以是非易失性存储器,例如:固态硬盘、标准闪存、SD卡、硬盘等。
可选地,指定存储器也可以是易失性存储器,例如:DDR SDRAM等。
可以理解的是:第一存储器或第二存储器可以以存储单元的形式实现对数据的存储。指定存储器可以是系统内部的一个独立的存储器,或者还可以为第一存储器的存储单元或第二存储器的存储单元。
进一步地,上述HA从上述目录中选择第二目录项可以有多种方式。
例如:如果上述目录中存在第二地址对应的可选目录项,且第二CA对上述第二地址对应的缓存行的共享状态全为I状态,上述HA选择上述第二地址对应的可选目录项,作为第二目录项。
再例如:如果上述目录中不存在第二地址对应的可选目录项,存在第三地址对应的可选目录项,且第二CA中对上述第三地址对应的缓存行的共享状态为S状态的第二CA个数最多,上述HA选择上述第三地址对应的可选目录项,作为第二目录项。
再例如:如果上述目录中不存在第二地址对应的可选目录项,不存在第三地址对应的可选目录项,上述HA选择第四地址对应的可选目录项,作为第二目录项。
103、上述HA将上述第二目录项从上述目录中删除,并将上述第一目录项增加到上述目录中。
可以理解的是:本实施例中,第一CA访问不在目录中的地址时,HA则可以认为第二CA对该地址对应的缓存行的共享状态为A状态,从而使得HA能够进行相应的处理。其中,第二CA为NUMA系统中除了第一CA之外的其他CA,可以是一个,或者还可以为多个,本实施例对此不进行限定。
例如:在本实施例中,如果HA接收的上述数据访问请求为共享数据请求;相应地,若上述指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,上述HA则可以向第二CA广播第一窥探请求消息,用以请求获得上述第二CA对上述第一地址对应的缓存行的共享状态信息;然后,上述HA则可以根据上述第二CA根据自己对上述地址对应的缓存行的共享状态返回的响应消息,将该地址对应的数据提供给第一CA。
例如:在本实施例中,如果HA接收的上述数据访问请求为独占数据请求;相应地,若上述指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,上述HA则可以向第二CA广播第二窥探请求消息,用以请求上述第二CA对上述第二CA共享的上述第一地址对应的缓存行进行失效操作;然后,上述HA则可以将该地址对应的数据提供给第一CA或者将新的数据写入该地址对应的内存中的存储单元或者缓存行。
可选地,如果目录中还存在一地址,且存在第一CA或者第二CA对该地址对应的缓存行的共享状态为S状态,那么,如果HA接收到访问该地址的数据访问请求,HA则可以直接将该地址对应的内存中的数据提供给请求者,或者还可以将该地址对应的内存中的数据提供给请求者或将新的数据写入该地址对应的内存中的存储单元。具体地,可以通过DIR_ME_FULL标记位来标识目录中是否存在上述地址,例如:DIR_ME_FULL=0,目录中存在上述地址,DIR_ME_FULL=1,目录中不存在上述地址;反之亦然。进一步地,若为共享数据请求,则可以不更新该地址对应的目录项。
本实施例中,HA接收来自第一CA的包含第一地址的数据访问请求之后,若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,上述HA通过从上述目录中选择第二目录项,使得能够将上述第二目录项从上述目录中删除,并将上述第一目录项增加到上述目录中,由于HA在替换目录中的目录项之前,无论被替换的目录项中地址对应的缓存行的共享状态为任何状态(例如:I状态、S状态或者A状态),HA均不需要请求对应的CA对上述数据进行失效操作,而是直接替换目录中的目录项,从而提高了替换效率。
本发明实施例提供的技术方案可以适用于任何基于目录的CC协议。为使得本发明实施例提供的方法更加清楚,下面将以快速通道互联(Quick PathInterconnect,简称QPI)CC协议作为举例。图2为NUMA系统的拓扑结构示意图,如图2所示,可以进行如下假设:CA0和CA2对地址A对应的缓存行的共享状态为I状态,说明该缓存行中没有包含数据,或者没有包含有效数据;CA1对地址A对应的缓存行的共享状态为S状态,说明该数据有效;目录所占用的存储空间(即指定存储器,例如:缓存)已经耗尽。图3为本发明另一实施例提供的目录替换方法的流程示意图,如图3所示,本实施例的目录替换方法可以包括:
301、CA2向HA发送包含地址A的共享读请求,用以访问地址A对应的内存中的存储单元或缓存行中的数据;
302、若地址A对应的目录项不在目录中,HA向CA0和CA1广播窥探请求消息,用于告知CA0和CA1,CA2预访问地址A对应的内存中的存储单元或缓存行中的数据;
303、CA0根据自己对地址A对应的缓存行的共享状态即I状态,向HA返回对应的响应消息,该响应消息中包含CA0对地址A对应的缓存行的共享状态;
304、CA1根据自己对地址A对应的缓存行的共享状态即S状态,向HA返回对应的响应消息,该响应消息中包含CA1对地址A对应的缓存行的共享状态;
可以理解的是:上述303与304的执行没有固定的先后顺序,本实施例对此不进行限定。
305、HA从上述目录中选择可替换的目录项,将选择的可替换的目录项从上述目录中删除,并将地址A对应的目录项增加到上述目录中;
具体选择方式可以参见图1对应的实施例中的相关描述,此处不再赘述。
306、HA根据CA0和CA1返回的响应消息,将地址A对应的数据提供给CA2。
本实施例中,HA接收来自CA2的包含地址A的共享读请求之后,若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述地址A对应的目录项不在上述目录中,上述HA通过从上述目录中选择可替换的目录项,使得能够将上述可替换的目录项从上述目录中删除,并将上述地址A对应的目录项增加到上述目录中,由于HA在替换目录中的目录项之前,无论被替换的目录项中地址对应的缓存行的共享状态为任何状态(例如:I状态、S状态或者A状态),HA均不需要请求对应的CA对上述数据进行失效操作,而是直接替换目录中的目录项,从而提高了替换效率。
需要说明的是:对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
图4为本发明另一实施例提供的目录替换设备的结构示意图,如图4所示,本实施例的接收单元41、选择单元42和替换单元43。其中,接收单元41用于接收来自第一CA的包含第一地址的数据访问请求,上述数据访问请求用以访问上述第一地址对应的第一存储器或第二存储器中的数据;选择单元42用于若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,从上述目录中选择第二目录项;替换单元43用于将选择单元42选择的上述第二目录项从上述目录中删除,并将上述第一目录项增加到上述目录中。
上述图1和图3对应的实施例中的HA的功能均可以由本实施例提供的目录替换设备实现。
进一步地,本实施例中的选择单元42从上述目录中选择第二目录项可以有多种方式。
例如:如果上述目录中存在第二地址对应的可选目录项,且第二CA对上述第二地址对应的缓存行的共享状态全为I状态,选择单元42选择上述第二地址对应的可选目录项,作为第二目录项。
再例如:如果上述目录中不存在第二地址对应的可选目录项,存在第三地址对应的可选目录项,且第二CA中对上述第三地址对应的缓存行的共享状态为S状态的第二CA个数最多,选择单元42选择上述第三地址对应的可选目录项,作为第二目录项。
再例如:如果上述目录中不存在第二地址对应的可选目录项,不存在第三地址对应的可选目录项,选择单元42选择第四地址对应的可选目录项,作为第二目录项。
可以理解的是:本实施例中,第一CA访问不在目录中的地址时,目录替换设备则可以认为第二CA对该地址对应的缓存行的共享状态为A状态,从而使得目录替换设备能够进行相应的处理。其中,第二CA为NUMA系统中除了第一CA之外的其他CA,可以是一个,或者还可以为多个,本实施例对此不进行限定。
例如:在本实施例中,如果HA接收的上述数据访问请求为共享数据请求;相应地,如图5所示,本实施例的目录替换设备还可以进一步包括第一访问单元51,可以用于若上述指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,向第二CA广播第一窥探请求消息,用以请求获得上述第二CA对上述第一地址对应的缓存行的共享状态信息。
例如:在本实施例中,如果HA接收的上述数据访问请求为独占数据请求;相应地,如图6所示,本实施例的目录替换设备还可以进一步包括第二访问单元61,可以用于若上述指定存储器全部被上述目录占用,且上述第一地址对应的第一目录项不在上述目录中,向第二CA广播第二窥探请求消息,用以请求上述第二CA对上述第二CA共享的上述第一地址对应的缓存行进行失效操作。
可以理解的是:第一存储器或第二存储器可以以存储单元的形式实现对数据的存储。指定存储器可以是系统内部的一个独立的存储器,或者还可以为第一存储器的存储单元或第二存储器的存储单元。
本实施例中,目录替换设备通过接收单元接收来自CA2的包含地址A的共享读请求之后,若目录所在的具有预设大小的指定存储器全部被上述目录占用,且上述地址A对应的目录项不在上述目录中,由选择单元通过从上述目录中选择可替换的目录项,使得替换单元能够将上述可替换的目录项从上述目录中删除,并将上述地址A对应的目录项增加到上述目录中,由于HA在替换目录中的目录项之前,无论被替换的目录项中地址对应的缓存行的共享状态为任何状态(例如:I状态、S状态或者A状态),HA均不需要请求对应的CA对上述数据进行失效操作,而是直接替换目录中的目录项,从而提高了替换效率。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种目录替换方法,其特征在于,包括:
HA接收来自第一CA的包含第一地址的数据访问请求,所述数据访问请求用以访问所述第一地址对应的第一存储器或第二存储器中的数据;
若目录所在的具有预设大小的指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,所述HA从所述目录中选择第二目录项;
所述HA将所述第二目录项从所述目录中删除,并将所述第一目录项增加到所述目录中。
2.根据权利要求1所述的方法,其特征在于,所述HA从所述目录中选择第二目录项,包括:
如果所述目录中存在第二地址对应的可选目录项,且第二CA对所述第二地址对应的缓存行的共享状态全为I状态,所述HA选择所述第二地址对应的可选目录项,作为第二目录项;
如果所述目录中不存在第二地址对应的可选目录项,存在第三地址对应的可选目录项,且第二CA中对所述第三地址对应的缓存行的共享状态为S状态的第二CA个数最多,所述HA选择所述第三地址对应的可选目录项,作为第二目录项;
如果所述目录中不存在第二地址对应的可选目录项,不存在第三地址对应的可选目录项,所述HA选择第四地址对应的可选目录项,作为第二目录项。
3.根据权利要求1或2所述的方法,其特征在于,所述数据访问请求为共享数据请求,所述方法还包括:
若所述指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,所述HA向第二CA广播第一窥探请求消息,用以请求获得所述第二CA对所述第一地址对应的缓存行的共享状态信息。
4.根据权利要求1或2所述的方法,其特征在于,所述数据访问请求为独占数据请求,所述方法还包括:
若所述指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,所述HA向第二CA广播第二窥探请求消息,用以请求所述第二CA对所述第二CA共享的所述第一地址对应的缓存行进行失效操作。
5.根据权利要求1~4任一权利要求所述的方法,其特征在于,所述指定存储器为所述第一存储器的存储单元或所述第二存储器的存储单元。
6.一种目录替换设备,其特征在于,包括:
接收单元,用于接收来自第一CA的包含第一地址的数据访问请求,所述数据访问请求用以访问所述第一地址对应的第一存储器或第二存储器中的数据;
选择单元,用于若目录所在的具有预设大小的指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,从所述目录中选择第二目录项;
替换单元,用于将所述第二目录项从所述目录中删除,并将所述第一目录项增加到所述目录中。
7.根据权利要求6所述的设备,其特征在于,所述选择单元具体用于
如果所述目录中存在第二地址对应的可选目录项,且第二CA对所述第二地址对应的缓存行的共享状态全为I状态,选择所述第二地址对应的可选目录项,作为第二目录项;
如果所述目录中不存在第二地址对应的可选目录项,存在第三地址对应的可选目录项,且第二CA中对所述第三地址对应的缓存行的共享状态为S状态的第二CA个数最多,选择所述第三地址对应的可选目录项,作为第二目录项;
如果所述目录中不存在第二地址对应的可选目录项,不存在第三地址对应的可选目录项,选择第四地址对应的可选目录项,作为第二目录项。
8.根据权利要求6或7所述的设备,其特征在于,所述数据访问请求为共享数据请求,所述设备还包括第一访问单元,用于
若所述指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,向第二CA广播第一窥探请求消息,用以请求获得所述第二CA对所述第一地址对应的缓存行的共享状态信息。
9.根据权利要求6或7所述的设备,其特征在于,所述数据访问请求为独占数据请求,所述设备还包括第二访问单元,用于
若所述指定存储器全部被所述目录占用,且所述第一地址对应的第一目录项不在所述目录中,向第二CA广播第二窥探请求消息,用以请求所述第二CA对所述第二CA共享的所述第一地址对应的缓存行进行失效操作。
10.根据权利要求6~9任一权利要求所述的设备,其特征在于,所述指定存储器为所述第一存储器的存储单元或所述第二存储器的存储单元。
CN201110405795.0A 2011-12-08 2011-12-08 目录替换方法及设备 Active CN102521163B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201110405795.0A CN102521163B (zh) 2011-12-08 2011-12-08 目录替换方法及设备
US13/682,891 US9208100B2 (en) 2011-12-08 2012-11-21 Directory replacement method and device
EP12193965.6A EP2629206B1 (en) 2011-12-08 2012-11-23 Directory replacement method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110405795.0A CN102521163B (zh) 2011-12-08 2011-12-08 目录替换方法及设备

Publications (2)

Publication Number Publication Date
CN102521163A true CN102521163A (zh) 2012-06-27
CN102521163B CN102521163B (zh) 2014-12-10

Family

ID=46292092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110405795.0A Active CN102521163B (zh) 2011-12-08 2011-12-08 目录替换方法及设备

Country Status (3)

Country Link
US (1) US9208100B2 (zh)
EP (1) EP2629206B1 (zh)
CN (1) CN102521163B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341114A (zh) * 2016-04-29 2017-11-10 华为技术有限公司 一种目录管理的方法、节点控制器和系统
CN108170544A (zh) * 2017-12-29 2018-06-15 中国人民解放军国防科技大学 面向数据无冲突程序的共享数据动态更新方法
CN115203071A (zh) * 2021-04-14 2022-10-18 慧与发展有限责任合伙企业 默认共享状态缓存一致性协议的应用

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104778132B (zh) * 2015-04-08 2018-02-23 浪潮电子信息产业股份有限公司 一种多核处理器目录缓存替换方法
CN117472795A (zh) * 2020-05-29 2024-01-30 超聚变数字技术有限公司 存储介质管理方法及服务器
CN116566805B (zh) * 2023-07-10 2023-09-26 中国人民解放军国防科技大学 一种面向体系容灾抗毁的节点跨域调度方法、装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0818732A2 (en) * 1996-07-01 1998-01-14 Sun Microsystems, Inc. Hybrid memory access protocol in a distributed shared memory computer system
CN101937401A (zh) * 2009-06-30 2011-01-05 英特尔公司 基于监听响应信息的目录高速缓存分配
CN102033817A (zh) * 2009-09-30 2011-04-27 英特尔公司 归属代理数据和存储器管理
CN102033715A (zh) * 2009-09-30 2011-04-27 英特尔公司 在本地代理的存储器镜像和迁移

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6598123B1 (en) 2000-06-28 2003-07-22 Intel Corporation Snoop filter line replacement for reduction of back invalidates in multi-node architectures
US6961827B2 (en) 2001-11-13 2005-11-01 Sun Microsystems, Inc. Victim invalidation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0818732A2 (en) * 1996-07-01 1998-01-14 Sun Microsystems, Inc. Hybrid memory access protocol in a distributed shared memory computer system
CN101937401A (zh) * 2009-06-30 2011-01-05 英特尔公司 基于监听响应信息的目录高速缓存分配
CN102033817A (zh) * 2009-09-30 2011-04-27 英特尔公司 归属代理数据和存储器管理
CN102033715A (zh) * 2009-09-30 2011-04-27 英特尔公司 在本地代理的存储器镜像和迁移

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341114A (zh) * 2016-04-29 2017-11-10 华为技术有限公司 一种目录管理的方法、节点控制器和系统
CN108170544A (zh) * 2017-12-29 2018-06-15 中国人民解放军国防科技大学 面向数据无冲突程序的共享数据动态更新方法
CN108170544B (zh) * 2017-12-29 2020-08-28 中国人民解放军国防科技大学 面向数据无冲突程序的共享数据动态更新方法
CN115203071A (zh) * 2021-04-14 2022-10-18 慧与发展有限责任合伙企业 默认共享状态缓存一致性协议的应用

Also Published As

Publication number Publication date
CN102521163B (zh) 2014-12-10
US9208100B2 (en) 2015-12-08
US20130151785A1 (en) 2013-06-13
EP2629206B1 (en) 2017-11-22
EP2629206A1 (en) 2013-08-21

Similar Documents

Publication Publication Date Title
CN102819497B (zh) 一种内存分配方法、装置及系统
JP6967959B2 (ja) メモリシステムおよび制御方法
CN102521163B (zh) 目录替换方法及设备
CN109684099B (zh) 消息处理方法及装置
TWI692722B (zh) 資訊處理裝置、藉由資訊處理裝置執行之方法及程式
CN101154190A (zh) 映射信息管理设备和方法
CN104866428A (zh) 数据存取方法和数据存取装置
CN103324533A (zh) 分布式数据处理方法、装置及系统
CN105144120A (zh) 基于存储器地址将来自高速缓存行的数据存储到主存储器
CN110727403B (zh) 元数据管理方法及装置
CN102971698A (zh) 快照数据处理方法及系统、存储系统、快照代理
US20190199794A1 (en) Efficient replication of changes to a byte-addressable persistent memory over a network
CN103984644A (zh) 一种数据管理方法及装置
US9063667B2 (en) Dynamic memory relocation
CN114827178A (zh) 一种数据处理方法、装置、设备及可读存储介质
CN104360953A (zh) 数据拷贝方法及装置
CN111475099A (zh) 一种数据存储方法、装置及其设备
EP3249539A1 (en) Method and device for accessing data visitor directory in multi-core system
CN102393838A (zh) 数据处理方法及装置、pci-e总线系统、服务器
CN105103139A (zh) 用于改善跨越相干总线的信号量管理序列的性能的方法和设备
CN114785662B (zh) 一种存储管理方法、装置、设备及机器可读存储介质
CN109508140B (zh) 存储资源管理方法、装置、电子设备及电子设备、系统
CN105068896A (zh) 基于raid备份的数据处理方法及装置
CN115576863A (zh) 一种数据读写方法、存储设备及存储介质
CN109254870B (zh) 数据备份的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220111

Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province

Patentee after: Super fusion Digital Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right