计算机系统结构(第2版(课后习题答案 下载本文

word文档 下载后可自由复制编辑 指令地址寄存器,×, 条件码寄存器,×, 磁盘,×, 通用寄存器 ,×, 指令缓冲器,√, 乘法器,√, 先行进位链,√, 中断字寄存器,×, 时标发生器,√, 主存地址寄存器,√, 移位器,√, 1.9

见下表,“√”表示都透明,“应”表示仅对应用程序员透明,“×”表示都不透明。 数据通路宽度,√, 虚拟存储器,应, Cache存储器,√, 程序状态字,×, “启动I/O”指令,应, “执行”指令,×, 指令缓冲寄存器,√, 1.12

如果某一计算任务用向量方式求解比用标量方式求解要快20倍,称可用向量方式求解部分

所花费时间占总的时间的百分比为可向量化百分比。请画出加速比与可向量化比例两者关系的曲线。

解:可向量化百分比为Fe, Se=20,根据Amdahl定律

Sn?To1 ?FeTn(1?Fe)?Se将Se代入Amdahl定律得

Sn?11?19 20Fe Sn201Fe 01

1.13

在题1.12中,为达到加速比2,Sn?1=2 1?1920Feword文档 下载后可自由复制编辑

可向量化的百分比应为多少?

word文档 下载后可自由复制编辑

则可向量化的百分比Fe=0.526

1.14

在题1.12中,为获得采用向量方式最大加速比的半值(即10)时,所需可向量化的百分比为多少。

Sn?1=10 191?Fe20则可向量化的百分比Fe=0.947

1.15

在题1.12中,如果某程序可向量化部分为70%,硬件设计组认为可以通过加大工程投资,使向量处理速度加倍来进一步增加性能;而编译程序编写组认为只需设法增加向量工作方式的百分比就同样可使性能得到相同的提高,问:此时需使可向量化成分再增加多少百分比就可实现。你认为上述硬、软件两种方法中,哪一种方法更好? (1)用硬件组方法,已知Se=2 X 20 =40,Fe=0.7 解出Sn=40/12.7≈3.1496

word文档 下载后可自由复制编辑

(2)用软件组方法,已知Se=20,得到硬件组方法的相同性能Sn=40/12.7 解出Fe=27.3/38≈0.7184

(3)结论:软件组方法更好。因为硬件组需要将Se再提高100%(20→40),而软件组只需将Fe再提高1.84%(0.7→0.7184)。

1.16

某计算机的高速小容量存储器能存储2000条指令。假设10%的指令承担了90%的指令访问且对这10%的指令的使用是均匀的(即其中每条指令的执行时间相同)。如果要执行的某程序共有50 000条指令且已知其中的10%是频繁使用的,则当该计算机执行该程序时,在高速小容量存储器中能访问到的指令会占多少百分比? 解:

对该应用程序来说,在90%的时间里,只有50000*10%=5000条指令在运行,其他的45000条指令的平均运行次数很少,因此,可以假设对它们来说,Cache总是缺失的. 对频繁访问的这10%的指令,假设它们访问均匀,这样,Cache的行为便可以认为是均匀覆盖了这些指令.所以, 10%的指令承担了90%的指令访问, 指令访问次数(50000*10%)/90% 命中次数2000 Cache的命中率为:H=2000/[(50000*10%)/90%]=0.36