A-A+
给定以下的假设 试计算直接映像Cache和2路组相联映像Cache的平均访问时间以及CPU的
问题详情
给定以下的假设,试计算直接映像Cache和2路组相联映像Cache的平均访问时间以及CPU的性能。由计算结果能得出什么结论? ①理想Cache情况下的CPI为2.0,时钟周期为2 ns,平均每条指令访存1.2次。 ②两者Cache容量均为64 KB,块大小都是32 B。 ③组相联映像Cache中的多路选择器使CPU的时钟周期增加了10%。 ④这两种Cache的失效开销都是80 ns。 ⑤命中时间为1个时钟周期。 ⑥64 KB直接映像Cache的失效率为1.4%,64 KB 2路组相联映像Cache的失效率为1.0%。
请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:×
平均访问时间=命中时间+失效率×失效开销平均访问时间1路=2.0+1.4%×80=3.12ns平均访问时间2路=2.0×(1+10%)+1.0%×80=3.0ns访问速度比=3.12/3=1.042路组相联映像的平均访问时间比较小。CPU时间=(CPU执行+存储等待周期)×时钟周期CPU时间=IC×(CPI执行+总失效次数/指令总数×失效开销)×时钟周期=IC[(CPI执行×时钟周期)+(每条指令的访存次数×失效率×失效开销×时钟周期)]CPU时间-1路=IC(2.0×2+1.2×0.014×80)=5.344ICCPU时间-2路=IC(2.2×2+1.2×0.01×80)=5.36IC相对性能比=CPU时间-2路/CPU时间-1路=5.36/5.344≈1.003直接映像Cache的访问速度比2路组相联映像Cache要快1.04倍,而2路组相联映像Cache的平均性能比直接映像Cache要高1.003倍。因此这里选择2路组相联映像。