cpufreq-info differs from /proc/cpuinfo?

I'm almost convinced it your BIOS is limiting your CPUs to 1.20 GHz. In the kernel there are two values:

  1. scaling_cur_freq which is the frequency that the cpufreq driver thinks it has requested. /proc/cpuinfo contains this value. It calls the cpufreq_quick_get() funciton.

  2. cpuinfo_cur_freq which is the frequency that is actually programmed into the CPU. cpufreq-info is using this value as indicated by "asserted by call to hardware." (It eventually calls __cpufreq_get().) It would fall back to scaling_cur_freq if cpuinfo_cur_freq wasn't available.

+1 about Matt's comments on mass BIOS update. E.g., HP Proliant DL class servers allow you to change the power regulation online. Perhaps your hardware has similar functionality.


BIOS changes are the best way to guarantee peak performance but some hardware controlled frequency scaling is inevitable(thermal throttling).

Here is a post from Intel about setting CPU Frequency. To a certain extent the CPU frequency can be controlled at the user and OS level. Here is some additional info from Arch Linux about frequency scaling that you might find valuable.

On the BIOS side a mass BIOS update of a group of servers could possibly be performed using an independent management interface such as a dedicated Intelligent Platform Management Interface(IPMI) NIC or a scriptable KVM system.