Re: [PATCH] improved boot time TSC synchronization

From: Jamie Lokier (
Date: Thu Jan 16 2003 - 20:00:45 EST

Jim Houston wrote:
> The patch currently prints the round-trip time and the max_delta.
> On a Quad P4 Xeon, I got round-trip times in the 0.7 microsecond
> range which is disappointing. The max_delta was almost always
> zero cycles meaning that the feedback loop thinks that the TSC values
> are perfectly synchronized.

Is it reasonable to repeat the test over a duration of 10^6 cycles (or
more) such that you could detect any drift after synchronisation, as
well as variation _during_ that time interval?

I'm thinking of those spread spectrum clocks, which I gather are done
by frequency modulating the clock. It may be possible to detect:

        (a) whether multiple CPUs with spread spectrum clocks are
            actually locked to each other, or if the modulation
            of each is independent

        (b) whether multiple CPUs are drifting w.r.t. each other
            because of independent clock sources

Although drift tends to be small, it should be possible to determine
"these clocks drifted by <1ppm during the test interval", which is a
pretty good indication of whether it is safe to use the TSC for
gettimeofday() or not.

-- Jamie

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

This archive was generated by hypermail 2b29 : Thu Jan 23 2003 - 22:00:14 EST