课件Cache基本知识.PPT

上传人:本田雅阁 文档编号:2610885 上传时间:2019-04-17 格式:PPT 页数:46 大小:820.01KB
返回 下载 相关 举报
课件Cache基本知识.PPT_第1页
第1页 / 共46页
课件Cache基本知识.PPT_第2页
第2页 / 共46页
课件Cache基本知识.PPT_第3页
第3页 / 共46页
课件Cache基本知识.PPT_第4页
第4页 / 共46页
课件Cache基本知识.PPT_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《课件Cache基本知识.PPT》由会员分享,可在线阅读,更多相关《课件Cache基本知识.PPT(46页珍藏版)》请在三一文库上搜索。

1、5.2 Cache基本知识,1存储空间分割与地址计算,5.2.1 映象规则,1. 全相联映象 全相联:主存中的任一块可以被放置到 Cache中的任意一个位置。 举例 对比: 阅览室位置 随便坐 特点: 空间利用率最高,冲突概率最低, 实现最复杂。,2Cache和主存分块,5.2 Cache 基本知识,2. 直接映象, 直接映象:主存中的每一块只能被放置到 Cache中唯一的一个位置。 举例 (循环分配) 对比:阅览室位置 只有一个位置可 以坐 特点:空间利用率最低,冲突概率最高, 实现最简单。 对于主存的第i 块,若它映象到Cache的第 j 块,则: ji mod (M ) (M为Cache

2、的块数),5.2 Cache 基本知识, 组相联:主存中的每一块可以被放置到Cache 中唯一的一个组中的任何一个位置。 举例 组相联是直接映象和全相联的一种折衷, 设M2m,则当表示为二进制数时,j 实际 上就是i 的低m 位:,3. 组相联映象,m位,j,i:,5.2 Cache 基本知识, 上述的j 和k 通常称为索引, 组的选择常采用位选择算法 若主存第i 块映象到第k 组,则: ki mod(G) (G为Cache的组数) 设G2g,则当表示为二进制数时,k 实 际上就是i 的低 g 位:,g 位,k,i:,5.2 Cache 基本知识, 绝大多数计算机的Cache: n 4 想一想

3、:相联度一定是越大越好?, n 路组相联:每组中有n 个块(nM/G ) n 称为相联度。 相联度越高,Cache空间的利用率就越高, 块冲突概率就越低,失效率也就越低。,全相联,直接映象,组相联,n (路数),G (组数),M,M,1,1,1nM,1GM,5.2 Cache 基本知识,5.2.2 查找方法,1. 如何确定Cache中是否有所要访问的块? 若有的话如何确定其位置? 答案,5.2 Cache 基本知识, 目录表的结构, 只需查找候选位置所对应的目录表项, 并行查找与顺序查找, 提高性能的重要思想:主候选位置(MRU块) 前瞻执行, 并行查找的实现方法:,5.2 Cache 基本知

4、识,举例: 路组相联并行标识比较 (比较器的个数及位数),相联存储器 单体多字存储器比较器, 路组相联Cache的查找过程, 直接映象Cache的查找过程,5.2.3 替换算法,所要解决的问题:当新调入一块,而Cache 又已被占满时,替换哪一块?,2. FIFO 3. LRU 优点:失效率低 LRU和随机法的失效率的比较,1. 随机法 优点:实现简单,5.2 Cache 基本知识,5.2.4 写策略,1. “写”操作所占的比例 Load指令:26 Store指令:9 “写”在所有访存操作中所占的比例: 9/(100269)7 “写”在访问Cache操作中所占的比例: 9/(269)25,3“

5、写”访问有可能导致Cache和主存内容的不一致,2. “写”操作必须在确认是命中后才可进行,5.2 Cache 基本知识,4两种写策略 写直达法 执行“写”操作时,不仅写入Cache,而且 也写入下一级存储器。 写回法 执行“写”操作时,只写入Cache。仅当 Cache中相应的块被替换时,才写回主存。 (设置“污染位”),5.2 Cache 基本知识,5两种写策略的比较 写回法的优点:速度快,所使用的存储器频 带较低; 写直达法的优点:易于实现,一致性好。,6. 写缓冲器,8. 写策略与调块 写回法 按写分配 写直达法 不按写分配,7. “写”操作时的调块 按写分配(写时取) 写失效时,先把

6、所写单元所在的块调入 Cache,再行写入。 不按写分配(绕写法) 写失效时,直接写入下一级存储器而不调块。,5.2 Cache 基本知识,5.2.5 Cache的结构,例子:DEC的Alpha AXP21064中的内部数据 Cache。,1. 简介 容量:8KB 块大小:32B 块数:256 采用不按写分配 映象方法:直接映象 “写”策略:写直达 写缓冲器大小:4个块,5.2 Cache 基本知识,2. 结构图,3. 工作过程 “读”访问命中, “写”访问命中,5. 混合Cache与分离Cache (1) 优缺点 (2) 失效率的比较,5.2 Cache 基本知识, 失效情况下的操作,16

