计算机专业基础综合计算机组成原理(并行组织与结构)模拟试卷1
发布时间:2019-09-11 13:43:11
发布时间:2019-09-11 13:43:11
计算机专业基础综合计算机组成原理(并行组织与结构)模拟试卷1
(总分:44.00,做题时间:90分钟)
一、单项选择题(总题数:12,分数:24.00)
1.下面的论述中,不正确的是( )。
A.超线程技术在一颗处理机芯片内设计多个逻辑上的处理机内核
B.多线程技术能够屏蔽线程的存储器访问延迟,增加系统吞吐率
C.多指令流单数据流(MISD)结构从来没有实现过
D.超标量技术是同时多线程技术在英特尔系列处理机产品中的具体实现 √
2.下面的论述中,不正确的是( )。
A.指令级并行处理(ILP)通过增加每个时钟周期执行的指令条数来提高处理机性能
B.超线程技术在一颗处理机芯片内设计多个逻辑上的处理机内核,这些逻辑上的内核可以共享处理机内的二级cache等资源,但每个线程有自己独立的运算器 √
C.英特尔集成众核处理机可作为中央处理机的协处理机工作
D.多处理机系统利用任务级并行的方式提高系统性能,既把任务并行化并分配到多个处理机中去执行
3.总线共享cache吉构的缺点是( )。
A.结构简单
B.通信速度高
C.可扩展性较差 √
D.数据传输并行度高
4.计算机系统中的并行性是指( )。
A.只有一个事件发生
B.两个以上的事件不在同一时刻发生
C.两个以上的事件不在同一时间间隔内发生
D.两个以上的事件在同一时刻发生或同一时间间隔内发生 √
5.从执行程序的角度看,并行性等级最高的是( )。
A.指令内部并行
B.作业或程序级并行 √
C.指令级并行
D.任务级或过程级并行
6.按指令流(I)和数据流(D)的组织方式,多处理机系统属于结构。
A.SISD
B.SIMD
C.MISD
D.MIMD √
7.按指令流(I)和数据流(D)的组织方式,多核处理机系统属于( )结构。
A.SISD
B.SIMD
C.MISD
D.MIMD √
8.多处理机实现( )级并行。
A.指令内部
B.指令
C.处理机内部
D.作业或程序 √
9.在以下四种类型的MIMI)计算机中,只有( )不能采用商品化的通用微机来构成并行处理系统。
A.SMP(对称多处理机)
B.PVP(并行向量处理机) √
C.MPP(大规模并行处理机)
D.DSM(分布共享存储器多处理机)
10.以下描述中,概念正确的是( )。
A.机群系统是由一组完整的计算机(结点)通过高性能的网络或局域网互联而成的系统,它作为一个单独的统一资源来使用,具有单一系统形象的特点 √
B.机群系统就是局域网
C.机群系统就是MPP
D.机群系统就是多台异构型计算机的互联系统
11.以下陈述中不属于机群系统特征的是( )。
A.机群的每个结点上驻留有完整的操作系统
B.机群的各结点间通过共享磁盘实现信息交换 √
C.机群的各结点通过低成本的商用网络互连
D.机群的每个结点都是一个完整的计算机
12.以下关于多核技术的描述中,不正确的是( )。
A.处理机片内使用共享的L 2 cache取代各个核私有的L 2 cache能够获得系统整体性能的提升
B.多核处理机核间耦合度高,可以在任务级、线程级和指令级等多个层次充分发挥程序的并行性
C.图形处理机(GPU)与通用CPU集成在一颗芯片上构成异构多核处理机
D.与交叉开关结构相比,总线结构能够有效提高核间数据交换的带宽 √
二、计算题(总题数:5,分数:10.00)
13.利用下列公式,求流水线最大吞吐率P max 、最大加速比S max 、最高效率E max ,并说明它们的物理意义。 吞吐率P为 P=n/T k = 加速比S的公式为 S=T 0 /T k = 流水线效率E的公式为
__________________________________________________________________________________________
正确答案:(正确答案:题干三个公式是在k个流水段中执行n条指令时的吞吐率、加速比和效率,当n→∞时,分别得到最大值。 P max = =n/n△t=1/△t 也即当n→∞时,流水线在每个时钟周期(△t)内有一条指令下线。 S max = =n.k/n=k 也即当n→∞时,流水线的最大加速比等于流水线的段数。 当n→∞时,分子分母两部分的时空区面积接近于相等,流水线有最高效率。 E max = =n/n=1 也即当n→∞时,分子分母两部分的时空区面积接近于相等,流水线有最高效率。)
14.某同构多核处理机由C 0 到C m-1 共m个处理机核组成,采用总线共享cache结构连接在同一条总线上。在某个给定的时间段里,任何一个处理机核使用总线的概率都是p。请分别求出总线空闲、只有一个核请求总线和多于一个核请求总线三种情况出现的概率。
__________________________________________________________________________________________
正确答案:(正确答案:某一个处理机核提出总线请求的概率是p,故其不发出总线请求的概率是1-p。因此,所有处理机核均不提出总线请求的概率是(1-p) m ,即总线空闲的概率为(1-p) m 。 类似地,处理机核C 0 提出总线请求的概率是p,处理机核C 1 到C m-1 均不发出总线请求的概率是(1-p) m-1 。故处理机核C 0 提出总线请求而处理机核C 1 到C m-1 均不发出总线请求的概率是p(1-p) m-1 。由于各个核使用总线的概率是相等的,所以只有一个核请求总线的概率为mp(1-p) m-1 。 由于总线被使用的情况必定是总线空闲、只有一个核请求总线或多于一个核请求总线三种情况之一,故多于一个核请求总线的概率为 1-(1-p) m -mp(1-p) m-1)
15.假设使用100台多处理机系统获得加速比为80,求原计算程序中串行部分所占的比例是多少?
__________________________________________________________________________________________
正确答案:(正确答案:设加速比为S p ,可加速部分比例为F e ,理论加速比为S e 。根据Amdahl定律,有 为简单化,假设程序只在两种模式下运行: ①使用所有处理机的并行模式; ②只用一个处理机的串行模式。假设并行模式下的理论加速比S e 即为多处理机的台数,加速部分的比例F e 即并行部分所占的比例,代入上式,有 求得并行比例F e =0.9975=99.75%,串行比例1-F e =0.25%。)
16.某异构多核处理机由Core 0 、Core 1 、Core 2 、Core 3 四个核组成,四个核各自完成一次平方运算所需的时间分别为T、T/2、T/3和T。现需计算一个256个整数的数组的每个整数的平方值,分别按以下两种方案分配计算任务: 方案1:Core 0 计算32个整数,Core 1 计算128个整数,Core 2 计算64个整数、Core 3 计算32个整数; 方案2:Core 0 计算48个整数,Core 1 计算128个整数,Core 2 计算80个整数、Core 3 执行其他任务(不参与计算)。 忽略访存延迟的影响。 (1)求两种方案下完成任务所需的时间。 (2)若定义各个处理机核不空闲的时间总和与各个处理机核总执行时间总和之比为处理机的利用率,求该处理机执行以上任务时的利用率。
__________________________________________________________________________________________
正确答案:(正确答案:(1)完成任务所需的时间为各个核运行时间的最大值。 方案1完成任务所需的时间为 max(32×T,128×T/2,64×T/3,32×T)=max(32T,64T,21T,32T)=64T 方案2完成任务所需的时间为 max(48×T,128×T/2,80×T/3,0×T)=max(48T,64丁,26.7T,0)=64T (2)处理机的利用率: 方案1处理机的利用率为 (32×T+128×T/2+64×T/3+32×T)/(64T×4) =(32+64+21+32)/256=58.2% 方案2处理机的利用率为(Core 3 不计算在内): (48×T+128×T/2+80×T/3)/(64T×3)=(48+64+26.7)/192=72.2%)
17.某同构双核处理机结构如图9.7所示。处理机采用两级cache结构,每个核都有自己私有的L 1 cache,两个核共享L 2 cache。L 1 cache行大小为2KB,采用2两路组相联映射,访问延迟为30ns/字。L 2 共享cache行大小为4KB,采用直接映射方式,访问延迟为80ns/字。主存的访问延迟为200ns/字。处理机字长为32位。已知该处理机上运行的进程含两个线程,代码如下: 线程1: int A[1024]; int sa=0; for(i=0;i<1024;i++) { sa=sa+A[i]; } 线程2: int B[1024]; int sb=0; for(i=0;i<<1024;i++) { sb=sb+B[i]; } 已知int字长为32位,初始状态下数组A和数组B均存放在主存中,运算结果存放在处理机内的寄存器中。 (1)若主存中的数组A和数组B映射到L 2 cache中的不同行,且在L 2 cathe中从该行0地址开始存放数组元素。请计算在最坏的情况下,进程执行完毕所需要的时间。 (2)若主存中的数组A和数组B映射到L 2 cache中的同一行,且在L 2 cache中从该行0地址开始存放数组元素。请计算在最坏的情况下,进程执行完毕所需要的时间。
__________________________________________________________________________________________
正确答案:(正确答案:初始状态下数组A和数组B均存放在主存中,故两个线程分别从A[0]和B[0]开始计算时,L 1 cache和L 2 cache均缺失。此时将访问主存取数,并分别将数组A和数组B所在的主存块调入L 2 cache的不同行缓存,同时将每个数组的前2K/4=512个字调入L 1 cache。 此后的511个字的计算均命中L 1 cache。 在两个线程分别计算A[512]和B[512]时,L 1 cache缺失。此时将每个数组的后2K/4=512个字从L 2 cache调入L 1 cache。 此后的511个字的计算均命中L 1 cache。 故对每个线程而言,其访问数组所需的时间为: 200+30×511+80+30×511=30940ns 在最坏的情况下,线程1和线程2将顺序执行。假设处理机运算足够快,则进程运行的时间取决于访问数组所需的时间,故进程执行完毕所需要的时间为: 2×30940=61880ns 初始状态下数组A和数组B均存放在主存中,故当线程A从A[0]开始计算时,L 1 cache和L 2 cache均缺失。此时将访问主存取数,并将数组A所在的主存块调入L 2 cache的某一行缓存,同时将该数组的前2K/4=512个字调入L 1 cache。 在最坏的情况下,线程1和线程2交替执行并交替访问数组A和数组B。线程1读取A[0]之后,线程2立即读取B[0],此时L 1 cache和L 2 cache均缺失。线程2将访问主存取数,并将数组B所在的主存块调入L 2 cache的同一行缓存,同时将该数组的前2K/4=512个字调入L 1 cache,而L 2 cache中缓存的数组A的数据将被换出L 2 cache。故线程1和线程2每次访问数组A或数组B均将访问主存,并将L 2 中的数据替换。 因此,在最坏的情况下,进程执行完毕所需要的时间为: 2×200×1024=409600ns)
三、分析题(总题数:5,分数:10.00)
18.如果一条指令的执行过程分为取指令、指令分析、指令执行三个子过程,且这三个子过程的延迟时间都相等。请分别画出指令顺序执行方式、指令流水执行方式的时空图。
__________________________________________________________________________________________
正确答案:(正确答案:时空图如图9.2所示。)
19.设有k=4段指令流水线,各功能段分别为取指令、指令译码、指令执行和结果写回,分别用S 1 、S 2 、S 3 和S 4 表示,各段延迟时间均为△t。若连续输入n条指令,请画出指令流水线的时空图。
__________________________________________________________________________________________
正确答案:(正确答案:在指令连续输入流水线的理想情况下,一条k段流水线能够在k+n-1个时钟周期(△t)内完成n条指令,如图9.3所示。)
20.如果一台SIMD计算机和一台流水处理机具有相同的计算性能,对构成它们的主要部件分别有什么要求?
__________________________________________________________________________________________
正确答案:(正确答案:一台具有n个处理单元的SIMD计算机与一台具有一条n级流水线并且时钟周期为前者1/n的流水处理机的计算性能相当,两者均是每个时钟周期产生n个计算结果。 但是,SIMD计算机需要数量为流水处理机n倍的硬件部件(即n个处理单元),而流水处理机中流水线部件的时钟速率要求比SIMD计算机快n倍,同时还需要存储器的带宽也是SIMD计算机的n倍。)
21.多处理机系统和多计算机系统的差别是什么?
__________________________________________________________________________________________
正确答案:(正确答案:多处理机系统和多计算机系统都属于多机系统,但多处理机系统和多计算机系统的差别是: (1)多处理机是多台处理机组成的单机系统,多计算机是多台独立的计算机。 (2)多处理机中各处理机逻辑上受统一的操作系统控制,而多计算机的操作系统逻辑上是独立的。 (3)多处理机间以单一数据、向量、数组和文件交互作用,多计算机经通道或者通信线路以数据流的方式进行交互。 (4)多处理机作业、任务、指令、数据各级并行,多计算机多个作业并行。)
22.在运行Web服务器的计算机系统中增加GPU处理机是否会明显提升系统性能?为什么?
__________________________________________________________________________________________
正确答案:(正确答案:GPU适合于运行存在大量规则数据并行的应用程序。在常规Web服务器应用中,一般存在较多的分支跳转及线程间数据共享,这些操作靠GPU执行效率并不高。故对一般的Web应用服务器而言,增加GPU处理机不会明显提升系统性能。)