如果FP操作的比例为25%,FP操作的平均CPI=4.0,其它指令的平均CPI为1.33。
其中FPSQR操作(浮点数平方根)的比例为2%, FPSQR的CPI为20。(FPSQR是FP的一种)
假设有两种设计方案,分别把FPSQR操作的CPI和所有FP操作的CPI减为2。试利用CPU性能公式比较这两种设计方案哪一个更好(只改变CPI而时钟频率和指令条数保持不变)。
既然需要比较CPU的性能,那么就需要找出比较CPU性能的指标。本题中最适合比较CPU性能的指标就是所有操作的平均CPI。
首先定性分析:既然FPSQR操作本身就是FP操作的一种,并且两种改进方案的CPI都是降为2,因此一定是改进FP所有操作比只改进FPSQR操作对性能提升的的效果更好。
接着定量分析。本题的核心在于计算出不同改进方案的平均CPI,那么只需要知道各部分操作所占的比例以及各自的平均CPI即可。
对于第一种方案(改进FP操作),已知其他指令的平均CPI和改进后FP操作的平均CPI,并且知道两者各自的比例,那么系统整体的CPI就可以求出。
对于第二种方案(改进FPSQR操作),已知FPSQR指令、除FPSQR之外的FP指令和其他指令的比例,还有FPSQR指令以及其他指令的平均CPI,缺少的是除了FPSQR指令外其他FP指令的平均CPI,因此本题需要首先求解出除了FPSQR指令外其他FP指令的平均CPI。
除了FPSQR指令外其他FP指令的平均CPI可以通过比例算出。
求出两种改进方案的整体CPI后,通过比较选择CPI较小的方案,本题即求解完成。
第一种方案:
系统整体CPI=0.75×1.33+0.25×2=1.5
第二种方案:
设除了FPSQR指令外其他FP指令的平均CPI为M,则有如下方程:
M×0.23+20×0.02=4×0.25
由此求解得M=4.174
系统整体CPI=1.33×0.75+4.174×0.23+2×0.02=2
由此可以判断,由于对全部FP操作进行改进后的系统CPI小于只对FPSQR操作进行改进后的系统CPI,因此第一种方案更好。
上一篇:Java标识符和关键字
下一篇:高斯分布的乘积与卷积