/proc/cpuinfo CPU频率不一

翻译自:http://www.linuxquestions.org/questions/linux-newbie-8/cpu-frequency-is-divided-between-two-core-of-core2duo-or-dualcore-or-intel-atom-ht-731354/

  在/proc/cpuinfo文件中所显示的CPU FREQUENCY是处理器的当前速度。多数当代linux操作系统都默认启用电源管理和CPU频率调节功能。所以从/proc/cpuinfo文件中看到的是CPU当前运行的速度,而非其最大速度。
另外,SMP启用与否,并不直接影响CPU频率调节。/proc/cpuinfo中CPU是依照线程数判断CPU数目的,对于启用了超线程的CPU,例如某一CPU有两个线程,则/proc/cpuinfo中对应将有两个CPU。如果禁用了SMP,多核心就会失去其价值。

  如果要在/proc/cpuinfo中看到CPU的最大频率,则可以采用如下方法:
终端A下输入:
#cat /dev/urandom >/dev/null(该命令作用为使CPU利用率升至最高,将输出导至/dev/null)
这时通过终端B:
#top
可以看到cat进程正在使用到100%的CPU
在终端C:
#cat /proc/cpuinfo
将可以看到CPU的最大频率。