[Beowulf] precise synchronization of system clocks

Robert G. Brown rgb at phy.duke.edu
Tue Sep 30 10:57:08 PDT 2008


On Tue, 30 Sep 2008, Lawrence Stewart wrote:

> I don 't think this is all that hard - once we got the cycle counters 
> synchronized
> here at SiCortex, the rest of Linux behaves fairly well.
>
> The first trick is to get all the timer interrupts to happen at the same 
> time.  On
> our MIPS cores, this is easy by using an interrupt generated by a comparator
> against the cycle counter (architectural feature).  I would hope there is 
> something
> similar in x86.
>
> Once the timer interrupts are synchronized, pretty much all background tasks 
> become
> syncronized.  This even works for many device drivers that use the device 
> interrupt to
> schedule a tasklet or top half.
>
> The next step is gang scheduling of kernel threads, so that all the, say, 
> kswapd's system wide
> chose the same timer tick to wake up.
>
> The next step is gang scheduling of user threads, so that all the, say, cron 
> daemons
> wake up on the same timer tick.
>
> Our experience is that just aligning the timer interrupts helps a lot.

"At the same time" on what granularity?  Timer is 1 KHz, right?  So do
the timer interrupts have to be aligned to within a single clock tick, a
nsec, a usec?  A usec is still quite small compared to a msec.

   rgb

-- 
Robert G. Brown                            Phone(cell): 1-919-280-8443
Duke University Physics Dept, Box 90305
Durham, N.C. 27708-0305
Web: http://www.phy.duke.edu/~rgb
Book of Lilith Website: http://www.phy.duke.edu/~rgb/Lilith/Lilith.php
Lulu Bookstore: http://stores.lulu.com/store.php?fAcctID=877977



More information about the Beowulf mailing list