MIPS和CPI

Posted naturals

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MIPS和CPI相关的知识,希望对你有一定的参考价值。

1.MIPS(Million Instructions Per Second):单字长定点指令平均执行速度 Million Instructions Per Second的缩写,每秒处理的百万级的机器语言指令数。
存在的问题:
MIPS是指令执行的速率,规定了性能和执行时间成反比,越快的计算机具有越高的MIPS值。从表面看,MIPS既容易理解,又符合人的直觉。其实,用MIPS作为度量性能的指标存在三个问题。
首先,MIPS规定了指令执行的速率,但没有考虑指令的能力。我们没有办法用MIPS比较不同指令集的计算机,因为指令数肯定是不同的。
其次,在同一计算机上,不同的程序会有不同的MIPS,因而一台计算机不会只有一个MIPS值。例如,将执行时间用MIPS、CPI、时钟频率代入之后可得:
MIPS = 指令数/(执行时间 * 10^6) = 指令数 / (指令数 * CPI / 时钟频率 * 10^6) = 时钟频率 / (CPI * 10^6)
技术图片
上图显示了SPEC2006在Intel Core i7上的CPI最大值和最小值是相差5倍的,MIPS也是如此。
最后一点,也是最重要的一点,如果一个新程序执行的指令数更多,但每条指令的执行速度更快,则MIPS的变化是性能无关的。
 
2.CPI(Clock cycle Per Instruction)表示执行某个程序的指令平均时钟周期数,可以用来衡量计算机运行速度。
  CPI=TC/IC (IC[instruction counter]表示某个程序的所有指令的条数;TC表示执行某个程序所花费的时钟周期)
 
--------------------------------------------------------------------------------------------------来自百度百科

以上是关于MIPS和CPI的主要内容,如果未能解决你的问题,请参考以下文章

MIPS和CPI

mips是怎么运算的呀?

优化系列汇编优化技术:MIPS架构纯汇编优化及demo

ida调试mips架构程序boa

[转组第2天] | baby_mips和android xss的调研

MIPS汇编指令集