Previous | Next --- Slide 26 of 47
Back to Lecture Thumbnails
kayvonf

Question: What type of cache misses are incurred when iteration over elements moves to a new row. Cold, capacity, or conflict? (Why?)

funkysenior15

It's not a cold miss, because the cache has already been "warmed up". Cold misses occur only when the cache is accessed for the first time.

It is a capacity miss, because the block containing the new row elements were earlier present in the cache, but were evicted to make room for new blocks needed for program execution.

It isn't a conflict miss either, because even if we had a set associative cache, the miss wouldn't be caused by blocks being mapped to the same set. The miss would be caused by a full cache.

kayvonf

I've been waiting all semester to write "nice work @funkysenior15"!

aznshodan

just to make sure if I am understanding it correctly,

both capacity miss and conflict miss occur because value accessed has been evicted but for different reasons. Capacity miss occurs b/c a value accessed has been evicted to accommodate the new value which has the same set index as the old value but there wasn't enough room to store the new value.

conflict miss occurs b/c value accessed was evicted but it was because two values could not be stored at the same time. They share the same set index and because of that, even though there is enough room to accommodate both, they repeatedly load and evict each other, or thrashing.