并行体系结构(陈国良版)课后答.pdf
《并行体系结构(陈国良版)课后答.pdf》由会员分享,可在线阅读,更多相关《并行体系结构(陈国良版)课后答.pdf(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 习题设计计划1指导思想要求学生理解高端并行计算机系统设计技术,高端MPP、DSM、CLUSTER 等大规模并行计算机的关键设计理论和实现技术,包括互连网络技术、存储架构和高可用技术等。为此,必须用适量的作业、习题,启发学生独立思考以及熟练掌握一些基础知识和基本技能。2作业安排本教材每一章都附有大量的习题,根据教学进度和学时,合理选择书上习题,以达到进一步加深理解课堂讲授的内容。每一章讲授结束,收一次作业,给出成绩,并作一次集体答疑,讲解作业中的共性问题。作业成绩记入总成绩内。第一章绪论1.1 什么是并行计算机?答:简单地讲,并行计算机就是由多个处理单元组成的计算机系统,这些处理单元相互通信
2、和协作,能快速高效求解大型的复杂的问题。1.2 简述 Flynn 分类法:答:根据指令流和数据流的多重性将计算机分为:1)单指令单数据流SISD 2)单指令多数据流SIMD 3)多指令单数据流MISD 4)多指令多数据流MIMD 1.3 简述当代的并行机系统答:当代并行机系统主要有:1)并行向量机(PVP)2)对称多处理机(SMP)3)大规模并行处理机(MPP)4)分布式共享存储(DSM)处理机5)工作站机群(COW)1.4 为什么需要并行计算机?答:1)加快计算速度2)提高计算精度3)满足快速时效要求4)进行无法替代的模拟计算1.5 简述处理器并行度的发展趋势答:1)位级并行2)指令级并行3
3、)线程级并行1.6 简述 SIMD 阵列机的特点答:1)它是使用资源重复的方法来开拓计算问题空间的并行性。2)所有的处理单元(PE)必须是同步的。3)阵列机的研究必须与并行算法紧密结合,这样才能提高效率。2 21m4)阵列机是一种专用的计算机,用于处理一些专门的问题。1.7 简述多计算机系统的演变答:分为三个阶段:1)1983-1987 年为第一代,代表机器有:Ipsc/1、Ameteks/14 等。2)1988-1992 年为第二代,代表机器有:Paragon、Intel delta 等。3)1993-1997 年为第三代,代表机器有:MIT 的 J-machine。1.8 简述并行计算机的
4、访存模型答:1)均匀存储访问模型(UMA)2)非均匀存储访问模型(NUMA)3)全高速缓存存储访问模型(COMA)4)高速缓存一致性非均匀访问模型(CC-NUMA)1.9 简述均匀存储访问模型的特点答:1)物理存储器被所有处理器均匀共享。2)所有处理器访问任何存储字的时间相同。3)每台处理器可带私有高速缓存。4)外围设备也可以一定的形式共享。1.10 简述非均匀存储访问模型的特点答:1)被共享的存储器在物理上分布在所有的处理器中,其所有的本地存储器的集合构成了全局的地址空间。2)处理器访问存储器的时间不一样。3)每台处理器可带私有高速缓存,外备也可以某种的形式共享。第二章性能评测2.1 使用
5、40MHZ 主频的标量处理器执行一个典型测试程序,其所执行的指令数及所需的周期数如表2.13 所示。试计算执行该程序的有效CPI、MIPS 速率及总的CPU 执行时间。解:CPI=total cycles/total instructions=(45000*1+32000*2+15000*2+8000*2)/(45000+32000+15000+8000)=1.55 MIPS=时钟频率/(CPI*106)=(40*106)/(1.55*106)=25.8 CPU 执行时间=total cycles/时钟频率=0.00375s 2.2 欲在 40MHZ 主频的标量处理器上执行20 万条目标代码指
6、令程序。假定该程序中含有4种主要类型之指令,各指令所占的比例及CPI 数如表 2.14 所示,试计算:在单处理机上执行该程序的平均CPI。由所得结果,计算相应的MIPS速率。解:(1)CPI=1*60%+2*18%+4*12%+8*10%=2.12(2)MIPS=时钟频率/(CPI*106)=(40*106)/(2.12*106)=18.9 2.1 2.3 已知 SP2并行计算机的通信开销表达式为:t(m)=46+(0.035)m,试计算:渐近带宽r=?半峰值信息长度=?提示:to=46s 解:(1)渐近带宽r=1/0.035=28.6MB/S(2)半峰值消息长度m1/2=to*r=46us*
7、28.6MB/S=1315.6B 2.4 并行机性能评测的意义。答:意义有:1)发挥并行机长处,提高并行机的使用效率。3 2)减少用户购机盲目性,降低投资风险。3)改进系统结构设计,提高机器的性能。4)促进软/硬件结合,合理功能划分。5)优化“结构-算法-应用”的最佳组合。6)提供客观、公正的评价并行机的标准。2.5 如何进行并行机性能评测答:1)机器级性能评测:CPU 和存储器的某些基本性能指标;并行和通信开销分析;并行机的可用性与好用性以及机器成本、价格与性/价比。2)算法级性能评测:加速比、效率、扩展性。3)程序级性能评测:Benchmark。2.6 简述 Gustafson 定律的出发
8、点答:1)对于很多大型计算,精度要求很高,即在此类应用中精度是个关键因素,而计算时间是固定不变的。此时为了提高精度,必须加大计算量,相应地亦必须增多处理器数才能维持时间不变。2)除非学术研究,在实际应用中没有必要固定工作负载而计算程序运行在不同数目的处理器上,增多处理器必须相应地增大问题规模才有实际意义。2.7 已知一程序可并行代码占比例为80%,将其在有10 个处理器的系统中运行,求其加速比?并求其极限加速比?并分析其结构带来的影响解:加速比=1/(20%+80%/10)=1/(0.2+0.08)=3.57。极限加速比,即处理器个数无穷大的时候呈现的加速比=1/20%=5。这个极限加速比,换
9、个角度说是,Amdahl 定律在很长一段时间影响了人们对开发并行计算机的信心,对于本例,因为就算你把处理器做到无穷也只能得到5倍的加速比,同时有一点更明显,就是处理器数目增加到一定程度后,加速比的增长非常缓慢。2.8 简述影响加速的因素答:1)求解问题中的串行分量。2)并行处理器所引起的额外开销。3)加大的处理器数超过的算法的并发程度。2.9 为什么增加问题规模可以在一定程度提高加速答:1)较大的问题规模可提高较大的并发度。2)额外开销的增加可能慢于有效计算的增加。3)算法中串行分量的比例不是固定不变的。2.10 进行可扩放行研究的主要意义答:1)确定解决某类问题用某类并行算法和某类并行体系结
10、构结合,可以有效的利用大量的处理器。2)对于运行于某种体系结构的并行机的某种算法当移到大规模处理机上的性能。3)对于某类固定规模的问题,确定在某类并行机上的最优处理器数目和最大的加速比。4)用于指导改进并行算法和并行体系结构,以使并行算法能尽可能充分利用可扩充的。大量的处理器。第三章互连网络3.1 对于一颗K 级二叉树(根为0 级,叶为 k-1 级),共有 N=2k-1 个节点,当推广至m-元树时(即每个非叶节点有m 个子节点)时,试写出总节点数N 的表达式。答:推广至 M 元树时,k 级 M 元树总结点数N 的表达式为:N=1+m1+m2+.+m(k-1)=(1-mk)*1/(1-m);4
11、3.2 二元胖树如图3.46 所示,此时所有非根节点均有2个父节点。如果将图中的每个椭圆均视为单个节点,并且成对节点间的多条边视为一条边,则他实际上就是一个二叉树。试问:如果不管椭圆,只把小方块视为节点,则他从叶到根形成什么样的多级互联网络?答:8 输入的完全混洗三级互联网络。3.3 四元胖树如图3.47 所示,试问:每个内节点有几个子节点和几个父节点?你知道那个机器使用了此种形式的胖树?答:每个内节点有4 个子节点,2 个父节点。CM-5 使用了此类胖树结构。3.4 试构造一个N=64 的立方环网络,并将其直径和节点度与N=64 的超立方比较之,你的结论是什么?答:A N=64 的立方环网络
12、,为 4 立方环(将 4 维超立方每个顶点以4 面体替代得到),直径d=9,节点度n=4 B N=64 的超立方网络,为六维超立方(将一个立方体分为8 个小立方,以每个小立方作为简单立方体的节点,互联成6 维超立方),直径 d=6,节点度n=6 3.5 一个 N=2k 个节点的de Bruijin 网络如图3.48 所示,令ak 1ak2ak 3。a1a0,是一个节点的二进制表示,则该节点可达如下两个节点:ak 2ak 3。a1a00,ak 2ak 3。a1a01。试问:该网络的直径和对剖宽度是多少?答:N=2k 个节点的de Bruijin 网络直径 d=k 对剖宽带w=2(k-1)3.6
13、一个 N=2n 个节点的洗牌交换网络如图3.49 所示。试问:此网络节点度=?网络直径=?网络对剖宽度=?答:N=2n 个节点的洗牌交换网络,网络节点度为=2,网络直径=n-1,网络对剖宽度=4 3.7 一个 N=(k+1)2k 个节点的蝶形网络如图3.50 所示。试问:此网络节点度=?网络直径=?网络对剖宽度=?答:N=(k+1)2k 个节点的蝶形网络,网络节点度=4,网络直径=2*k,网络对剖宽度=2k 3.9 对于如下列举的网络技术,用体系结构描述,速率范围,电缆长度等填充下表中的各项。(提示:根据讨论的时间年限,每项可能是一个范围)答:网络技术网络结构带宽铜线距离光纤距离Myrinet
14、 专用机群互联网络200MB/秒25m 500m HiPPI 用于异构计算机和其外设的组网800Mbps1.6Gbps 25m 300m10km SCI 可扩展一致性接口,通常独立于拓扑结构250Mbps8Gbps 光纤通信多处理器和其外围设备之间,直连结构100Mbps800Mbps 50m 10km ATM 主要应用于因特网主干线中25Mbps10Gbp5 s FDDI 采用双向光纤令牌环,所有结点联接在该环中100-200Mbps 100m 2KM 3.10 如图 3.51 所示,信包的片0,1,2,3 要分别去向目的地A,B,C,D。此时片0 占据信道 CB,片 1 占据信道DC,片
15、2 占据信道AD,片 3 占据信道BA。试问:1)这将会发生什么现象?2)如果采用X-Y 选路策略,可避免上述现象吗?为什么?答:1)通路中形成环,发生死锁2)如果采用X-Y 策略则不会发生死锁。因为采用X-Y 策略时其实质是对资源(这里是通道)进行按序分配(永远是x 方向优先于y 方向,反方向路由是y 方向优先于x 方向),因此根据死锁避免的原则判断,此时不会发生死锁。3.12 在二维网孔中,试构造一个与X-Y 选路等价的查表路由。答:所构造路由表描述如下:1)每个节点包括两张路由表x 表和 y 表2)每个节点包含其以后节点信息,如节点【1,2】x 表内容为:【2,2】【3,2】y 表内容为
16、:【1,3】选路方法:节点路由时进行查表:先查x 表即进行x 方向路由,如果查表能指明下一跳方向则直接进入下一跳。如果不能则继续查y 表,直到到达目的地。第四章对称多处理机系统4.1 参照图 4.20,试解释为什么采用WT 策略进程从2P迁移到1P时,或采用WB 策略将包含共享变量X 的进程从1P迁移到2P时,会造成高速缓存的不一致。P1X处理器高速缓存共享存储器迁移写通写总线XP2P1XXXP2P1XXXP2过回之前图 4.20 进程迁移所造成的不一致性答:采用 WT 策略进程从2P迁移到1P后,2P写共享变量X 为 X,并且更新主存数据为X,此时1P共享变量值仍然为X,与2P和主存 X 不
17、一致。采用 WB 策略进程从1P迁移到2P后,1P写共享变量X 为 X,但此时2P缓存与主存变量值仍然为X,造车不一致。4.2 参照图4.21 所示,试解释为什么:在采用WT 策略的高速缓存中,当I/O 处理器将6 一个新的数据X写回主存时会造成高速缓存和主存间的不一致;在采用WB 策略的高速缓存中,当直接从主存输出数据时会造成不一致。P1处理器I/O(写直达)总线XXP2P1XXP2P1XXP2XXXXX存储器存储器存储器输入()输出()(写回)高速缓存I/O 处理机图 4.21 绕过高速缓存的I/O 操作所造成的不一致性答:中 I/O 处理器将数据X 写回主存,因为高速缓存采用WT策略,此
18、时P1和 P2相应的高速缓存值还是X,所以造成高速缓存与主存不一致。直接从主存输出数据X,因为高速缓存采用WB 策略,可能高速缓存中的数据已经被修改过,所以造成不一致。4.3 试解释采用WB 策略的写更新和写无效协议的一致性维护过程。其中X为更新前高速缓存中的拷贝,X为修改后的高速缓存块,I 为无效的高速缓存块。(b)处理器P1执行写无效操作后IxIP1P2PnIxxx(c)处理器P1执行写更新操作后PnP2P1高速缓存拷贝x高速缓存行共享存储器侦听总线xxx处理器(a)写操作前P1P2PnI答:处理器P1 写共享变量X 为 X,写更新协议如图(c)所示,同时更新其他核中存在高速缓存拷贝的值为
19、X;写无效协议如图(b)所示,无效其他核中存在高速缓存拷贝,从而维护了一致性过程。4.4 两种基于总线的共享内存多处理机分别实现了Illinois MESI 协议和 Dragon 协议,对于下面给定的每个内存存取序列,试比较在这两种多处理机上的执行代价,并就序列及一致性协议的特点来说明为什么有这样的性能差别。序列r1 w1 r1 w1 r2 w2 r2 w2 r3 w3 r3 w3;序列 r1 r2 r3 w1 w2 w3 r1 r2 r3 w3 w1;序列 r1 r2 r3 r3 w1 w1 w1 w1 w2 w3;所有的存取操作都针对同一个内存位置,r/w 代表读/写,数字代表发出该操作的
20、处理器。假设所有高速缓存在开始时是空的,并且使用下面的性能模型:读/写高速缓存命中,代价1 个时钟周期;缺失引起简单的总线事务(如BusUpgr,BusUpd),60个时钟周期;缺失引起整个高速缓存块传输,90 时钟周期。假设所有高速缓存是写回式。答:读写命中、总线事务、块传输分别简记为H、B、T。MESI协议:BTH H H H BTH BH H H BTH BH H H 共 5B+12H+3T=582时钟周期 BTH BTH BTH BH BTH BTH BTH BTH H BH BTH 共10B+12H+8T=1330时钟周期 BTH BTH BTH H BH H H H BTH BTH
21、 共 6B+10H+4T=730时钟周期。Dragon 协议:BTH H H H BTH BTH H BTH BTH BTH H BTH 共 7B+12H+7T=882时钟周期BTH BTH BTH BTH BTH BTH H H H H BTTH BTH 共 8B+12H+8T=1212时钟周期 BTH BTH BTH H BTH BTH BTH BTH BTH BTH 共 9B+10H+9T=1360时钟周期。由结果得出,、序列用MESI协议时间更少,而序列用Dragon 协议时间更少。综上可知,如果同一块在写操作之后频7 繁被多个核读操作采用Dragon 协议更好一些,因为 Dragon
22、 协议写操作后会更新其它核副本。如果一个同多次连续对同一块进行写操作MESI协议更有效,因为它不需要更新其它核副本,只需要总线事务无效其它核即可。4.5 考虑以下代码段,说明在顺序一致性模型下,可能的结果是什么?假设在代码开始执行时,所有变量初始化为0。a.P1 P2 P3 A=1 U=A V=B B=1 W=A b.P1 P2 P3 P4 A=1 U=A B=1 W=B V=B X=A 答:顺序一致性模型性下,保护每个进程都按程序序来发生内存操作,这样会有多种可能结果,这里假设最简单情况,即 P1、P2、P3 依次进行。则 a中 U=V=W=1,b 中 U=X=W=1,V=0。4.6 参照
23、4.6.1 中讨论多级高速缓存包含性的术语,假设L1 和 L2 都是 2-路组相联,n2n1,b1=b2,且替换策略用FIFO 来代替 LRU,试问包含性是否还是自然满足?如果替换策略是随机替换呢?答:如果采用FIFO 替换策略包含性自然满足,因为L1 和 L2 都是 2 路组相联,FIFO 保证了 L1 与 L2 在发生替换时会换出相同的缓存块,维护了包含性。如果采取随机替换策略,存在 L1 与 L2 替换不是相同块的情况,故不满足包含性。4.7 针对以下高速缓存情况,试给出一个使得高速缓存的包含性不满足的内存存取序列?L1 高速缓存容量32 字节,2-路组相联,每个高速缓存块8 个字节,使
24、用LRU 替换算法;L2 高速缓存容量128 字节,4-路组相联,每个高速缓存块8 个字节,使用LRU 替换算法。答:假设m1、m2、m3 块映射到一级Cache 和二级 Cache 的同一组中,考虑如下内存存取序列 Rm1,Rm2,Rm1,Rm3,由 LRU 替换算法知道,当Rm3执行后,L1 中被替换出的是m2,L2 中被替换出的是m1,此时 m1 块在 L1 却不在 L2 中,不满足包含性。4.8 在 4.6 中关于分事务总线的讨论中,依赖于处理器与高速缓存的接口,下面情况有可能发生:一个使无效请求紧跟在数据响应之后,使得处理器还没有真正存取这个高速缓存块之前,该高速缓存块就被使无效了。
25、为什么会发生这种情况,如何解决?答:考虑如下情景:SMP 目录一致性协议中,核1 读缺失请求数据块A,主存响应请求传送数据块 A 给核 1,同时核 2 对数据块A 进行写操作,到主存中查得核1 拥有副本,向核 1发使无效请求。如此,一个使无效请求紧跟在数据响应之后。解决方法,可以使每个核真正存取高速缓存块后向主存发回应,然后再允许其它对此块操作的使无效或其它请求。4.9 利用 LL-SC 操作实现一个Test&Set 操作。答:Test&Set:ll reg1,location/*Load-locked the location to reg1*/bnz reg1,lock/*if locat
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 并行 体系结构 陈国良版 课后
限制150内