The invention discloses a level cache management method, based on group connected mapping of the Cache, including: when receiving CPU sent the request to visit, according to the access request address, to determine whether it is hit; if not hit, it will replace the priority location cache group address corresponding to the minimum in the cache line, and the tag data cache line is inserted into the pre bloom filter added in the cache group in tag; judge the address of data exists in the bloom filter; if tag data address exists in the bloom filter, the access request to the corresponding data into the highest priority cache group location. This application by adding bloom filter cache group in Cache, provides a reliable theoretical basis for the insertion of position data, effectively increasing the cache space utilization. In addition, a cache management system for the last stage is also disclosed.
【技术实现步骤摘要】
一种末级缓存管理方法及系统
本专利技术涉及缓存管理领域,特别涉及一种末级缓存管理方法及系统。
技术介绍
随着科学技术的进步,微处理器与存储器之间的性能差距越来越大。为了减缓处理器与存储器之间的性能差距,片上缓存被广泛使用。然而怎样利用缓存中的末级缓存(LastLevelCache,LLC)对系统的性能起着至关重要的作用。然而,这些缓存在使用传统的缓存管理策略时,空间资源的利用率会很低,其主要原因是因为缓存中的缓存污染(CachePollution)和缓存抖动(CacheThrashing)问题。目前已经有相关研究表明,改变数据块的插入位置可以提高末级缓存的性能,例如通过修改最近未被使用(LeastRecentlyUsed,LRU)的插入策略来减轻缓存污染或者是缓存抖动的问题,但是在使用双向插入策略(BimodalInsertionPolicy,BIP)修改LRU的插入策略的过程中,仅仅是依据概率来选择数据块的插入位置,通常是以1/64的概率将数据块插入到缓存组最高优先级的位置,其余插入到最低优先级的位置。显然,这种方法理论性不足,极易引起访问次数较多的数据块误判的情况,从而致使Cache的空间资源利用率不高,这也是在该
亟待解决的一个问题。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种末级缓存管理方法及系统,以提高缓存空间的利用率。其具体方案如下:一种末级缓存管理方法,应用于基于组相连映射的Cache,包括:当接收到CPU发送的访问请求时,根据所述访问请求的地址,判断是否被命中;若未被命中,则将所述地址对应的缓存组中优先级位置最低的缓存行进行替换 ...
【技术保护点】
一种末级缓存管理方法,其特征在于,应用于基于组相连映射的Cache,包括:当接收到CPU发送的访问请求时,根据所述访问请求的地址,判断是否被命中;若未被命中,则将所述地址对应的缓存组中优先级位置最低的缓存行进行替换,并将所述缓存行的tag数据插入到预先在所述缓存组中添加的布隆过滤器中;判断所述地址的tag数据是否存在于所述布隆过滤器当中;若所述地址的tag数据存在于所述布隆过滤器中,则将所述访问请求对应的数据插入到所述缓存组的最高优先级的位置中。
【技术特征摘要】
1.一种末级缓存管理方法,其特征在于,应用于基于组相连映射的Cache,包括:当接收到CPU发送的访问请求时,根据所述访问请求的地址,判断是否被命中;若未被命中,则将所述地址对应的缓存组中优先级位置最低的缓存行进行替换,并将所述缓存行的tag数据插入到预先在所述缓存组中添加的布隆过滤器中;判断所述地址的tag数据是否存在于所述布隆过滤器当中;若所述地址的tag数据存在于所述布隆过滤器中,则将所述访问请求对应的数据插入到所述缓存组的最高优先级的位置中。2.根据权利要求1所述的方法,其特征在于,还包括:若所述地址的tag数据不存在于所述布隆过滤器中,则将所述访问请求对应的数据插入到所述缓存组的任意位置中。3.根据权利要求1所述的方法,其特征在于,所述将所述地址对应的缓存组中优先级位置最低的缓存行进行替换的过程之后,还包括:判断预先在所述缓存组中添加的饱和计数器的当前计数值是否等于所述布隆过滤器的数据容量大小;若所述饱和计数器的当前计数值等于所述数据容量大小,则对所述布隆过滤器和所述饱和计数器进行复位操作;若所述饱和计数器的当前计数值小于所述布隆过滤器的数据容量大小,则对所述饱和计数器的当前计数值进行加1。4.根据权利要求3所述的方法,其特征在于,还包括:预先将所述布隆过滤器的数据容量大小设置为4W,并且,将所述布隆过滤器的位数组大小设置为6W;其中,W为所述缓存组的路数。5.根据权利要求1至4任一项所述的方法,其特征在于,还包括:预先在所述Cache的每个缓存组中均添加一个所述布隆过滤器和/或所述饱和计数器。6.一种末级缓存管理系统,其特征在于,应用于基于组相连映射的Cache,包括:命中判断模块,用于当接收到...
【专利技术属性】
技术研发人员:张德闪,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。