[LinuxPPS] Strange offset behavior

Hal V. Engel hvengel at astound.net
Tue Jun 16 22:23:23 CEST 2009


On Tuesday 16 June 2009 12:33:55 pm Andrew Hills wrote:
> > Are you using the convergence patch?
>
> Not unless it was included in LinuxPPS 2.2.0. (I know, I know.)

No this is not part of the LinuxPPS patch set.  And it only matters for 
kernels starting with 2.6.19 and later.

>
> > Did you build ntp so that it would be getting nanosecond times from the
> > system?
>
> I did not change anything specifically in the NTP build, so unless it
> was set by default in ntp-4.2.3p12, no.

Not an issue in this case since you are not using a nanokernel.

>
> > What counter is being used on these system for time keeping (EI. tsc,
> > HPET...)?
>
> I'm not sure. How do I find out?
>
> > What kernel version are you using?
>
> 2.6.17.6, unfortunately, in Fedora Core 5. If this convergence patch
> really has such a great effect, then I will make it a priority to update
> these old systems.

The older kernels converged faster then kernels starting with 2.6.19 and 
later.  The convergence patch is to make these newer kernels converge as fast 
as the older kernels.

>
> However, both systems are running the same kernel and NTP versions with
> the same builds and patches. Why would one system show so much more
> consistency?
>
> --Andrew Hills

The oscillators on these machines are free running quartz crystals with no 
temperature compensation or control.  The motherboard manufactures use the 
cheapest ones they can find since frequency stability is not a requirement 
like it would be in say a radio transmitter or receiver.   It is not uncommon 
for these oscillators to be as much as 100ppm off of the design point for the 
motherboard and these are typically off by 30ppm to 50ppm. 

These are made from a natural material and for these cheaper oscillators can 
vary significantly in their characteristics.  In addition the characteristics 
of the oscillator are dependent on how tight the manufacturing tolerances are.  
The angle of the cut through the crystal being the most critical. The main 
characteristic of concern for time keeping on a computer is the temperature 
vs. frequency characteristics.  An excellent crystal might have a slope in it 
operating temperature range of 0.1 ppm/degree C and a bad one might have a 
slope of 5 ppm/degree C and typical examples are in the 0.5 to 2.0 range.  The 
lower this slope is the easier it is for ntp and the kernel to keep the clock 
stable and offsets low. 

See 

http://www.ijs.si/time/temp-compensation/

and

http://www.ijs.si/time/#frequency-stability

for more information.

Hal



More information about the LinuxPPS mailing list