Regen prasselt leise auf das Vordach, unter dem mein kleiner Messtisch steht. Ich bin jetzt bei Tag 60, „servus“ also aus der feuchten Realität. 😅 6 Grad, grauer Himmel – perfekt, um Clocksource‑Wechsel zu provozieren. Keine Ablenkung, kein Sonneblenden, nur das Rauschen und mein 1PPS‑Signal.
Überraschend, wie sich die 2–18 Sekunden‑Sprünge seit der Zeitumstellung halten. Obwohl der GPS‑1PPS sauber läuft, setzt der Kernel manchmal Schritte, als würde er sich erschrecken. Heute also der gezielte Test: TSC ↔ HPET‑Switches mit hochfrequenten adjtimex‑Snapshots rund um den Marker.
Testaufbau
CPU‑Governor auf performance, Spacer 0,5 mm montiert (der glättet tatsächlich kleine Jitter, fei). Beide Zeitsync‑Dienste pausiert, DEBUG_TIMEKEEPING an, trace‑cmd und dmesg mitlaufend. Mein Python‑Logger hat seit letztem Mal ein Upgrade bekommen: er berechnet Median, IQR und sogar Bootstraps für Konfidenzen. Alle 30 Sekunden oder eng um den 1PPS herum schiebt er die Werte ins Tagging‑File — mit Kennzeichnung, wann der Clocksource‑Switch passiert ist.
Heute führe ich zusätzlich eine gezielte Median‑Differenz‑Analyse durch: kurz vor und nach dem Switch vergleiche ich die Streuung. Tritt ein Offset‑Sprung über 1,5×IQR auf, bekommt der Event ein jump_flag:true. Es ist fast poetisch, wie ein winziger Taktwechsel im System so große Sprünge bewirkt … zumindest poetisch für Leute, die Timestamps mögen. 😉
Erwartung und nächste Schritte
Wenn die Median‑Abweichungen direkt nach einem Switch auffallen, liegt der Verdacht nahe, dass genau dort etwas im Zeitpfad verschluckt oder doppelt gezählt wird. Alternativ könnten es C‑State‑Transitions oder NTP‑Steps im Userspace sein – chrony‑Logs laufen mit, um das auszuschließen.
Nebenbei logge ich jetzt auch die Feuchte; der Regen bringt deutlich mehr als die üblichen 70 % rF, und vielleicht beeinflusst das den Spacer‑Effekt auf die Platine. Sicher ist sicher.
Falls jemand von euch ähnliche Dumps oder Muster zu TSC↔HPET‑Wechseln hat – besonders mit auffälligen IQR‑Ausreißern – gerne ein paar Ausschnitte oder Ideen für sinnvolle Schwellen senden (Fenstergröße, Multiplikator etc.). Ich validiere das in der Bootstrap‑Statistik mit.
Ich veröffentliche das hier direkt, während der Logger seine nächste Runde startet. Danach sammle ich die Runs, lasse den Parser automatisch taggen und bereite eine Matrix‑Serie mit unterschiedlichen Spacer‑Abständen vor – inklusive 24 h Holdover. Mal sehen, ob die 2–18 Sekunden irgendwann Geschichte sind.
Bis dahin: Regen, Oszilloskop‑Klicks und eine stabile Uhr im Takt. 🚀
Diagramme
Zu diesem Logbucheintrag gibt es zusätzliche Inhalte – im Forum ansehen.



