我知道 CPI 可以通过指令的时钟周期来计算。尽管我在这里陷入了僵局并且需要一些帮助。我试图找到处理器的平均 CPI,其中 25% 的指令需要 1 个周期来执行,45% 需要 2 个周期,15% 需要 3 个周期,10% 需要 4 个周期,5% 需要 5 个周期。感谢您的任何帮助或建议!
假设指令总数为
n
。
指令类型 | 消费物价指数 | 指令数 |
---|---|---|
A | 1 | 0.25 * n |
B | 2 | 0.45 * n |
C | 3 | 0.15 * n |
D | 4 | 0.10 * n |
E | 5 | 0.05 * n |
平均CPI =(总时钟周期)/(总指令数):
(0.25n * 1 + 0.45n * 2 + 0.15n * 3 + 0.10n * 4 + 0.05n * 5) / n
= (0.25 * 1 + 0.45 * 2 + 0.15 * 3 + 0.10 * 4 + 0.05 * 5)
在这一步,您可以看到平均 CPI 与指令总数无关
n
,因为您知道每种指令的比例。
因此您可以跳过上述所有步骤,直接计算平均 CPI,如下所示:
= (0.25 * 1 + 0.45 * 2 + 0.15 * 3 + 0.10 * 4 + 0.05 * 5)
0.25*1+0.45*2+0.15*3+0.1*4+0.05*5