Re: [Gems-users] MOSI_SMP_bcast


Date: Tue, 18 Dec 2007 21:31:59 -0600
From: "Mike Marty" <mike.marty@xxxxxxxxx>
Subject: Re: [Gems-users] MOSI_SMP_bcast


Hi,
Looking at MOSI_SMP_bcast I was wondering how sequential consistency is
maintained in the protocol. Although the root switch orders the
requests, I have concerns regarding the delivery of requests. Since
paths to different processors may have different latencies (due to
contention), requests reach different processors at different time
(physical time). Will this not have implications in the consistency model ?

Nope.  Physical time is meaningless.  As long as messages from the root are ordered, we get sequential consistency in this protocol.  It is the appearance that matters.  A later store cannot become visible to some other processor because of the ordering at the root. 

Even in bus-based systems, a processor can buffer snoops and different processors may not actually carry out snoops in the same physical time.  As long as a processor processes all snoops before initiating a bus transaction, the appearance of SC is maintained.

These issues are covered in detail in Scheurik's PhD thesis. 

 

In general, Ordering Point protocols (like the in Coherence Ordering for
Ring-based CMPs) use an ordering point to order requests as well as well
explicit acks to complete the requests. I am curious as to how this
protocol manages to achieve consistency without the acks ?

Ordering-Point can actually work fine without the explicit Ack on a single ring, or multiple interleaved rings that are synchronous. 
[← Prev in Thread] Current Thread [Next in Thread→]