On Sun, May 22, 2011 at 11:09:21AM -0600, Theo de Raadt wrote: > > is there an API or syscall to get a list of available cpu frequencies, > > that the CPU supports? > > No. > > Not all rate/power adjustments are done in terms of frequencies. Some > are done based on bus clock adjustment, or how the memory controller > works, or other tricks that are processor specific. > > Mapping those into a set of sequential numbers would be hard. The > relationships of those numbers do not translate into performance values > for all workloads evenly. > > We punted on that crazy problem and instead only supply a knob > choosing 0-100 percentage scale in the hw.setperf sysctl; different > machines then pick different methods of speed adjustment at different > points on the line, and if it is convenient for them they also report > the cpu clock rate in hw.cpuspeed (however as I have said, this value > is not the final story).
thank you for the detailed answer. i'll try to find a workaround: either probing hw.cpuspeed with different hw.setperf values, or monitoring hw.cpuspeed on demand.

