Академический Документы
Профессиональный Документы
Культура Документы
CACHE6-1
Early Restart:
u As soon as the requested word arrives, forward it to the
processor
u Miss penalty is now time to fetch the requested word
CACHE6-2
L1 cache
4 cycles
L2 cache
100 cycles
main memory
CACHE6-3
Sub-blocking
m
m
Complete Solution:
u
u
u
u
Use large blocks, but also divide blocks into smaller sub-blocks
Fetch only 1 sub-block on a miss
Keep valid bits for sub-blocks
Better if other sub-blocks are prefetched in the background (that is,
combine sub-blocking with early restart and critical word first)
block
valid bits
tag
sub-block
CACHE6-4
WTNA
1. Write to L1 cache, if block is there
2. Send write to next level in the memory hierarchy (may
percolate further down until either a WBWA cache or
main memory is reached)
CACHE6-5
u Cheaper solution
Do not check write buffer
Must always drain write buffer before requesting a
block from next level (whether or not there are
pending writes to the requested block)
CACHE6-6
L1 cache
WTNA policy
data
address
extract
block addr
read miss
block address
=?
=?
=?
=?
CACHE6-7
WBWA
u Write miss, like read miss, causes an allocation
u Stall processor until requested block is received, then
perform write to the block
CACHE6-8
Miss-under-miss
Write-miss-under-write-miss
CACHE6-9
CACHE6-10