欢迎来到天天文库
浏览记录
ID:38304831
大小:666.31 KB
页数:19页
时间:2019-06-08
《让读失效优先于写》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、5.4.1让读失效优先于写5.4减少Cache失效开销1.Cache中的写缓冲器导致对存储器访问的复杂化2.解决问题的方法(读失效的处理)◆推迟对读失效的处理(缺点:读失效的开销增加,如50%)◆检查写缓冲器中的内容3.在写回法Cache中,也可采用写缓冲器第五章存储层次5.4.2子块放置技术1.为减少标识的位数,可采用增加块大小的方法,但这会增加失效开销,故应采用子块放置技术。2.子块放置技术:把Cache块进一步划分为更小的块(子块),并给每个子块赋予一位有效位,用于指明该子块中的数据是否有效。Cache与下一级存储器之间以子块为单位
2、传送数据。但标识仍以块为单位。3.举例(动画演示)5.4减少Cache失效开销5.4.3请求字处理技术1.请求字从下一级存储器调入Cache的块中,只有一个字是立即需要的。这个字称为请求字。2.应尽早把请求字发送给CPU◆尽早重启动:调块时,从块的起始位置开始读起。一旦请求字到达,就立即发送给CPU,让CPU继续执行。◆请求字优先:调块时,从请求字所在的位置读起。这样,第一个读出的字便是请求字。将之立即发送给CPU。5.4减少Cache失效开销3.这种技术在以下情况下效果不大:◆Cache块较小◆下一条指令正好访问同一Cache块的另一
3、部分5.4减少Cache失效开销5.4.4非阻塞Cache技术1.非阻塞Cache:Cache失效时仍允许CPU进行其它的命中访问。即允许“失效下命中”。2.进一步提高性能:“多重失效下命中”“失效下失效”(存储器必须能够处理多个失效)3.重叠失效个数对平均访问时间的影响5.4减少Cache失效开销非阻塞Cache平均存储器等待时间与阻塞Cache的比值12浮点程序76%51%6439%整数程序81%78%78%重叠失效个数5.4减少Cache失效开销对于图5.18所描述的Cache,在两路组相联和“一次失效下命中”这两种措施中,哪一种对浮
4、点程序更重要?对整数程序的情况如何?假设8KB数据Cache的平均失效率为:对于浮点程序,直接映象Cache为11.4%,两路组相联Cache为10.7%;对于整数程序,直接映象Cache为7.4%,两路组相联Cache为6.0%。并且假设平均存储器等待时间是失效率和失效开销的积,失效开销为16个时钟周期。例5.115.4减少Cache失效开销对于浮点程序,平均存储器等待时间为:失效率直接映象×失效开销=11.4%×16=1.82失效率两路组相联×失效开销=10.7%×16=1.711.71/1.82=0.94对于整数程序:失效率直接
5、映象×失效开销=7.4%×16=1.18失效率两路组相联×失效开销=6.0%×16=0.960.96/1.18=0.81解:5.4减少Cache失效开销5.4.5采用两级Cache1.应把Cache做得更快?还是更大?答案:二者兼顾,再增加一级Cache◆第一级Cache(L1)小而快◆第二级Cache(L2)容量大2.性能分析平均访问时间=命中时间L1+失效率L1×失效开销L1=命中时间L1+失效率L1×(命中时间L2+失效率L2×失效开销L2)5.4减少Cache失效开销3.局部失效率与全局失效率局部失效率=该级Cache的失效次数/到达该
6、级Cache的访问次数例如:上述式子中的失效率L2全局失效率=该级Cache的失效次数/CPU发出的访存的总次数全局失效率L2=失效率L1×失效率L2评价第二级Cache时,应使用全局失效率这个指标。5.4减少Cache失效开销例5.12假设在1000次访存中,第一级Cache失效40次,第二级Cache失效20次。试问:在这种情况下,该Cache系统的局部失效率和全局失效率各是多少?解第一级Cache的失效率(全局和局部)是40/1000,即4%;第二级Cache的局部失效率是20/40,即50%,第二级Cache的全局失效率是20/1000,
7、即2%。5.4减少Cache失效开销4.当第二级Cache比第一级Cache大得多时,两级Cache的全局失效率与容量和第二级Cache相同的单级Cache的失效率非常接近。5.第二级Cache的参数第二级Cache不会影响CPU的时钟频率,因此其设计有更大的考虑空间。两个问题:◆能否降低CPI中的平均访存时间部分?◆成本是多少?(1)容量第二级Cache的容量一般比第一级的大许多,如512KB。5.4减少Cache失效开销(2)相联度第二级Cache可采用较高的相联度或伪相联方法例5.13给出有关第二级Cache的以下数据:⑴两路组相联使
8、命中时间增加10%×CPU时钟周期⑵对于直接映象,命中时间L2=10个时钟周期⑶对于直接映象,局部失效率L2=25%⑷对于
此文档下载收益归作者所有