第 1 章习题 答 案5.若有两个基准测试程序P1 和 P2 在机器 M1 和 M2 上运行,假定 M1 和 M2 的价格分别是5000 元和 8000元,下表给出了P1 和 P2 在 M1 和 M2 上所花的时间和指令条数。程序M1 M2 指令条数执行时间 (ms) 指令条数执行时间 (ms) P1 200×10610000 150×1065000 P2 300×1033 420×1036 请回答下列问题:(1) 对于 P1,哪台机器的速度快?快多少?对于P2 呢?(2) 在 M1 上执行 P1 和 P2 的速度分别是多少MIPS ?在 M2 上的执行速度又各是多少?从执行速度来看,对于P2,哪台机器的速度快?快多少?(3) 假定 M1 和 M2 的时钟频率各是800MHz 和 1.2GHz,则在 M1 和 M2 上执行 P1 时的平均时钟周期数 CPI 各是多少?(4) 如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1 还是 M2 ?为什么?(提示:从性价比上考虑)(5) 如果另一个用户也需要购进大批机器,但该用户使用P1 和 P2一样多,主要关心的也是响应时间,那么,应该选择M1 还是 M2 ?为什么?参考答案:( 1) 对于 P1,M2 比 M1 快一倍;对于P2,M1 比 M2 快一倍。( 2) 对于 M1 ,P1 的速度为: 200M/10=20MIPS ;P2 为 300k/0.003=100MIPS 。对于 M2 ,P1 的速度为: 150M/5=30MIPS ;P2 为 420k/0.006=70MIPS 。从执行速度来看,对于P2,因为 100/70=1.43 倍,所以 M1 比 M2 快 0.43 倍。( 3) 在 M1 上执行 P1 时的平均时钟周期数CPI 为: 10×800M/(200×106)=40 。在 M2 上执行 P1 时的平均时钟周期数CPI 为: 5×1.2G/(150 ×106)=40 。( 4) 考虑运行 P1 时 M1 和 M2 的性价比,因为该用户主要关心系统的响应时间,所以性价比中的性能应考虑执行时间,其性能为执行时间的倒数。故性价比R 为:R=1/(执行时间 ×价格 ) R 越大说明性价比越高,也即,“执行时间 ×价格 ”的值越小,则性价比越高。因为 10×5000 > 5 ×8000,所以, M2 的性价比高。应选择M2 。( 5) P1和 P2 需要同等考虑,性能有多种方式:执行时间总和、算术平均、几何平均。若用算术平均方式,则:因为(10+0.003)/2 ×5000 > (5+0.006)/2×8000,所以 M2 的性价比高,应选择 M2 。若用几何平均方式,则:因为sqrt(10 ×0.003) ×5000 ...