第一章
1.6 某台主频为400MHz的计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如下:
指令类型 整数 数据传送 浮点 分支 指令执行数量 45000 75000 8000 1500 平均时钟周期数 1 2 4 2 求该计算机的有效CPI、MIPS和程序执行时间。 解:(1)CPI =(45000×1+75000×2+8000×4+1500×2) / 129500=1.776 (或
460) 259(2)MIPS速率=f/ CPI =400/1.776 =225.225MIPS (或
5180MIPS) 259(3)程序执行时间= (45000×1+75000×2+8000×4+1500×2)/400=575?s 1.9 假设某应用程序中有4类操作,通过改进,各操作获得不同的性能提高。具体数据如下表所示: 操作类型 操作1 操作2 操作3 操作4 程序中的数量 (百万条指令) 10 30 35 15 改进前的执行时间 (周期) 2 20 10 4 改进后的执行时间 (周期) 1 15 3 1 (1)改进后,各类操作的加速比分别是多少?
(2)各类操作单独改进后,程序获得的加速比分别是多少? (3)4类操作均改进后,整个程序的加速比是多少? 解:根据Amdahl定律Sn? 操作类型 操作1 操作2 操作3 操作4 各类操作的指令条数在程序中所占的比例Fi 11.1% 33.3% 38.9% 16.7% 各类操作的加速比Si 2 1.33 3.33 4 各类操作单独改进后,程序获得的加速比 1.06 1.09 1.37 1.14 1Fe(1?Fe)?Se可得
4类操作均改进后,整个程序的加速比:
1Sn??2.16
Fi(1??Fi)??Si1.10 第二章
变长编码,哈夫曼编码
第三章
3.12 有一条指令流水线如下所示:
1 2 3 4
50ns 50ns 100ns 200ns
(1)求连续输入10条指令的情况下,该流水线的实际吞吐率和效率。
(2)该流水线的瓶颈在哪一段?请采用两种不同的措施消除此瓶颈。对于你所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少? 解:
(1)本题主要考察对各功能段用时不等的线性流水线的性能计算公式的掌握情况。
T流水???ti?(n?1)?tmaxi?1k?(50?50?100?200)?9?200 ?2200(ns)TP?nT流水k?1220(ns?1)
E?TP???ti?1ik?TP?4005??45.45% 411注意:对于公式不能死记硬背,需要充分理解,注意公式的适用条件。
(2)瓶颈在3、4段。
? 变成八级流水线(细分瓶颈段方法)
入150nsk250ns3_150ns3_250ns4_150ns4_450ns出
T流水???ti?(n?1)?tmaxi?1?50?8?9?50?850(ns)TP?nk
T流水?185(ns?1)
E?TP???tii?1k?TP?40010??58.82% 817? 重复设置瓶颈段方法
相关推荐: