2.2 缓存性能的10种高级优化方法
- 存储器平均访问时间公式提供三种缓存优化度量:
- 命中时间、缺失率和缺失代价。
- 据最近的发展趋势,添加缓存带宽和功耗
- 根据这些度量,将10种高级缓存优化方法分5类
- (1)缩短命中时间。小而简单的第一级缓存和路预测。通常还能降低功耗。
- (2)增加缓存带宽。流水化缓存、多组缓存和无阻塞缓存。对功耗具有不确定影响。
- (3)降低缺失代价。关键字优化,合并写缓冲区。对功率的影响很小。
- (4)降低缺失率。编译器优化。缩短编译时间肯定可以降低功耗
- (5)并行降低缺失代价或缺失率。硬件预取和编译器预取。通常会增加功耗,因为提前取出了未用到的数据
- 采用这些技术时,硬件复杂度会增。
- 这些优化技术中有几种需采用高级编译器技术。
- 表2-1中总结这10种技术的实现复杂度和性能优势。
- 比较简单的优化方法仅作简介,而对其他技术将给出更多描述。
2.2.1 小而简单的第一级缓存,缩命中时间、降功率
- 提高时钟频率和降低功率都推动了对第一级缓存大小的限制。
- 与此类似,用较低级别的相联度,也可缩短命中时间、降低功率,不过这种权衡要比限制大小涉及的权衡
更复杂
- 缓存命中过程中的关键计时路径由3步骤:
- 用地址中的索引确定标记存储器的地址,将读取的标签值与地址比较。
- 接下来,如果为组相联缓存,则设置多路转换器选择正确的数据项。
- 直接映射的缓存可以将标记核对与数据传输重叠起来,有效缩命中时间。
- 此外,在采用低相联度时,由于减少了必须访问的缓存行,所以通常还可降功率。
- 新型微处理器中,片上缓存的总数已大幅增,但大容量L1缓存带来的时钟频率影响,所以L1大小最近涨幅很小,甚至没增。
- 选择相联度时的另一考虑因素是消除地址别名的可能性;稍后讨论。
- 用CAD工具,可在造芯片前判断各项选择对命中时间和功耗的影响。
- CACTI程序可在CMOS徽处理器上估算各种缓存结构的访问时间和能耗,详细程度在CAD中排前十。
- 对给定的最小工艺尺寸,CACTI估算在不同缓存大小、相联度、读写端口数目和更复杂参数条件下的缓存命中时间。
- 根据缓存大小的不同,对于模型建议的这些参数,直接映射的命中时间略快两路,两路是四路的1.2,四路是八路1.4。
- 当然,这些估计值受技术及缓存大小的影响。
来源:CSDN
作者:fgh431
链接:https://blog.csdn.net/zhoutianzi12/article/details/103524906