/proc/cpuinfo 中的 cpu MHz 是什么意思?

/proc/cpuinfo 中的 cpu MHz 是什么意思?

我有一台四核 Core i5 笔记本电脑。我很好奇我的笔记本电脑执行一条简单指令需要多长时间。因此,我执行了 cat /proc/cpuinfo。下面是其中的相关部分,

model name  : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
cpu MHz     : 1200.000

我想知道 CPU MHz 到底代表什么?是否可以从上述数据计算出 MIPS?如果可以,如何计算?

答案1

该值并未告诉您任何您想知道的信息。

首先,CPU MHz 值受可变时钟技术影响,即 CPU 在低负载时节流以节省电量。例如,报告显示您的 CPU 运行在 1200 MHz(1.2 GHz)而不是 2.6 GHz。如果您cat /proc/cpuinfo在高负载期间运行,则会显示更高的值。

其次,MHz 数本身并不能说明 CPU 执行代码的性能。当今几乎所有 CPU 都是超标量的,这意味着如果可以的话,它们每个周期将执行多条指令。出于这个原因以及其他原因(如缓存和流水线设计),CPU 的类型与确切的时钟频率同样重要。

您问的是“我的笔记本电脑执行一条简单指令需要多长时间”。 中有一个值,/proc/cpuinfo其含义大致如此,即bogomips。此测试测量 CPU 每秒可以执行多少条“简单指令”。测试在一个核心上执行,因此理论上您可以将这个数字乘以 4 以获得 CPU 的总数。

请注意 bogomips并不是真实世界性能的基准。它测试一个非常基本的功能,即 CPU 能否在循环中停留并几乎不执行任何操作。然而,现实世界的性能可能更差(例如,如果 CPU 因内存访问而停滞),也可能更好(例如,在使用 SSE 和类似指令集运行计算时)。

相关内容