[ntp:questions] TSC, default precision, FreeBSD

Danny Mayer mayer at ntp.org
Wed Sep 2 02:35:53 UTC 2009


Janusz U. wrote:
> Hello.
> 
> I am trying to understand changes between NTP 4.1.1 and 4.1.1/4.2.0
> versions.
> When we use FreeBSD6 and NTP 4.1.1 (eg. NIST) we will get higher

Where does NIST come in here?

> precision which here is calculated from TSC frequency. But for new NTP
> the precision will be lower (calculated from "call/jumps" time). I can
> see some redefinition of the default precision meaning.
> 

I suspect that this may be due to the fact that on a multiprocessor the
TSC which is on each processor are unsynchronized with each other and
therefore you will get different results when you call gettimeofday()
depending on which processor you are one when making the request. There
are various methods that can be use to resynchronize them or require
that only one be used when setting or reading the clock. I suspect that
attempts where made to address this but I cannot be sure since I was not
involved at the time. Dave Mills would know for sure.

> NTP - Network time protocol Changeset details for 1.706.1.10
> http://ntp.bkbits.net:8080/ntp-dev/?PAGE=gnupatch&REV=1.706.1.10
> 
> --- 1.99.1.1/ntpd/ntp_proto.c 2001-09-20 13:09:36 -07:00
> +++ 1.99.1.2/ntpd/ntp_proto.c 2001-10-08 19:36:19 -07:00
> 
> http://ntp.bkbits.net:8080/ntp-dev/ntpd/ntp_proto.c?PAGE=diffs&REV=3bc262a3RdhnVfTzQgIi8IXLNzMIIA
> 
> Was it caused by SMP vs TSC appearing? Why was FreeBSD focused only?
> Random/noise for get_systime() / clock_gettime() appeared 4-5 years
> later so it seems not related to the default precision exactly.
> 

Most likely issues related to multiprocessors but this code is 8 years
old so it is hard to know.

Danny

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.




More information about the questions mailing list