[ntp:questions] Clock jumps when refclock used

Dave Hart hart at ntp.org
Tue Apr 17 10:05:52 UTC 2012


On Mon, Apr 16, 2012 at 03:08, A C <agcarver+ntp at acarver.net> wrote:
> Also, using a default mindist makes the system more prone to just jumping
> randomly.  I did not have a clock jump with the mindist set to 0.001 for the
> many days that it was running.  However, today after I restarted to use a
> default mindist, my clock went crazy.  The servers were continually
> reachable so it wasn't a loss of the source time.

I suspect bad floating point results as the cause.  In looking at:

http://www.sparc.org/standards/V8.pdf

=========
The software must be capable of simulating the entire FPU to properly handle the
unimplemented_FPop, unfinished_FPop, and IEEE_754_exception
floating-point traps. Thus, a
user application program always “sees” an FSR that is fully compliant
with ANSI/IEEE Standard
754-1985.
=========

I'm not sure if that literally means the entire logic of the FPU
hardware must be simulated in the trap handlers, but in context it's
clear a lot of IEEE corner cases were partially handled in such
software by SPARCv8 designs.

It's just a hunch and I hope I'm wrong, but you might want to spend
some time torture-testing your floating-point capability to see if it
holds up.  I saw mention of a paranoia.c that might do the job on:

http://www.math.utah.edu/~beebe/software/ieee/

You can download the overall collection tarball to get paranoia.c
paranoia.h and a Makefile and try "make paranoia".  If it builds,
invoke ./paranoia and see if any problems are mentioned in the output.

> And the rawstats for that period (the failure occured near 5300 seconds
> according to loopstats):
> 56033  5152.783 169.229.70.201 10.0.0.21 3543528352.739929283
> 3543528352.764031522 3543528352.764062804 3543528352.780930586
> 56033  5209.835 64.73.32.134 10.0.0.21 3543528409.734505651
> 3543528409.787201881 3543528409.787210941 3543528409.832910031
> 56033  5368.802 130.207.165.28 10.0.0.21 3543528568.720955152
> 3543528568.771177725 3543528568.771267000 3543528568.799973991
> 56033  5378.830 131.144.4.10 10.0.0.21 3543528578.730018656
> 3543528578.780499937 3543528578.780506681 3543528578.827933375
> 56033  5389.767 69.64.72.238 10.0.0.21 3543528589.729599959
> 3543528589.754235978 3543528589.754279960 3543528589.764874756
>
> The matching loopstats:
> 56033  4865.842  0.005117423 -77.438  0.000384023  0.015663 8
> 56033  5380.827  0.002828855 -77.432  0.000885287  0.014776 8
> 56033  5909.823  0.005407926 -77.421  0.001231754  0.014326 8

I'm not seeing anything unusual around 5300 seconds in either file.
Please enlighten me.

Cheers,
Dave Hart


More information about the questions mailing list