[Gems-users] Ruby Question about MESI_CMP and implications of a Blocking Protocol


Date: Tue, 22 Mar 2011 17:54:39 -0400
From: Malek Musleh <malek.musleh@xxxxxxxxx>
Subject: [Gems-users] Ruby Question about MESI_CMP and implications of a Blocking Protocol
Hi,

1) I was wondering if the MESI_CMP protocol is currently implemented
as a 'blocking' protocol, similar to how the MOESI_CMP version is.


I see that on this link on the GEMS page that it indicates that the
MOESI_CMP one is blocking, but doesn't indicate anything about the
MESI_CMP version.

http://www.cs.wisc.edu/gems/doc/gems-wiki/moin.cgi/Protocols?action=fullsearch&context=180&value=blocking&titlesearch=Titles

In the MOESI_CMP Version there are coherenceResponseType Messages such
as 'Unblock' / 'Exclusive_Unblock' which seems to enforce the blocking
aspect, and I also see these types in the MESI version, but just
implementing them does not necessarily enforce blocking in all
possible situations.

2) What does the specific meaning of a 'blocking' protocol refer to?
As in, is the following example not possible:

For example, can Core 0 do a STORE X to L1 as L1 does a writeback of
Data: Y to L2?

I suspect no, that in a blocking Cache Coherence Protocol I cannot do
that, but just wanted to confirm.

Malek
[← Prev in Thread] Current Thread [Next in Thread→]