Well, in theory if you have synchronized TSCs you can write the TSC to a local buffer, and then merge the buffers, generating sequence numbers only for the final log.
While the log merging thread does indeed need to synchronize, it doesn't add latency to the log writers, at the cost of multiplying the memory comsumption by the number of CPUs.
But this is an implementation detail, and isn't likely to be worth bothering since logging is supposed to be rare.
Posted Apr 14, 2012 15:08 UTC (Sat) by Ben_P (subscriber, #74247)
[Link]
Using the TSC seems like it would cause some serious issues if the id's need to increase with time. It is pretty common for some cores to get clocked down or completely turned off in the course of normal operation.
Toward more reliable logging
Posted Apr 17, 2012 5:25 UTC (Tue) by Jannes (subscriber, #80396)
[Link]
A modern TSC keeps counting, at the same constant rate.
Toward more reliable logging
Posted Apr 20, 2012 12:37 UTC (Fri) by jengelh (subscriber, #33263)
[Link]