Advanced Computer Architecture, Imperial College 2001
23
Berkeley protocol - summary
•Invalidate is usually better than update
•Cache line state “DIRTY” bit records whether remote copies exist
–If so, remote copies are invalidated by broadcasting message on bus – cache controllers snoop all traffic
•Where to get the up-to-date data from?
–Broadcast read miss request on the bus
–If this CPUs copy is DIRTY, it responds
–If no cache copies exist, main memory responds
–If several copies exist, the CPU which holds it in “SHARED-DIRTY” state responds
–If a SHARED-DIRTY cache line is displaced, … need a plan
•How well does it work?
–See extensive analysis in Hennessy and Patterson