本地错过率是否等于缓存系统最低级别的全局错失率?

时间:2015-12-11 02:50:09

标签: caching

说出以下陈述是否正确:

声明1: L2缓存的全局丢失率与L2缓存的本地丢失率相同。由于对于访问L2的内存引用,错过L1和L2相当于丢失L2,因为因为尝试访问L2而已经错过了L1(对于2个分层缓存的系统 - L1和L2)

声明2: L1缓存的全局丢失率与L1缓存的本地丢失率相同(对于2个分层缓存的系统 - L1和L2)

声明3: Ln缓存的全局丢失率与Ln缓存的本地丢失率相同(对于2个分层缓存的系统 - L1,L2,L3,... ,Ln)

1 个答案:

答案 0 :(得分:6)

让我尽可能清楚地回答这个问题。

本地错失率 =此缓存中的未命中数/此缓存的引用数

全局错失率 =此缓存中的未命中数/处理器的引用总数

声明1:错误

说明:

  1. 没有。访问L2 = L1中的未命中数

  2. 处理器的引用总数=对L1的访问次数 (由于处理器所做的所有内存引用都是由L1缓存首次提供(试图提供)。

  3. 因此对于L2缓存,

    本地MR = L2中未命中数/ L1中未命中数

    全局MR = L2中的未命中数/对L1的访问次数

    因此,对于L2,本地MR!=全球MR

    声明2:正确

    说明:

    对于L1缓存,

    本地MR = L1中的未命中数/对L1的访问次数

    Global MR = L1中的未命中数/处理器的引用总数

    处理器的引用总数=对L1的访问次数(因为L1缓存首先提供(尝试提供)处理器所做的所有内存引用。

    因此,对于L1,本地MR =全局MR

    声明3:错误,更正 - 对于具有n个分层缓存的系统L1,L2,...,Ln

    说明:

    此声明类似于声明1.这意味着对于2级系统中的L2,3级系统中的L3,4级系统中的L4等等...

    我们在声明1中证明了对于2级系统中的L2是错误的。其余部分也有相同的解释。

    因此,对于n级分层系统中的Ln,Local MR!= Global MR