A Summary (Cont.)


The Three Cs (Cont.)
The figures show how the miss rate divides into the three sources: compulsory, capacity, and conflict misses. These sources of misses can be directly attacked by changing some aspect of the cache design.

The following items are observed:
  • Compulsory misses are independent of cache size and are very small for long-running programs.
  • Capacity misses decrease as capacity increases.
  • Conflict misses decrease as associativity increases
The simplest way to reduce miss rate is to increase the block size. However, it increases the conflict misses if the cache size is small.



The challenge in designing memory hierarchies is that every change that potentially improves the miss rate can also negatively affect overall performance as shown in the following table:

Design Change Effect on Miss Rate Possible Negative Performance Effect
Increases cache size. Decreases capacity misses. May increase access time.
Increases associativity. Decreases miss rate due to conflict misses. May increase access time.
Increases block size. Decreases miss rate for a wide range of block sizes due to spatial locality Increases miss penalty. Very large block could increase miss rate.