[发明专利]高速缓存替换策略的动态选择方法有效

专利信息
申请号: 200810057172.7 申请日: 2008-01-30
公开(公告)号: CN101236530A 公开(公告)日: 2008-08-06
发明(设计)人: 郑纬民;舒继武;薛巍;汪旸 申请(专利权)人: 清华大学
主分类号: G06F12/12 分类号: G06F12/12
代理公司: 暂无信息 代理人: 暂无信息
地址: 100084北*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 高速缓存 替换 策略 动态 选择 方法
【权利要求书】:

1.高速缓存替换策略的动态选择方法,其特征在于:所述方法是在高速缓存存储器系统内的一个数字集成电路上依次按以下步骤实现的:

步骤(1).初始化,设置以下模块:

高速缓存替换策略模块,高速缓存服务模块,访问记录采集器模块以及访问记录分析器模块,其中:

1)高速缓存替换策略模块,设立以下接口描述命中和替换时的逻辑:

a.初始化接口,为用户指定的或第一次运行时确定的或切换后的当前高速缓存策略模块分配内存,初始化数据结构;

b.释放用接口,释放即将被替换的高速缓存替换策略模块,包括释放数据结构和内存,供被替换的高速缓存替换策略模块卸载时用;

c.更新用接口,当高速缓存数据块被命中时,更新该块的优先级;

d.插入用接口,当插入新的高速缓存数据块时,设置该块的优先级;

e.替换用接口,取优先级最低的高速缓存数据块为被替换块时用;

所述高速缓存替换策略模块共有以下五种:最近被使用,双队列,多队列,自适应低负载和低最近相关度,各有一个固定的入口函数register,以便把自己的接口实现注册给所述高速缓存服务模块,

在所述各高速缓存替换策略模块中,处于运行状态的为当前高速缓存替换策略模块,其余则为候选高速缓存替换策略模块;

2)高速缓存服务模块,把包括磁盘在内的低速存储设备的数据缓存在内存中,当用户访问数据时直接进行内存访问,该高速缓存服务模块设有:高速缓存数据、高速缓存元数据以及哈希表,其中

a.高速缓存数据,是缓存好的磁盘数据,被分成多个固定大小的高速缓存块,块的大小为4KB,

b.高速缓存元数据,用于维护和管理所述高速缓存数据,其中包括:

1)所述每个高速缓存块的物理地址;

2)所述每个高速缓存块符号位用于标志该块是否已被写入磁盘;

3)一个最近被使用队列,用于记录所述高速缓存块的优先级顺序;

c.哈希表,以所述高速缓存块的地址作为关键字,对应的高速缓存元数据为数据,构成一个数据查找表,用于确定一个高速缓存数据块是否在所述高速缓存存储器中;

所述高速缓存服务模块依次按以下顺序实现高速缓存服务:

a.当用户访问数据时,该高速缓存服务模块首先根据其中数据给定的高速缓存块的地址查找哈希表;

b.若所述地址已在哈希表中,则高数缓存命中,通过更新用接口,调用所述当前高速缓存替换策略模块的命中功能,直接访问高速缓存,读出数据返回给用户;

c.若地址不存在于哈希表中,则为高速缓存缺失,判断高速缓存块是否已全部被占用:

若未全部被占用,则取出一个未占用的高速缓存块,通过所述插入用接口,调用所述当前高速缓存替换策略模块的插入功能,把数据调入所述未被占用的高速缓存块,

若高速缓存块已用完,则通过替换用接口,调用所述当前高速缓存替换策略模块的替换功能,找到一个在所述最近被使用列表中优先级最低的高速缓存块作被替换块,把数据读入替换出的高速缓存块,再返回给用户;

3)访问记录采集器模块,记录从所述高速缓存服务模块输入的访问信息,其中包括:磁盘号、访问地址和大小,先存储在内存缓冲区中,当存满时,把这些访问信息写入到磁盘文件中;

4)访问记录分析器模块,从所述访问记录采集器模块收到已采集到设定的n条访问记录的信息后,把各访问记录依次导入所述各候选高速缓存替换策略模块,记录所述各候选高速缓存替换策略模块的命中次数,取命中次数最多的候选高速缓存替换策略模块

为最优,把结果通知所述高速缓存服务模块;

步骤(2).依次按以下步骤执行高速缓存替换策略的动态选择方法:

步骤(2.1).初始化高速缓存服务模块:

分配和初始化所有高速缓存数据块;

分配和初始化所有的通用高速缓存数据块描述符,所述高速缓存数据块用于记录该高速缓存数据块的地址和符号位,“通用”两字是指各高速缓存替换策略模块都需用到的;

初始化哈希表和最近被使用队列;

步骤(2.2).当前高速缓存替换策略模块的初始化

步骤(2.2.1).确定一个高速缓存替换策略模块为当前高速缓存替换策略模块当由用户指定时,默认取上次运行结束时所用的模块;

当第一次运行时取所述最近被使用策略模块;

步骤(2.2.2).高速缓存服务模块调用所述register函数注册该当前高速缓存替换策略模块,再通过初始化接口初始化所述当前高速缓存替换策略模块;

步骤(2.3).再用户访问数据时,高速缓存服务模块按步骤(1)所述方法插入用户访问数据为高速缓存块;

步骤(2.4).访问记录采集器采集用户访问记录;

步骤(2.5).访问记录分析

当访问记录采集器采集到所述n条访问记录后,由访问记录分析器模块通过自己设定的一个虚拟的高速缓存服务模块来记录当访问记录依次访问各候选高速缓存替换策略模块时的记录命中次数,挑选命中次数最高的候选高速缓存替换策略模块为最优策略模块;

步骤(2.6).切换高速缓存替换策略模块,

首先高速缓存服务模块通过当前正处于运行状态的高速缓存替换策略模块的释放用接口释放策略元数据,所述策略元数据是指各高速缓存替换策略模块所特有的元数据;

然后,高速缓存服务模块通过访问记录命中次数最高的那个新的高速缓存替换策略模块的初始化接口分配新的策略元数据空间;

最后,高速缓存服务模块通过新的高速缓存替换策略模块的插入用接口把高速缓存中已有的高速缓存数据块依次导入新的高速缓存替换策略模块以重建新的策略元数据。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200810057172.7/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top