[Beowulf] ...Re: Benchmark results
James.P.Lux at jpl.nasa.gov
Wed Jan 7 16:53:21 EST 2004
>Here is my challenge to the Beowulf and MPI communities: Achieve
>microsecond-level *global* synchronization and tracking of all system
>clocks within a cluster, for application use via portable calls
>gettimeofday() and/or MPI_Wtime().
Is added hardware on each node legal along with distributing some periodic
time mark (like a 1 pulse per second from a GPS receiver)?
All you need is a free running counter which can be latched in an atomic
operation, driven from a clock of suitable speed (for submicrosecond
timing, the clock must be >1MHz), derived from the clock you wish to track.
There must be something suitable on the run of the mill PC these days. I
haven't looked in detail at this recently, but, on an original PC which
used an 8253 timer chip for a number of purposes, one could do this fairly
easily. Perhaps the generally unused "game port" on the mobo might work
One could certainly build a very inexpensive unit with a USB interface to
do what's needed. One of the inexpensive USB data acquisition pods could
probably do it, although Linux support seems to be a bit spotty on these,
and you'd need to cobble up an interface from the processor board clock to
I'm looking into seeing if the IrDA interface available on many mobos these
days might provide a convenient way to distribute the reference time marks
(optical, diffuse coupling)
With hardware that happened to support this kind of thing (i.e. a DSP with
a specialized peripheral interface chip that had UARTs, timers, etc. on
it), we were able to synchronize multiple processors and their associated
analog to digital converters by this technique to substantially better than
100 nanoseconds absolute.
James Lux, P.E.
Spacecraft Telecommunications Section
Jet Propulsion Laboratory, Mail Stop 161-213
4800 Oak Grove Drive
Pasadena CA 91109
Beowulf mailing list, Beowulf at beowulf.org
To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf
More information about the Beowulf