Is the TSC timecounter safe on SMP system?
John Baldwin
jhb at FreeBSD.org
Fri Aug 13 13:32:10 PDT 2004
On Friday 13 August 2004 01:28 pm, Andrew Gallatin wrote:
> John Baldwin writes:
> > 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).
>
> But on a single CPU HTT machine, does each HTT core reads the same TSC?
I think they each have their own TSC.
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-current
mailing list