A Novel Directory-Based Non-Busy, Non-Blocking Cache Coherence Huang Yomgqin, Yuan Aidong, Li Jun, Hu Xiangdong 2009 International forum on computer Science-Technology and Application. ABSTRACT.
Huang Yomgqin, Yuan Aidong, Li Jun, Hu Xiangdong
2009 International forum on computer Science-Technology and Application
Indirection protocols, also called traditional 3-hop protocols, have been widely used in many systems.
The home node will forward the request from the local to the owner when it doesn’t have the newest data, and the forwarded request is serviced by the owner.
Figure 1. (a) Basic directory-based protocols
SGI Origin solves the conflict at the home node, as position A shown in Figure 1(b). When a request arrives at the home node, it sets the related block’s state to be active (we call it “busy”). All subsequent requests for that block are queued (at the home node or in the network) until the active request is deactivated. So directory busy state is necessary in SGI Origin.
Figure 1.(b): Different conflict solution positions.
NB2CC uses three virtual channels (VC0, VC1, and
VC2) to eliminate the possibility of protocol deadlocks
without resorting to NAKs/retries. The first channel (VC0)
carries all requests (RQ1) from a processor to the home
node. Messages from the home directory/memory (replies (ACK1) or forwarded messages (RQ2) to third party nodes or processors) are always carried on the second channel (VC1). The third channel (VC2) carries replies (ACK2) from a third-party node or processor to the requestor.