一种目录维护方法及装置制造方法及图纸

技术编号:15924986 阅读:34 留言:0更新日期:2017-08-04 15:03
本发明专利技术公开了一种目录维护方法及装置,所述方法包括:主存根据目录中缓存行与缓存的对应关系按照预先设定的频度向缓存行对应的每一个缓存发送侦听信息;所述缓存行对应的每一个缓存接收所述侦听信息,根据所述侦听信息发送侦听响应;所述主存接收所述侦听响应,根据所述侦听响应更新所述目录;所述侦听响应包括:发送所述侦听响应的缓存中的所述缓存行的状态。通过本发明专利技术公开的一种目录维护方法及装置,能够降低替换产生的侦听对处理器正常处理的影响,减少系统性能的下降。

Directory maintenance method and device

The invention discloses a directory maintenance method and device, the method includes: storage each cache information send the interception based on the corresponding relationship between the directory cache and cache line according to preset frequency corresponding to the cache line; the cache line corresponding to each cache receive the sensing information, according to the the interception of information transmitting interception response; the memory receives the listener response, updating the directory according to the monitored response; the listener response includes the cache cache line transmits the listener response in the state. The directory maintenance method and device disclosed by the invention can reduce the influence of the generated listening on the normal processing of the processor and reduce the performance degradation of the system.

【技术实现步骤摘要】
一种目录维护方法及装置
本专利技术涉及计算机
,尤其涉及一种目录维护方法及装置。
技术介绍
在多处理器系统中,每个处理器都有一或两级缓存(cache)。同一个数据的多个副本可能同时存于不同的缓存中。若处理器自由地修改的本地副本,则会导致不同处理器观察到的结果不一致。另外IO对主存的修改也可能引起不一致性问题。为了解决缓存一致性问题而引入了MESI协议。缓存中包括多个缓存行,在MESI中规定,每个缓存行中的数据有四种状态:M(Modified,修改)态、E(Exclusive,专有)态、S(Shared,共享)态、I(Invalid,无效)态,其中,M态是指该缓存行被修改,并仅存在与本缓存中;E态是指该缓存行与主存相同,并仅存在于本缓存中;S态是指该缓存行与主存相同,有可能也存在于其他缓存中;I态是指该缓存行无效,本缓存中无此数据。一般计算机系统的主存请求以一个缓存行为单位进行访问。当前的目录设计为每一个缓存行提供了一个目录项来记录远端节点占用该缓存行的信息。当前计算机系统的缓存一致性协议通常基于目录的一致性协议。主存与缓存之间采用包含策略,当主存的存储空间不够时就需要产生替换,将原有的一个目录条目进行无效侦听,然后将该条目回写或者丢弃。对于M态数据,因为整个系统的唯一副本在缓存中,当M态数据被替换时会产生回写命令,将数据写入缓存中,而对于E态或S态的数据,在缓存中并没有修改过,主存中也有相同的副本,如果被替换的是S态或E态数据,则按照协议要求丢弃或者产生驱除命令,将空间空出来存储新请求所需要的数据。目前不少系统采用了直接丢弃的策略,会导致主存的目录信息不准确。主存目录满之后也会导致替换。不论采用何种替换策略,都有可能将缓存正在使用的数据替换出去,从而影响整个系统的性能。主存的目录的存储空间都是有限的,仅存储缓存中存在过的数据。由于主存的目录信息不准确,主存存储了一些在缓存已经失效的内容,从而导致主存目录的空间浪费。当存储空间不够时,会发生替换。不论采用何种替换算法,被替换的缓存行总有可能是处理器内部正在使用的数据,当这个数据被替换时,就会打断处理器的正常工作,从而影响到系统性能。
技术实现思路
本专利技术实施例提供了一种目录维护方法,能够降低替换产生的侦听对处理器正常处理的影响,减少系统性能的下降。为了解决上述技术问题,本专利技术实施例公开了如下技术方案:第一方面,本专利技术提供了一种目录维护方法,所述方法包括:主存根据目录中缓存行与缓存的对应关系按照预先设定的频度向缓存行对应的每一个缓存发送侦听信息;所述缓存行对应的每一个缓存接收所述侦听信息,根据所述侦听信息发送侦听响应;所述主存接收所述侦听响应,根据所述侦听响应更新所述目录;所述侦听响应包括:发送所述侦听响应的缓存中的所述缓存行的状态。在第一方面的第一种可能的实现方式中,所述主存为下级缓存,所述缓存为上级缓存。结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述侦听响应更新所述目录,包括:根据接收到所述侦听响应更新所述目录中的所述缓存行对应的缓存中的所述缓存行的状态。结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述侦听响应更新所述目录,包括:当接收到的所述缓存行在所有侦听响应中的状态为无效态时,则所述主存删除所述目录中的所述缓存行的记录。结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述目录中缓存行与缓存的对应关系,包括:每一个缓存行对应至少一个缓存,所述至少一个缓存中的每一个缓存对应该缓存中的所述缓存行的状态。第二方面,本专利技术提供了一种目录维护装置,所述装置包括:主存,至少一个缓存;所述主存,用于根据目录中缓存行与缓存的对应关系按照预先设定的频度向缓存行对应的每一个缓存发送侦听信息,并接收缓存发来的侦听响应,根据所述侦听响应更新所述目录;所述缓存行对应的每一个缓存,用于接收主存发来的所述侦听信息,根据所述侦听信息发送侦听响应;所述侦听响应包括:发送所述侦听响应的缓存中的所述缓存行的状态。在第二方面的第一种可能的实现方式中,所述主存为下级缓存,所述缓存为上级缓存。结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述主存,用于根据接收到所述侦听响应更新所述目录中的所述缓存行对应的缓存中的所述缓存行的状态。结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述主存,用于当接收到的所述缓存行在所有侦听响应中的状态为无效态时,则所述主存删除所述目录中的所述缓存行的记录。结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述目录中缓存行与缓存的对应关系,包括:每一个缓存行对应至少一个缓存,所述至少一个缓存中的每一个缓存对应该缓存中的所述缓存行的状态。通过本专利技术实施例提供的一种目录维护方法及装置,主存接收所有缓存发来的侦听响应,根据该侦听响应中携带的缓存行的状态,更新对应的缓存行的状态,当缓存行的状态全部为无效时,主存删除对该缓存行的记录,能够为目录释放存储空间,减少了替换掉处理器正在使用的数据的发生条件,减少了由于目录导致的替换频度,能够降低替换产生的侦听对处理器正常处理的影响,减少系统性能的下降。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例1中的一种目录维护方法流程图;图2是本专利技术实施例2中的一种目录维护方法流程图;图3是本专利技术实施例3中的一种目录维护装置结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1:本专利技术实施例提供了一种目录维护方法,参见图1,所述方法包括:步骤101:主存根据目录中缓存行与缓存的对应关系按照预先设定的频度向缓存行对应的每一个缓存发送侦听信息;步骤102:所述缓存行对应的每一个缓存接收所述侦听信息,根据所述侦听信息发送侦听响应;步骤103:所述主存接收所述侦听响应,根据所述侦听响应更新所述目录;其中,所述侦听响应包括:发送所述侦听响应的缓存中的所述缓存行的状态。通过本专利技术实施例提供的一种目录维护方法,定期查询缓存中缓存行的状态,根据缓存的侦听响应来更新目录,能够使目录中信息实时更新,保持准确,能够降低当目录存储空间不够,发生替换时,替换掉处理器正在使用的数据的发生条件,减少了由于目录导致的替换频度,能够降低替换产生的侦听对处理器正常处理的影响,减少系统性能的下降。其中,所述主存可以为下级缓存,所述缓存可以为上级缓存。其中,缓存行与缓存的对应关系包括:每一个缓存行对应至少一个缓存,所述至少一个缓存中的每一个缓本文档来自技高网
...
一种目录维护方法及装置

