Memory Hierarchy

What is the main effect of a victim cache, a small fully associative buffer that temporarily holds lines evicted from the L1 cache?

  1. ALines reused right after eviction can be recovered quickly, reducing the cost of conflict misses
  2. BIt reduces capacity misses as much as enlarging the L1 cache would
  3. CIt eliminates compulsory misses and makes prefetching unnecessary
Show answer and explanation

Answer: A. Lines reused right after eviction can be recovered quickly, reducing the cost of conflict misses

In direct-mapped and similar caches, data competing for the same set evicts each other, and a just-evicted line is often needed again soon. A victim cache holds a few to a dozen or so evicted lines, so an L1 miss that finds the line there is served faster than from the next level. Being small, it does little for capacity misses, and it cannot help compulsory misses for data never loaded.

  • A. Correct. It rescues reuse right after eviction, cutting the cost of conflict misses.
  • B. It holds only a handful of lines, so its effect on capacity misses is small.
  • C. It cannot help data that was never loaded.
Practice this topic Back to topic

More Memory Hierarchy questions

  1. In a multilevel cache with an L2 below the L1, what is the L2's main role?
  2. Which describes an inclusive cache, where a lower level (such as L2) contains everything in the upper level (L1)?
  3. What changes when a cache is switched from direct-mapped to set-associative?
  4. In an 8-way set-associative cache, how many tags are compared in parallel on each access?
  5. In a cache with 64-byte lines and 64 sets, which set holds the data at address 0x1234?