问答题(1999年清华大学)

某工作站采用时钟频率为15MHz、处理速率为10MIPS的处理机来执行一个已知混合程序。假定每次存储器存取为1周期延迟,试问:

① 此计算机的有效CPI是多少?

② 假定将处理机的时钟提高到30MHz,但存储器子系统速率不变,这样,每次存储器存取需要两个时钟周期。如果30%的指令每条只需要一次存储器存取,而另外的 5%每条需要两次存储存取,还假定已知混合程序的指令数不变,并与原工作站兼容,试求改进后的处理机性能。

答案解析

① 由MIPS=f/(CPI×106),得:CPI=f/(MIPS×106 ) = (15×106)/(10×106)=1.5.② 假设总的指令条数为n,则在时钟频率提高之前有:程序执行时间为:CPI×n×T=1.5nT访问存储器的时间为:30%×n×1×T + 5%×n×2×T = 0.4nT∴指令的CPU时间:1.5nT - 0.4nT = 1.1nT...

查看完整答案

讨论

通常,以科学计算为主的计算机,对【 】要求较高。

下列存储器中,汇编语言程序员可见的是【 】。

用一台40MHz的处理机执行标准测试程序,它包含的混合指令数和响应所需要的时钟周期为:算术逻辑指令:CPI为1,占比60%高速缓存命中的加载与存储:CPI为2,占比18%转移指令:CPI为4,占比12%调整缓存缺失的存储访问:CPI为8,占比10%。求有效CPI、MIPS速率和程序的执行时间。

假设我们有一个需要运行100秒的标准程序,其中有90秒是CPU时间,剩下的是I/O占用的时间。如果在以后的5年中,CPU 速度每年可以提高 50%且 I/0时间保持不变,那么5年后我们的程序要耗费多少时间。

假定我们正在考虑两种条件转移指令的设计方法,这两种方法如下:CPU A:先通过一条比较指令设置条件码A,再用一条分支指令检测条件码;CPU B:比较操作包含在分支指令中。在两种CPU中,条件转移指令都需要两个时钟周期,所有其他指令都需要一个时钟周期。在CPU A中,全部指令的20%是条件转移指令,因为每次条件转移都需要一次比较,所以比较指令约占所有指令的20%。如果CPU A的时钟频率是 CPU B的1.25倍,问哪一种CPU更快?如果CPU A的时钟频率只是CPU B的1.1倍,结果又是多少?

某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的20倍,而系统运行一个程序的整体性能提高到原来的5倍,试计算该程序中浮点操作所占用的比例。

若机器M的主频为1.5Ghz,在M上执行程序P的指令条数为5×105,P的平均CPI为1.2,则P在M上的指令执行速度和用户CPU时间分别为【 】。

某台计算机只有Load/Store指令能对存储器进行读/写操作,其他指令只对寄存器进行操作。根据程序跟踪实验结果,已知每种指令所占比例及CPI为:逻辑指令:CPI为1,占比43%Load指令:CPI为2,占比21%Store指令:CPI为2,占比12%转移指令:CPI为2,占比24%① 求上述情况下的平均CPI;② 假设程序由M条指令组成。算术逻辑运算中25%的指令的两个操作数中的一个已在寄存器中,另一个必须在算术逻辑指令执行前用Load指令从存储器取到寄存器中。因此有人建议增加另一种算术逻辑指令,其特点是一个操作数取自寄存器,另一个操作数取自存储顺,即寄存器-存储器型,假设这种指令的CPI等于2,同时,转移指令的CPI变为3。求新指令系统的平均CPI。

在字长为16位、32位、64位或128位的计算机中,字长为【 】位的计算机数据运算精度最高。

假定我们有一台计算机,如果所有的Cache 访问都命中的话,它的CPI是2.0。唯一的数据访问指令是Store和Load,它们占指令总数的40%,不命中的损失是25个时钟周期,不命中率是2%。如果所有的指令访问Cache都命中的话,那么机器的速度是存在Cache不命中的多少倍?