强制性失效Compulsorymiss当第一次访问一个块时该.ppt
《强制性失效Compulsorymiss当第一次访问一个块时该.ppt》由会员分享,可在线阅读,更多相关《强制性失效Compulsorymiss当第一次访问一个块时该.ppt(51页珍藏版)》请在三一办公上搜索。
1、(1)强制性失效(Compulsory miss)当第一次访问一个块时,该块不在 Cache中,需从下一级存储器中调入Cache,这就是强制性失效。(冷启动失效,首次访问失效。)(2)容量失效(Capacity miss)如果程序执行时所需的块不能全部调 入Cache中,则当某些块被替换后,若又,5.3 降低Cache失效率的方法,1.三种失效(3C),第五章 存储层次,重新被访问,就会发生失效。这种失效称 为容量失效。,(3)冲突失效(Conflict miss)在组相联或直接映象Cache中,若太多 的块映象到同一组(块)中,则会出现该组 中某个块被别的块替换(即使别的组或块有 空闲位置)
2、,然后又被重新访问的情况。这 就是发生了冲突失效。(碰撞失效,干扰失效),5.3 降低Cache 失效率的方法,2.三种失效所占的比例,(SPEC92)表5.5,5.3 降低Cache 失效率的方法,图示I(绝对值),图示(相对值),可以看出:(1)相联度越高,冲突失效就越少;(2)强制性失效和容量失效不受相联度的影响;(3)强制性失效不受Cache容量的影响,但容 量失效却随着容量的增加而减少;(4)表中的数据符合2:1的Cache经验规则,即 大小为N 的直接映象Cache的失效率约等于 大小为N/2 的两路组相联Cache的失效率。,强制性失效:增加块大小,预取(本身很少)容量失效:增加
3、容量(抖动现象)冲突失效:提高相联度(理想情况:全相联),3.减少三种失效的方法,4.许多降低失效率的方法会增加命中时间或 失效开销,5.3 降低Cache 失效率的方法,5.3.1 增加Cache块大小,1.失效率与块大小的关系(1)对于给定的Cache容量,当块大小增加 失效率开始是下降,后来反而上升了;(2)Cache容量越大,使失效率达到最低的 块大小就越大。,5.3 降低Cache 失效率的方法,2.增加块大小会增加失效开销,3.例题,例 5.4,假定存储系统在延迟40个时钟周期后,每2个时钟周期能送出16个字节。即:经过42个时钟周期,它可提供16个字节;经过44个时钟周期,可提供
4、32个字节;依此类推。试问对于表5-6中列出的各种容量的Cache,在块大小分别为多少时,平均访存时间最小?,解:解题过程 1KB、4KB、16KB Cache:块大小32字节 64KB、256KB Cache:块大小64字节,5.3 降低Cache 失效率的方法,5.3.2 提高相联度,1.采用相联度超过8的方法实际意义不大,2.2:1 Cache经验规则 容量为N 的直接映象Cache 容量为N/2的两路组相联Cache,3.提高相联度是以增加命中时间为代价 例如:TTL或ECL板级Cache,两路组相联:增加10 定制的CMOS Cache,两路组相联:增加2,5.3 降低Cache 失
5、效率的方法,4.例题,假定提高相联度会按下列比例增大处理器时钟周期:时钟周期2路 1.10时钟周期1路 时钟周期4路 1.12时钟周期1路 时钟周期8路 1.14时钟周期1路 假定命中时间为1个时钟,直接映象情况下失效开销为50个时钟周期,而且假设不必将失效开销取整。使用表55中的失效率,试问当Cache为多大时,以下不等式成立?,例 5.5,5.3 降低Cache 失效率的方法,平均访存时间8路 平均访存时间4路平均访存时间4路 平均访存时间2路平均访存时间2路 平均访存时间1路,解:,在各种相联度的情况下,平均访存时间分别为:平均访存时间8路=命中时间8路+失效率8路 失效开销8路=1.1
6、4失效率8路50 平均访存时间4路=1.12 失效率4路50 平均访存时间2路=1.10 失效率2路50 平均访存时间1路=1.00 失效率1路50,5.3 降低Cache 失效率的方法,在每种情况下的失效开销相同,都是50个时钟周期。把相应的失效率代入上式,即可得平均访存时间。例如,1KB的直接映象Cache的平均访存时间为:平均访存时间1路 1.00(0.13350)7.65 容量为128KB的8路组相联Cache的平均访存时间为:平均访存时间8路 1.14(0.00650)1.44,表5-8,5.3 降低Cache 失效率的方法,1.基本思想 在Cache和它从下一级存储器调数据 的通路
7、之间设置一个全相联的小Cache,用于存放被替换出去的块(称为Victim),以备重用。工作过程,5.3.3 Victim Cache,5.3 降低Cache 失效率的方法,对于减小冲突失效很有效,特别是对于小容量的直接映象数据Cache,作用尤其明显。例如,项数为4的Victim Cache:使4KB Cache的冲突失效减少20%90%,2.作用,5.3 降低Cache 失效率的方法,1.直接映象 vs组相联,5.3.4 伪相联Cache,2.伪相联Cache,优点,缺点,直接映象,组相联,命中时间小,命中时间大,失效率高,失效率低,取直接映象及组相联两者的优点:命中时间小,失效率低,5.
8、3 降低Cache 失效率的方法,(1)基本思想及工作原理(动画演示)在逻辑上把直接映象Cache的空间上下 平分为两个区。对于任何一次访问,伪相联 Cache先按直接映象Cache的方式去处理。若 命中,则其访问过程与直接映象Cache的情 况一样。若不命中,则再到另一区相应的位 置去查找。若找到,则发生了伪命中,否则 就只好访问下一级存储器。,(2)快速命中与慢速命中 要保证绝大多数命中都是快速命中。,5.3 降低Cache 失效率的方法,3.例题,例5.6 假设当在按直接映象找到的位置处没有发现匹配、而在另一个位置才找到数据(伪命中)需要2个额外的周期。仍用上个例子中的数据,问:当Cac
9、he容量分别为2KB和128KB时,直接映象、两路组相联和伪相联这三种组织结构中,哪一种速度最快?,5.3 降低Cache 失效率的方法,首先考虑标准的平均访存时间公式:平均访存时间伪相联 命中时间伪相联失效率伪相联失效开销伪相联由于:失效率伪相联失效率2路 命中时间伪相联命中时间1路伪命中率伪相联2;伪命中率伪相联命中率2路命中率1路(1失效率2路)(1失效率1路)失效率1路失效率2路,解:,5.3 降低Cache 失效率的方法,故:平均访存时间伪相联 命中时间1路(失效率1路失效率2路)2 失效率2路失效开销1路,将表55中的数据代入上面的公式,得:平均访存时间伪相联,2KB 1(0.09
10、80.076)2(0.07650)4.844 平均访存时间伪相联,128KB 1(0.0100.007)2(0.00750)1.356,5.3 降低Cache 失效率的方法,根据上一个例子中的表58,对于2KB Cache,可得:平均访存时间1路 5.90 个时钟 平均访存时间2路 4.90 个时钟对于128KB的Cache有,可得:平均访存时间1路 1.50 个时钟 平均访存时间2路 1.45 个时钟可见,对于这两种Cache容量,伪相联Cache都是速度最快的。,缺点:多种命中时间,5.3 降低Cache 失效率的方法,5.3.5 硬件预取技术,1.指令和数据都可以预取,2.预取内容既可放
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 强制性 失效 Compulsorymiss 第一次 访问 一个
链接地址:https://www.31ppt.com/p-5407121.html