简答题

降低Cache失效率有哪几种方法?(至少写出5种)(简述其基本思想。)

正确答案

常用的降低Cache失效率的方法有下面几种:
(1)增加Cache块大小。增加块大小利用了程序的空间局部性。
(2)增加Cache的容量。
(3)提高相联度,降低冲突失效。
(4)伪相联Cache,降低冲突失效。当对伪相联Cache进行访问时,首先是按与直接映象相同的方式进行访问。如果命中,则从相应的块中取出所访问的数据,送给CPU,访问结束。如果不命中,就将索引字段的最高位取反,然后按照新索引去寻找“伪相联组”中的对应块。如果这一块的标识匹配,则称发生了“伪命中”。否则,就访问下一级存储器。
(5)硬件预取技术。在处理器提出访问请求前预取指令和数据。
(6)由编译器控制的预取,硬件预取的替代方法,在编译时加入预取的指令,在数据被用到之前发出预取请求。
(7)编译器优化,通过对软件的优化来降低失效率。
(8)“牺牲”Cache。在Cache和其下一级存储器的数据通路之间增设一个全相联的小Cache,存放因冲突而被替换出去的那些块。每当发生不命中时,在访问下一级存储器之前,先检查“牺牲”Cache中是否含有所需的块。如果有,就将该块与Cache中某个块做交换,把所需的块从“牺牲”Cache调入Cache。

答案解析

相似试题
  • 降低Cache失效率有哪几种方法?简述其基本思想。

    简答题查看答案

  • 简述降低Cache失效率的几种方法。

    简答题查看答案

  • 通过编译器对程序优化来改进Cache性能的方法有哪几种?简述其基本思想。

    简答题查看答案

  • 为什么要进行Cache和主存的“映像”?有哪几种相联映像的方法?比较各自的利弊。

    简答题查看答案

  • 为什么要进行Cache和主存的“映像”?有哪几种相联映像的方法?比较各自的利弊。 

    简答题查看答案

  • Cache的替换算法有哪几种?分别做简要说明。

    简答题查看答案

  • 降低Cache失效率有哪些方法?

    简答题查看答案

  • 简述减小Cache失效开销的几种方法。

    简答题查看答案

  • 降低Cache失效率的措施有哪些?

    简答题查看答案