计算机组成原理是计算机科学与技术专业的一门重要课程,它主要研究计算机硬件和软件之间的关系以及计算机的基本原理和结构。在这门课程中,袁春风教授编写了一本教材《计算机组成原理》,并出版了面向该教材的课后习题答案。
这本教材由清华大学出版社出版,是该领域的经典教材之一。它可以帮助学生深入理解计算机组成原理的基本概念和原理,并通过习题来巩固知识,提高学生的学习效果。
其中,第一章的习题答案提供了一个问题,需要根据给出的数据进行计算和推理。问题是关于基准测试程序P1和P2在机器M1和M2上运行的速度和执行效率的比较。
给出的表格中提供了P1和P2在M1和M2上的指令条数和执行时间。根据这些数据,可以回答以下问题:
(1)对于P1,哪台机器的速度更快?根据表格中的数据可以得出,P1在M1上的执行时间为10000ms,在M2上的执行时间为5000ms,因此,P1在M2上的速度更快,速度提升了2倍。
对于P2,根据表格中的数据,P2在M1上的执行时间为3ms,在M2上的执行时间为6ms,因此,P2在M1上的速度更快,速度提升了2倍。
(2)在M1上执行P1的速度是多少MIPS?在M1上执行P2的速度是多少MIPS?根据给定的数据,P1的指令条数是200×106,在M1上的执行时间是10000ms,因此,P1在M1上的执行速度为200×106/10000ms=20000MIPS。
同样地,P2的指令条数是300×103,在M1上的执行时间是3ms,因此,P2在M1上的执行速度为300×103/3ms=100000MIPS。
在M2上执行P1的速度是多少MIPS?在M2上执行P2的速度是多少MIPS?根据给定的数据,P1的指令条数是150×106,在M2上的执行时间是5000ms,因此,P1在M2上的执行速度为150×106/5000ms=30000MIPS。
同样地,P2的指令条数是420×103,在M2上的执行时间是6ms,因此,P2在M2上的执行速度为420×103/6ms=70000MIPS。
从执行速度来看,对于P2,M1的速度更快,速度提升了2倍。
(3)假定M1和M2的时钟频率分别是800MHz和1.2GHz,则在M1和M2上执行P1时的平均时钟周期数是多少?通过给定的时钟频率和执行时间可以计算出平均时钟周期数。
在M1上执行P1时的平均时钟周期数 = 执行时间(ms) × 时钟频率(Hz) = 10000ms × 800MHz = 8 × 1013 个周期。
同样地,在M2上执行P1时的平均时钟周期数 = 执行时间(ms) × 时钟频率(Hz) = 5000ms × 1.2GHz = 6 × 1013 个周期。
(4)如果某个用户需要大量使用程序P1,并且该用户主要关心系统的响应时间而不是吞吐率,那么,该用户需要大批购进机器时,应该选择M1还是M2?为什么?从性价比上考虑。
考虑到用户关心的是系统的响应时间,而不是吞吐率,因此可以从性价比的角度来选择机器。
M1的价格是5000元,M1上执行P1的时间是10000ms,M2的价格是8000元,M2上执行P1的时间是5000ms。
根据执行时间和价格来计算性价比,可以得出M1的每ms性价比是5000元/10000ms=0.5元/ms,而M2的每ms性价比是8000元/5000ms=1.6元/ms。
因此,从性价比上考虑,如果用户关心的是系统的响应时间,而且程序P1的使用频率很高,那么用户应该选择M1,因为它具有更好的性价比。