Module 9: Addendum to Module 6: Shared Memory Multiprocessors
  Lecture 18: Sharing Patterns and Cache Coherence Protocols
 


MOSI Protocol

  • Some SMPs do not support the E state
    • In many cases it is not helpful, only complicates the protocol
    • MOSI allows a compact state encoding in 2 bits
    • Sun WildFire uses MOSI protocol

Hybrid inval+update

  • One possible hybrid protocol
    • Keep a counter per cache line and make Dragon update protocol the default
    • Every time the local processor accesses a cache line set its counter to some pre-defined threshold k
    • On each received update decrease the counter by one
    • When the counter reaches zero, the line is locally invalidated hoping that eventually the writer will switch to M state from Sm state when no sharers are left