Erwartung: Bei synchronen TSC auf allen CPUs darf es nicht vorkommen, dass der Kosument eine kleinere Zeit liest, als der Produzent gesendet hat.
Sollte diese Erwartung nicht erfüllt sein, wird ein '#' auf stderr geschrieben.
Anschaulich kann man sich das als "Pseudo-Wurmloch" im simulierten Universum vorstellen, das kausale Ereignisse aus der Zukunft in der Vergangenheit eintreffen!
(Nebenbei dient dieses als Beispiel, wie man die direkte pthread-API sowie die Scheduler-CPU-Affinity-Aufrufe ohne Wrapper verwendet.)
Download tscana.tgz, Unterverzeichnis synctest
Es gibt Läufe von tscsynctest, bei denen die Erwartung nicht erfüllt ist ! (Andererseits ist die Erwartung auch oft erfüllt.)
Dies ist durchaus erstaunlich, da zusätzlich noch Effekte der Virtualisierung hinzukommen, so könnte ja zwei virtuelle CPUs vom selben physikalischen Prozessor realisiert sein könnten und die TSC Uhr trotzdem geteilt wird.