Prefetching
Advanced Topics in Computer Architecture Timothy Jones
Prefetching Advanced Topics in Computer Architecture Timothy Jones - - PowerPoint PPT Presentation
Prefetching Advanced Topics in Computer Architecture Timothy Jones Caching Were all familiar Tag Index Offset with caching Tag Valid Data Caches store data close to the core Caches take . . . . advantage of locality .
Advanced Topics in Computer Architecture Timothy Jones
with caching
close to the core
advantage of locality
Tag Index Offset
. . .
Tag Valid Tag match and valid? Data
. . .
Select byte(s) Hit / miss
performance
access time (AMAT)
doing more harm than good!
AMAT = Cache hit time + Cache miss rate * Cache miss penalty
AMAT = Cache hit time + Cache miss rate * Cache miss penalty
Compulsory misses
the memory location being accessed has never existing in the cache
generates a compulsory miss . . .
Cache Main memory
Compulsory misses
the memory location being accessed has never existing in the cache
generates a compulsory miss . . .
Cache Main memory
Conflict misses
locations map to the same set, some blocks have to be evicted and reloaded; this generates conflict misses
direct-mapped and set- associative caches . . .
Cache Main memory
Conflict misses
locations map to the same set, some blocks have to be evicted and reloaded; this generates conflict misses
direct-mapped and set- associative caches . . .
Cache Main memory
Conflict misses
locations map to the same set, some blocks have to be evicted and reloaded; this generates conflict misses
direct-mapped and set- associative caches . . .
Cache Main memory
Capacity misses
in the cache to hold all the data required, some of it must be evicted and reloaded when next accessed
could not hold all of the data required at once
Cache Main memory
. . .
Capacity misses
in the cache to hold all the data required, some of it must be evicted and reloaded when next accessed
could not hold all of the data required at once
Cache Main memory
. . .
Capacity misses
in the cache to hold all the data required, some of it must be evicted and reloaded when next accessed
could not hold all of the data required at once
Cache Main memory
. . .
Coherence misses
protocol running then when one core attempts to write to some data, the protocol invalidates that address in another cache
cache is a coherence miss – this wouldn’t occur without the coherence protocol . . .
Cache 1
. . .
Cache 2
Coherence misses
protocol running then when one core attempts to write to some data, the protocol invalidates that address in another cache
cache is a coherence miss – this wouldn’t occur without the coherence protocol . . .
Cache 1
. . .
Cache 2
Invalidate
Coherence misses
protocol running then when one core attempts to write to some data, the protocol invalidates that address in another cache
cache is a coherence miss – this wouldn’t occur without the coherence protocol . . .
Cache 1
. . .
Cache 2
Coherence misses
protocol running then when one core attempts to write to some data, the protocol invalidates that address in another cache
cache is a coherence miss – this wouldn’t occur without the coherence protocol . . .
Cache 1
. . .
Cache 2
in the near future
relatively simple
patterns in the accesses made
prefetches based on it
Main memory
relatively simple
patterns in the accesses made
prefetches based on it
Main memory
Observe
relatively simple
patterns in the accesses made
prefetches based on it
Main memory
Observe Prefetch
might like to think about to judge each approach