Yes, MOESI_CMP_directory does this optimization (or close to it) between
L1 caches. The L1 distinguishes between clean-M (state M) and dirty-M
(state MM).
However one shortcoming is that there is no M/MM distinction at the L2
cache. So once something is replaced from the L1->L2, the optimization
does not hold. You may want to change this.
--Mike
> I have a question regarding MOESI_CMP_directory:
>
> Does MOESI_CMP_directory protocol supports the Migratory Shared Data
> implementation from Alan L Cox and Robert J Fowler's Paper "Adaptive Cache
> Coherency for Detecting Migratory Shared Data", which adaptively chooses
> between replication on a read-miss using S2 (shared-2) state, or migration
> on a read-miss using Migratory-Clean(MC) and Migratory-Dirty (MD) states.
>
> a.) If not, then is their any other released protocol which supports the
> above implementation?
> b.) If it is supported then is it at the L1 level or at the L2 level?
> b.) What is the corresponding equivalent states to the Shared-2 state and
> the Migratory {Clean and Dirty} states meaning does the implementation
> follow the same semantics for cache state and transitions?
>
>
> -Thank You
> Nitin Bhardwaj
>
|