3

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

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

编辑:对不起,我没有澄清,但是是的,我的意思是每周期指令和每指令周期。

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

4

1 回答 1

4

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

IPC = 运行程序时执行的指令数/执行程序所需的时钟周期数

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

CPI = 执行程序所需的时钟周期数/运行程序时执行的指令数

两个指标都提供相同的信息,并且通常根据哪个值大于数字 1来选择使用哪个

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

假设有一个循环执行了 42 次 80 条指令,执行程序总共需要 10,000 个循环,所以,

总执行指令 = 80 x 42 = 3360

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

现代(英特尔)超标量 CPU 每周期淘汰 4 条指令(IPC);现代处理器的理想 CPI = 1/4 = 0.25。因此,通过比较理想和实际,您可以知道您的代码可能会停止并且无法利用处理器内的计算资源!

于 2015-04-20T19:06:54.017 回答