aam*_*mir 1 cpu performance mips cpu-speed
我拥有四核 Core i5 笔记本电脑。我很想知道我的笔记本电脑执行一条简单的指令需要多长时间。所以,我做了 cat /proc/cpuinfo。下面是它的相关部分,
model name : Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
cpu MHz : 1200.000
Run Code Online (Sandbox Code Playgroud)
我想知道 cpu MHz 到底是什么意思?并且,是否可以从上述数据计算 MIPS。如果是,如何?
该值不会告诉您您想知道的任何内容。
首先,cpu MHz 值受制于可变时钟技术,其中 CPU 节流低负载以节省功率。例如,您的 CPU 被报告为以 1200 MHz (1.2 GHz) 而不是 2.6 GHz 运行。如果您cat /proc/cpuinfo在高负载期间这样做,它将显示更高的值。
其次,MHz 数本身并不能说明 CPU 执行代码的情况。现在几乎所有的 CPU 都是超标量的,这意味着如果可以的话,它们每个周期将执行多条指令。为此,以及其他原因,例如缓存和管道设计,您拥有的 CPU 类型与确切的时钟频率一样重要。
您问的是“我的笔记本电脑执行一条简单指令需要多长时间”。有一个值/proc/cpuinfo,表示近似值,即bogomips。该测试测量 CPU 每秒可以执行多少“简单指令”。该测试在一个内核上执行,因此理论上您可以将此数字乘以 CPU 的 4 以获得 CPU 的总数。
请注意,bogomips不是真实世界性能的基准。它测试了一个非常基本的功能,即 CPU 可以在一个循环中保持多长时间并且几乎什么都不做。然而,现实世界的性能可能更差(例如,如果 CPU 由于内存访问而停止)和更好(例如,当使用 SSE 和类似指令集运行计算时。)