Re: [Gems-users] Redundant states in MOESI_SMP_directory cache implementation


Date: Thu, 28 Aug 2008 10:41:44 -0500
From: "Mike Marty" <mike.marty@xxxxxxxxx>
Subject: Re: [Gems-users] Redundant states in MOESI_SMP_directory cache implementation

The distinction between the states really isn't necessary.  The difference between M and E is whether or not the data is dirty with respect to memory.  This is tracked by the Dirty bit.  If you look at the replacement logic, the Dirty bit is checked to determine whether or not the data should be sent on a replacement (replacement from the E state is non-silent).

Thus the protocol could have been written without the E state as you point out, because is would be equivalent to the M state with the dirty bit cleared.  Thus the E state is indeed redundant.

--Mike



On Thu, Aug 28, 2008 at 10:27 AM, Morten Sleth Rasmussen <msr@xxxxxxxxxx> wrote:
Hi,

I have been studying the MOESI protocol implementation for
MOESI_SMP_directory. It seems to me, that the "M" and "E" states in the
cache part of the implementation have exactly the same outgoing
transitions. They are even combined in the code. Furthermore, both
states can only be reached by a transition from state "IS", by to
different events "Exclusive_Data_Clean" and "Exclusive_Data_Dirty". But
both transitions causes the exact same actions.

I wonder why the implementation has both states, when it seems like they
could be merged into one. Am I missing something?

Best regards
Morten Rasmussen
_______________________________________________
Gems-users mailing list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users
Use Google to search the GEMS Users mailing list by adding "site:https://lists.cs.wisc.edu/archive/gems-users/" to your search.


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