1.从机器(汇编)语言程序员看,以下哪些是透明的? 指令地址寄存器;指令缓冲器;时标发生器;条件码寄存器;乘法器;主存地址寄存器;磁盘外设;先行进位链;移位器;通用寄存器;中断字寄存器。
2.下列哪些对系统程序员是透明的?哪些对应用程序员是透明的? 系列机各档不同的数据通路宽度;虚拟存储器;Cache存储器;程序状态字;"启动I/O"指令;"执行"指令;指令缓冲寄存器。
3.想在系列机中发展一种新型号机器,你认为下列哪些设想是可以考虑的,哪些则是不行的?为什么?
(1) 新增加字符数据类型和若干条字符处理指令,以支持事务处理程序的编译。 (2) 为增强中断处理功能,将中断分析由原来的4级增加到5级,并重新调整中断响应的优先次序。
(3) 在CPU和主存之间增设Cache存贮器,以克服因主存访问速率过低而造成的系统性能瓶颈。 (4) 为解决计算误差较大,将机器中浮点数的下溢处理方法由原来的恒置"1"法,改为用只读存贮器存放下溢处理结果的查表舍入法。
(5) 为增加寻址灵活性和减少平均指令字长,将原来全部采用等长操作码的指令改成有3类不同码长的扩展操作码;并将源操作数寻址方式由原来的操作码指明改成增加一个如VAX-11那样的寻址方式位字段来指明。
(6) 将CPU与主存之间的数据通路宽度由16位扩到32位,以加快主机内部信息的传送。 (7) 为了减少使用公用总线的冲突,将单总线改为双总线。
(8) 把原来的0号通用寄存器改作为专用的堆栈指示器。
4.用一台40MHZ处理机执行标准测试程序,它含的混合指令数和相应所需的时钟周期数如下:
指令类型 |
指令数 |
时钟周期数 |
整数运算 |
45000 |
1 |
数据传送 |
32000 |
2 |
浮点 |
15000 |
2 |
控制传送 |
8000 |
2 |
求有效CPI、MIPS速率和程序的执行时间。
5.某工作站采用时钟频率f为15MHZ,处理速率为10MIPS的处理机来执行一个已知混合程序。假定每次存储器存取为1周期延迟,试问:
(a) 此计算机的有效CPI是多少 (b) 假定将处理机的时钟频率f提高到30MHZ,但存储器子系统速率不变。这样,每次存储器存取需要两个时钟周期,如果30%指令每条只需要一次存储存取,而另外5%每条需要两次存储存取,还假定已知混合程序的指令数不变,并与原工作站兼容,试求改进后的处理机性能。
6.假设在一台40MHZ处理机上运行200,000条指令的目标代码,程序主要由四种指令组成。根据程序跟踪实验结果,已知指令混合比和每种指令所需的指令数如下:
指令类型 |
CPI |
指令混合比 |
算术和逻辑 |
1 |
60% |
高速缓存命中的加载/存储 |
2 |
18% |
转移 |
4 |
12% |
高速存储缺失的存储器访问 |
8 |
10% |
(a) 计算在单处理机上用上述跟踪数据运行程序的平均CPI。 (b) 根据(a)所得的CPI,计算相应的MIPS速率。
7.假定我们将某一执行部件改进后速度提高10倍。改进后被改进部件执行时间占系统总运行时间的50%。则改进后,获得的加速比Sp是多少?
8.上题中的部件在改进前的执行时间所占百分比为多少?
9.假定一台具有理想Cache(无Cache缺失)计算机的行为如下表所示。其中Cache的缺失率对指令来说为5%,对数据访问来说为10%,并且Cache缺失导致的缺失损失为40个时钟周期。求出当有Cache缺失时各种类型指令的CPI。
10.在例6中的理想Cache相对于实际Cache(有Cache缺失)的加速比为多少?
11.假定我们利用增加向量处理模块来提高计算机的运算速度。计算机处理向量的速度比其通常的运算要快20倍。我们将可用向量处理部分所花费的时间占总时间的百分比称为可向量化百分比。
(a) 求出加速比S和可向量化百分比F之间的关系式。 (b) 当要得到加速比为2时的可向量化百分比F为多少? (c) 为了获得在向量模式所得到的最大加速比的一半,可向量化百分比F为多少?
12.已知四个程序在三台计算机上的执行时间(s,秒)如下:
程 序 |
执行时间(s,秒) |
计算机A |
计算机B |
计算机C |
程序1 |
1 |
10 |
20 |
程序2 |
1000 |
100 |
20 |
程序3 |
500 |
1000 |
50 |
程序4 |
100 |
800 |
100 |
假设四个程序中每一个都有100,000,000条指令要执行,计算这三台计算机中每台机器上每个程序的MIPS速率。根据这些速率值,你能否得出有关三台计算机相对性能的明确结论?你能否找到一种将他们统计排序的方法,说明理由。
13.假定你是一个计算机设计者,对高级语言结构的使用研究表明,过程调用是最常用的操作之一。你已设想了一个优化的设计方案,它能减少过程调用和返回所需的取/存指令次数。为了进行验证,对未加优化和已优化的方案进行实验测试,假定所使用的是相同的优化编译器。实验测得的结果如下:
(1) 未优化方案的时钟周期比优化的快5%;
(2) 未优化方案中的取/存指令数占总指令数的30%;
(3) 优化方案中的取/存指令数比未优化的少1/3。对于其它指令,两种方案的动态执行数没有变化;
(4) 所有指令,包括取/存,均只需1个时钟周期。
要求你定量的判断,哪一种设计方案计算机工作的速度更快?
14.假设高速缓存Cache工作速度为主存的5倍,且Cache被访问命中的概率为90%,则采用Cache后使整个存储系统获得多高的加速比Sp?