【技术保护点】
一种目录维护方法,其特征在于,所述方法包括:主存根据目录中缓存行与缓存的对应关系按照预先设定的频度向缓存行对应的每一个缓存发送侦听信息;所述缓存行对应的每一个缓存接收所述侦听信息,根据所述侦听信息发送侦听响应;所述主存接收所述侦听响应,根据所述侦听响应更新所述目录;所述侦听响应包括:发送所述侦听响应的缓存中的所述缓存行的状态。

【技术特征摘要】
1.一种目录维护方法,其特征在于,所述方法包括:主存根据目录中缓存行与缓存的对应关系按照预先设定的频度向缓存行对应的每一个缓存发送侦听信息;所述缓存行对应的每一个缓存接收所述侦听信息,根据所述侦听信息发送侦听响应;所述主存接收所述侦听响应,根据所述侦听响应更新所述目录;所述侦听响应包括:发送所述侦听响应的缓存中的所述缓存行的状态。2.根据权利要求1所述的方法,其特征在于,所述主存为下级缓存,所述缓存为上级缓存。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述侦听响应更新所述目录,包括:根据接收到所述侦听响应更新所述目录中的所述缓存行对应的缓存中的所述缓存行的状态。4.根据权利要求1或2所述的方法,其特征在于,所述根据所述侦听响应更新所述目录,包括:当接收到的所述缓存行在所有侦听响应中的状态为无效态时,则所述主存删除所述目录中的所述缓存行的记录。5.根据权利要求1或2所述的方法,其特征在于,所述目录中缓存行与缓存的对应关系,包括:每一个缓存行对应至少一个缓存,所述至少一个缓存中的每一个缓存对应该缓存中的所述缓存行的状态...

【专利技术属性】
技术研发人员:贺成洪程永波兰可嘉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1