In Beta 3 the coherence requires the use of the ownership protocol
because there was no support for the caches to snarf data.  The
solution would either be to add a snarf option to the L2 cache and
implement it, or make sure that you have a ownership protocol.

I assume the particular case that you are failing is: One cache has
the data in the modified state and then another cache does a read
request.  Both caches end up in the shared state and because the L2
cache does not snarf data , then the data in the L2 is stale.  If
another cache does a read request, without the ownership state, the L2
will respond with the stale data.


-Ron

On Dec 10, 2007 1:49 AM, Steve Reinhardt <[EMAIL PROTECTED]> wrote:
> If the pristine M5 code fails the memtest regression test, that's news
> to me.  Not sure what's really happening, but here are a couple of
> thoughts:
>
> - It's probably much better to use the beta4 release; the cache
> coherence code in particular has been substantially cleaned up.  Is
> there a particular reason you're using beta3 instead?
>
> - The caches don't do data snarfing in the normal case, so either your
> diagnosis is mistaken or you're using snarfing with a different
> meaning than how I define it.
>
> Steve
>
>
> On Dec 9, 2007 9:37 PM, Paul Cooper <[EMAIL PROTECTED]> wrote:
> >
> >
> >
> >
> > Hi,
> >
> >
> >
> > I am currently working with M5 to test out the possible benefits of a cache
> > coherence protocol that adds a conflicted state on top of the standard MESI
> > protocol.  To test the correctness of my change I ran the regression tests
> > and was unable to pass the memtest regression test.  Also I was unable to
> > get any of the splash benchmarks to complete.  After debugging my code I
> > eventually tried to run it on pristine M5 code using the MESI protocol and
> > was still unable to pass the memtest regression test or finish any of the
> > splash benchmarks (I am running in SE mode) as well.
> >
> >
> >
> > I think I have tracked down the issue to a problem with the L2 cache failing
> > to snarf bus responses when the cpus broadcast the data across the bus.  I
> > cannot completely confirm this but it currently explains all of the behavior
> > I see.  I was wondering if this issue has ever been identified before and if
> > you had any other suggestions.  Also I was wondering where the code for
> > snarfs by the L2 cache is as I was unable to track it down in the M5 code or
> > if there are other places I should look.
> >
> >
> >
> > Any help you could provide would be greatly appreciated and please let me
> > know if you have any questions or concerns.
> >
> >
> >
> > Thanks
> >
> > Paul Cooper
> > _______________________________________________
> > m5-users mailing list
> > m5-users@m5sim.org
> > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
> >
> _______________________________________________
> m5-users mailing list
> m5-users@m5sim.org
> http://m5sim.org/cgi-bin/mailman/listinfo/m5-users
>
_______________________________________________
m5-users mailing list
m5-users@m5sim.org
http://m5sim.org/cgi-bin/mailman/listinfo/m5-users

Reply via email to