hgm is a 566 MHz PC running NetBSD 3.0 and a recent ntp-dev.
glypnod is a 566 MHz PC running an old RH 7.2 with a Linux 2.4.16-NANO kernel and ntp 4.2.0@1.1161-r.
shuksan is a 2800 MHz PC running a vanilla Fedora Core 4 system using a Linux 2.6.14 kernel (no PPS support) and a recent ntp-dev.
All 3 machines are connected to a HP Z3801A. hgm and glypnod generally keep good time. shuksan doesn't have PPS support in the kernal so it doesn't do as well.
glypnod also watches several external servers. It got confused when some of them didn't do the leap-dance. I made things worse by trying to work around a non-existant bug by changing the config file and restarting ntpd.
hgm also watches glypnod. It did OK until glypnod got confused.
Here is a graph. The lines are offset slightly so they
don't overlap and hide eachother.
As documented, the Garmin 18-LVC transmitted a duplicate second at 00:00:00. The sample with a half second offset corresponds to hgm being half way through the flat second in the graph above. The GPSClock 200 had a duplicate second at 23:59:51. Raw data: Garmin, GPSClock 200.
Here is a graph. Note the X axis is gettimeofday time so a second
in the middle is scrunched together.
Here are the same graphs zoomed in:
The signal quality at that location is marginal. The blue ticks along the bottom are samples where the unit reported that it didn't have a good answer. The Garmin had 0.7% bad samples. The GPSClock 200 had 3.7% bad samples.
The origin was calibrated by eye.