[发明专利]一种改进的多核共享cache替换方法有效
申请号: | 201310055097.1 | 申请日: | 2013-02-20 |
公开(公告)号: | CN103150266A | 公开(公告)日: | 2013-06-12 |
发明(设计)人: | 方娟;李成艳 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 吴荫芳 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种改进的多核共享cache替换方法,主要分成三个阶段:初始化,替换策略,回溯。初始化是指平均划分cache列,保证每个核拥有属于自己的cache列;替换策略又细分为选择逐出单元,插入访问单元,提升优先级。其中选择逐出单元表示根据一定的原则,尽可能选择效益最小的单元替换出去;插入访问单元是将从内存取出的cache单元放置到cache组的合适位置;优先级提升,则是当cache单元命中时,提高cache单元的优先级,以利于下次利用局部性原理访问。本发明在cache划分的基础上,尽可能将部分当前使用的工作集保留在cache内,从而提高cache的命中率。 | ||
搜索关键词: | 一种 改进 多核 共享 cache 替换 方法 | ||
【主权项】:
一种改进的多核共享cache替换方法,其特征在于包含以下步骤:1)、初始化:1.1)初始化cache列划分信息表和路窃取信息表,以核为单位将cache列平均划分,保证每个核拥有自己的cache列,列划分信息表为矩阵IA×B,A表示核的个数,B表示能访问的所有cache列的个数,其中Iij为矩阵IA×B中第i行第j列的元素,Iij表示cache的第j列是否属于第i个核corei;路窃取信息表为矩阵LA×A,A表示核的个数,Lij为矩阵LA×A中第i行第j列的元素,Lij包含两类信息,其一为核corei是否窃取了核corej对应的cache的存储单元,其二为被窃取的核corej的存储单元对应的组号集合;1.2)当处理器核corei发出一个L2Cache的访问请求时,根据所要访问的地址确定地址所映射的Cache组q和corei的列划分信息表确定属于corei的cache存储单元集合,并在存储单元集合中判断是否命中,1.2.1)如果命中,存取cache存储单元,命中单元即为请求所要访问的单元,继续执行步骤3;1.2.2)如果未命中,判断核corei是否窃取了其他核的列;1.2.2.1)如果核corei窃取了核corem的列,根据路窃取信息表确定被窃取的核corem的存储单元对应的组号集合Q;并判断q是否属于Q;1.2.2.1.1)如果q属于Q,则搜索组q中核corem对应的存储单元;判断是否命中;1.2.2.1.1.1)如果命中,存取cache存储单元,继续执行步骤4;1.2.2.1.1.2)如果未命中,顺序执行步骤2;1.2.2.1.2)如果q不属于Q,顺序执行步骤2;1.2.2.2)如果核corei并未窃取其他核的列,顺序执行步骤2;2)、cache替换算法:(2.1)根据Cache组q对应的候选路信息Mq,核corei的列划分信息,以及核corei对应的cache路窃取信息选择逐出单元,所述的候选路Mq表示Cache组q中按访问频率升序排列中的前M个存储单元对应的Cache列号,选择逐 出单元的步骤如下:2.1.1)如果候选路信息Mq对应的存储单元存在属于corei的存储单元Ci,则Ci为逐出单元,继续执行步骤(2.2);否则顺序执行步骤2.1.2);2.1.2)根据路窃取信息表,判断corek是否窃取了核corei的存储单元;2.1.2.1)如果存在corek窃取了核corei的存储单元,判断窃取的是否是组q中的cache存储单元;2.1.2.1.1)如果是,将组q中所对应的存储单元选为逐出单元,更新路窃取信息表,继续执行步骤(2.2),2.1.2.1.2)如果不是,顺序执行步骤2.1.3)2.1.2.2)如果corek没有窃取核corei的存储单元,顺序执行步骤2.1.3);2.1.3)选择候选路信息Mq中访问频率最低的存储单元作为逐出单元,更新路窃取信息表,顺序执行步骤(2.2);(2.2)将要存取的数据块插入到cache组q中优先级为M的存储单元f中,更新存储单元f的访问频率信息,继续执行步骤4,其中用访问频率信息排列优先级;3)、提升优先级:当cache存储单元命中时,更新命中的cache存储单元的优先级,更新步骤如下:如果命中的存储单元属于候选路Mq,则将命中的存储单元的优先级提升为最近访问的列的优先级,继续下一步;如果命中的存储单元不属于候选路Mq,则将命中的cache存储单元的优先级提升一级继续下一步;4)、回溯阶段,程序运行时间t后,如果程序结束继续执行步骤5,否则,清除所有cache存储单元访问频率信息和路窃取信息表,并返回步骤1.2);5)、输出运行结果,分析缺失率,功耗,以及整体IPC,本步骤属于常规方法。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310055097.1/,转载请声明来源钻瓜专利网。