冲突小姐 v/s 强制小姐
Conflict Miss v/s Compulsory Miss
强制未命中发生在块第一次进入缓存时。
冲突缺失在集合关联或直接映射块放置策略的情况下,当多个块映射到同一集合时会发生冲突缺失。
考虑具有 4 个组和总共 8 个高速缓存块 (0 - 7) 的 2 路组相联高速缓存。主存储器有 64 个块 (0 - 63)。如果使用 LRU 策略进行替换且缓存最初为空,则以下内存块引用序列的冲突缓存未命中总数为:
0 5 9 13 7 0 15 25
我的疑问是,13 和 25 会导致仅强制未命中还是强制 & 冲突同时未命中?
您对 "conflict miss" 的定义有点无用。
当需要一个之前存在于缓存中的块时,会发生冲突未命中,但为了支持必须映射到同一插槽的另一个块而被逐出。
在您的示例中,对 13 和 25 的访问是唯一的,因此它们必然是首次访问。根据定义,它们不可能在首次使用前被驱逐。因此,它们是强制性失误。
当然,它们可能 导致 后续冲突未命中(和容量未命中)。
内存块引用 0,5,9,13,7,0,15,25
在 2 路组相联高速缓存内存与 4 组 -
0、5、9、13、7 将是强制性失误。
0命中。
15,25 将是强制失误。
第一次访问的任何块始终是强制性未命中。
可以参考
强制未命中发生在块第一次进入缓存时。
冲突缺失在集合关联或直接映射块放置策略的情况下,当多个块映射到同一集合时会发生冲突缺失。
考虑具有 4 个组和总共 8 个高速缓存块 (0 - 7) 的 2 路组相联高速缓存。主存储器有 64 个块 (0 - 63)。如果使用 LRU 策略进行替换且缓存最初为空,则以下内存块引用序列的冲突缓存未命中总数为: 0 5 9 13 7 0 15 25
我的疑问是,13 和 25 会导致仅强制未命中还是强制 & 冲突同时未命中?
您对 "conflict miss" 的定义有点无用。
当需要一个之前存在于缓存中的块时,会发生冲突未命中,但为了支持必须映射到同一插槽的另一个块而被逐出。
在您的示例中,对 13 和 25 的访问是唯一的,因此它们必然是首次访问。根据定义,它们不可能在首次使用前被驱逐。因此,它们是强制性失误。
当然,它们可能 导致 后续冲突未命中(和容量未命中)。
内存块引用 0,5,9,13,7,0,15,25
在 2 路组相联高速缓存内存与 4 组 -
0、5、9、13、7 将是强制性失误。
0命中。
15,25 将是强制失误。
第一次访问的任何块始终是强制性未命中。
可以参考