x86: how to get maximum possible CPU frequency ?

Kostik Belousov kostikbel at gmail.com
Sun Oct 30 17:10:23 UTC 2011


Assume we are running on the single-package X86 machine, how to answer
the question: what is the possible maximum tsc frequency ?

I read tsc_levels_changed(), is it the right way to query the max
frequency for the general purpose driver ? If yes, could the code be
made into the utility function ?

BTW, there is some usage of the barriers in sysctl_machdep_tsc_freq()
that I do not understand. When the read from tsc_freq is performed
with the acquire semantic ? Why there are two store barriers when
tsc_freq and tsc_timecounter.tc_frequency are written ? I would think
that a single barrier on the last write is enough, but is it needed
at all ?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20111030/a49efaf2/attachment.pgp


More information about the freebsd-current mailing list