7、KB,容 量,1 KB,2 KB,4 KB,8 KB,32 KB,指令 Cache,3.06%,失 效 率 的 比 较,64 KB,128 KB,数据 Cache,混合 Cache,2.26%,1.78%,1.10%,0.64%,0.39%,0.15%,0.02%,24.61%,20.57%,15.94%,10.19%,6.47%,4.82%,3.77%,2.88%,13.34%,9.78%,7.24%,4.57%,2.87%,1.99%,1.36%,0.95%,(3) 分离Cache平均失效率的计算:,访问指令Cache的百分比指令Cache的失效率 访问数据Cache的百分比数据Cache

8、的失效率,5.2.6 Cache性能分析,2. 平均访问时间 平均访问时间命中时间失效率失效开销,1. 失效率,例5.1 假设Cache的命中时间为1个时钟周期,失效 开销为50 个时钟周期,在混合Cache中一次load 或store操作访问Cache的命中时间都要增加一个 时钟周期(因为混合Cache只有一个端口,无法同 时满足两个请求。按照前一章中有关流水线的术 语,混合Cache会导致结构冲突),根据表54所 列的失效率,试问指令Cache和数据Cache容量均 为16KB的分离Cache和容量为32KB的混合Cache相,5.2 Cache 基本知识,解: 如前所述,约75%的访存为

9、取指令。因此, 分离Cache的总体失效率为: (75%0.64%)(25%6.47%)2.10% 根据表54,容量为32KB的混合Cache的失 效率略低一些,只有1.99%.,比,哪种Cache的失效率更低?又假设采用写直达 策略,且有一个写缓冲器,并且忽略写缓冲器引 起的等待。请问上述两种情况下平均访存时间各 是多少?,5.2 Cache 基本知识,平均访存时间公式可以分为指令访问和数据 访问两部分: 平均访存时间指令所占的百分比 (指令命中时间指令失效率失效开销) 数据所占的百分比 (数据命中时间数据失效率失效开销) 所以,两种结构的平均访存时间分别为: 平均访存时间分离75%(10.

10、64%50) 25%(16.47%50) (75%1.32)(25%4.325) 0.9901.0592.05,5.2 Cache 基本知识,平均访存时间混合75%(11.99%50) 25%(111.99%50) (75%1.995)(25%2.995) 1.4960.7492.24,3. 程序执行时间 CPU时间(CPU执行周期数存储器停顿周期数) 时钟周期时间 其中, 存储器停顿周期数访存次数失效率 失效开销,5.2 Cache 基本知识,CPU时间ICCPIexe每条指令的平均存储 器停顿周期数时钟周期时间,CPU时间ICCPIexe访存次数/指令数 失效率失效开销时钟周期时间,5.2

11、 Cache 基本知识,例5.2 我们用一个和Alpha AXP类似的机器作为 第一个例子。假设Cache失效开销为50个时钟 周期,当不考虑存储器停顿时,所有指令的 执行时间都是2.0个时钟周期, Cache的失效 率为2%,平均每条指令访存1.33次。试分析 Cache对性能的影响。,考虑Cache的失效后,性能为: CPU 时间有cacheIC(2.0(1.332%50) 时钟周期时间 IC3.33时钟周期时间,CPU 时间IC(CPIexe ) 时钟周期时间,存储器停顿周期数,指令数,解:,5.2 Cache 基本知识,实际CPI :3.33 3.33/2.0 = 1.67(倍),CP

12、U时间也增加为原来的1.67倍。但若不采用Cache,则: CPI2.0+501.3368.5,5.2 Cache 基本知识,考虑两种不同组织结构的Cache:直接映象 Cache和两路组相联Cache,试问它们对CPU的性 能有何影响?先求平均访存时间,然后再计算 CPU性能。分析时请用以下假设: 理想Cache(命中率为100)情况下的CPI 为2.0,时钟周期为2ns,平均每条指令 访存1.3次。 两种Cache容量均为64KB,块大小都是32 字节。,例5.3,5.2 Cache 基本知识, 图5.10说明,在组相联Cache中,我们必须增 加一个多路选择器,用于根据标识匹配结果 从相

13、应组的块中选择所需的数据。因为CPU 的速度直接与Cache命中的速度紧密相关,所 以对于组相联Cache,由于多路选择器的存 在而使CPU的时钟周期增加到原来的1.10倍。 这两种结构Cache的失效开销都是70ns。在 实际应用中,应取整为整数个时钟周期。 命中时间为1个时钟周期,64KB直接映象 Cache的失效率为1.4%,相同容量的两路组 相联Cache的失效率为1.0%。,5.2 Cache 基本知识,由: 平均访存时间命中时间失效率失效开销 得: 平均访存时间1路2.0(0.01470)2.98ns 平均访存时间2路2.01.10(0.01070)2.90ns,由: CPU 时间

14、IC(CPIexe每条指令的平均存储器 停顿周期数)时钟周期时间 IC (CPIexe时钟周期时间 每条指令的平均存储器停顿时间),解:,5.2 Cache 基本知识,CPU时间1路IC(2.02(1.30.01470) 5.27IC CPU时间2路IC(2.021.10 (1.30.01070) 5.31IC,得:,5.31IC,CPU时间1路, 1.01,5.27IC,CPU时间2路,5.2 Cache 基本知识,平均访存时间命中时间失效率失效开销 可以从三个方面改进Cache的性能: (1) 降低失效率 (2) 减少失效开销 (3) 减少Cache命中时间 下面介绍15种Cache优化技术,5.2.7 改进Cache性能,5.2 Cache 基本知识,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1