说出以下陈述是正确的:
声明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:错误
说明:
对L2的访问次数= L1中的未命中次数
处理器的引用总数=对L1的访问次数(因为L1高速缓存首先提供(尝试服务)处理器进行的所有内存引用.
因此对于L2缓存,
本地MR = L2中的未命中数/ L1中的未命中数
全局MR = L2中的未命中数/对L1的访问次数
因此,对于L2,本地MR!=全局MR
声明2:是的
说明:
对于L1缓存,
本地MR = L1中的未命中数/对L1的访问次数
全局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