[RFC] Event timers on sparc64/sun4v

Alexander Motin mav at FreeBSD.org
Tue Jul 20 11:11:28 UTC 2010


Marius Strobl wrote:
> On Mon, Jul 19, 2010 at 06:03:40PM +0300, Alexander Motin wrote:
>> There is indeed too small info about this. I've found that thing about
>> edge, you've noticed, also I've found that TICK clock is integer
>> multiply of STICK. Taking analogy to x86 I may assume that CPUs with
>> different frequencies still quite likely use same bus frequency (STICK),
>> or even sharing the same bus, while have different multipliers for core
>> (TICK) frequency.
>> It is indeed only an assumption, but it would be strange for CPU
>> designers to implement one more counter, which is not better then
>> already existing one.
> 
> My understanding is that the only advantage of the STICK counter
> over the TICK one is that the former is always driven by the same
> frequency across all CPUs in a system, regardless of the frequency
> the CPUs are running at (as needed in machines equipped with
> different CPU models or when down throttling).

It seems like question to platform, not CPU documentation. I may assume
(theoretically), that depending on chipset, CPUs may have: single bus
clock generator, several asynchronous generators with same frequency
(non-coherent) or event several generators with different frequencies.
First case is the best, second may require periodic synchronization to
avoid drift, third additionally requires some scaling. It would be nice
to play with some problematic system to find are things so bad or reason
is somewhere else. Unless it is documented somewhere.

-- 
Alexander Motin


More information about the freebsd-sparc64 mailing list