IPC 和 CPI 只是互为倒数吗?还是没那么简单?

从我所读到的内容来看,它们非常相似,很难看出它们是否只是彼此的倒数,或者它们是否有任何真正的差异。

编辑:很抱歉我没有澄清,但是是的,我的意思是每周期指令和每指令周期。

EDIT2:我想我找到了答案。它们不是简单的逆,它们是乘法逆,与正常逆有点不同。谢谢您的帮助。

最佳答案

每个时钟周期的指令数或,



执行每条指令所需的时钟周期数,



这两个指标给出相同的信息,选择使用哪个是 通常 基于哪个值大于数字 1

对于每周期可以执行多条指令的系统,每周期执行的指令数,或者经常使用IPC代替CPI

假设有一个循环,其中 80 条指令执行了 42 次,总共执行了 10,000 个周期来执行程序,因此,

执行的指令总数 = 80 x 42 = 3360

  • CPI = 10000/3360 = 2.97
  • IPC = 3360/10000 = 0.33

  • modern (intel)superscalar CPUs retire 4 instruction per cycle (IPC);so ideal CPI for modern processors = 1/4 = 0.25
    因此,通过比较理想和实际,您可以知道您的代码可能会停滞并且无法利用处理器内的计算资源!

    关于computer-science - IPC和CPI的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18742879/

    10-12 19:17