Re: Is the TSC timecounter safe on SMP system?

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Fri, 13 Aug 2004 13:26:16 -0400
On Friday 13 August 2004 12:49 pm, Andrew Gallatin wrote:
> I have a system where the TSC timecounter is quite a bit more accurate
> (or perhaps its just much cheaper) than the ACPI timecounter.  This is a
> single CPU, HTT system running an SMP kernel.
>
> A simple program which calls gettimeofday() in a tight loop, looking
> for the microseconds to change sees ~998,000 microsecond updates/sec
> with kern.timecounter.hardware=TSC, and 28,500 updates/sec with ACPI-safe.
>
> 1) Is it safe to switch to TSC?
>
> 2) If yes, would it be safe to switch to TSC if this was a real
>    SMP system with multiple physical cpus?

Probably not.  The problem is that the TSC is not necessarily in sync between 
the CPUs so time would "jump around" as you migrated between CPUs.  If you 
can get the TSC's synchronized between the CPUs and keep them that way then 
you can use the TSC (Linux does this FWIW).

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Fri Aug 13 2004 - 15:26:39 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:06 UTC