计算机系统结构_第六章练习答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章向量处理机

1.在大型数组的处理中常常包含向量计算,按照数组中各计算相继的次序,我们可以把向量处理方法分为哪三种类型?

横向处理方式,纵向处理方式,纵横处理方式

横向处理方式:向量计算是按行的方式从左至右横向的进行

纵向处理方式:向量计算是按列的方式自上而下纵向的进行

纵横处理方式:横向处理和纵向处理相结合的方式

2.解释下列与向量处理有关的术语。

(1)向量和标量的平衡点:为了使向量硬件设备和标量设备的利用率相等,一个程序中向量代码所占的百分比

(2)用户代码的向量化比值:用户代码可向量化的部分占全部的比重

(3)向量化编译器或量化器:将标量运算进行向量化或者将向量运算进行适当的修改使之能够进入向量处理进行向量处理的编译器

3.简要叙述提高向量处理机性能的常用技术

(1)链接技术

(2)向量循环或分段开采技术

(3)向量递归技术

(4)稀疏矩阵的处理技术

4.下述的几个需要解决的问题中,那个是向量处理机所最需要关心的?

A.计算机指令的优化技术

B.设计满足运算器带宽要求的存储器

C.如何提高存储器的利用率,增加存储器系统的容量

D.纵横处理方式的划分问题

5.假设系统在向量模式下面能够达到9Mflops,在标量模式下能够达到1Mflops速度,而代码的90%是向量运算,10%是标量运算,这样花在两种模式上的计算时间相等。那么向量平衡点是:

A.0.1 一个程序中向量代码所占的百分比

D.以上都不是

6.查看下面三条指令:

V3←A

V2←V0+V1

V4←V2*V3

假设向量长度小于64,且前后其他的指令均没有相关性,数据进入和流出每个功能部件,包括访问存储器都需要一拍的时间,假设向量的长度为N。三条指令全部采用串行的方法,那么执行的时间是:

+20 +21

+22 +23

7.下面一组向量操作能分成几个编队?假设每种流水功能部件只有一个。

LV V1,Rx ;取向量

MULTSV V2,F0,V1;向量和标量相乘

LV V3,Ry ;取向量Y

ADDV V4,V2,V3;加法

SV Ry,V4;存结果

可以划分成四个编队:

(1)LV (2)MULTSV LV (3)ADDV (4)SV

8.在一台向量处理机上实现A=B×s操作,其中A和 B是长度为200的向量,s是一个标量。向量寄存器长度为64。功能部件的启动开销为:取数和存数部件为12个时钟周期,乘法部件为7个时钟周期,加法部件为6个时钟周期。总的执行时间是?

9.简述三种向量处理方式,他们对向量处理机结构要求有什么不同。

解:水平处理方式:向量长度为N,则水平处理方式相当于执行N次循环。不适合对向量进行流水处理。(或者叫做横向处理方式)

垂直处理方式:将整个向量按相同的运算处理完毕之后,再去执行其他的运算,适合对向量进行流水处理,向量运算指令的源/目向量都放在存储器内,使得流水线运算部件的输入输出端直接与存储器相联,构成M-M型的运算流水线。

分组处理方式:把长度为N的向量分为若干组,每组按照纵向处理

10.解释下列与向量处理有关的术语。

(1)向量规约指令

(2)收集和散播指令

解:(1)将向量化转化为标量的指令

(2)收集指令可以把非连续存储单元的内容传送到向量寄存器组中若干个连续的寄存器;散播指令与此相反。他们用于稀疏矩阵的存储与运算,可以节省空间。

11. 查看下面三条指令:

V3←A

V2←V0+V1

V4←V2*V3

假设向量长度小于64,且前后其他的指令均没有相关性,数据进入和流出每个功能部件,包括访问存储器都需要一拍的时间,假设向量的长度为N。三条指令采用链接的方法,那么执行的时间是:

+22 +15

+16

+17

12.在一台向量处理机上实现A=B×s操作,其中A和 B是长度为200的向量,s是一个标量。向量寄存器长度为64。功能部件的启动开销为:取数和存数部件为12个时钟周期,乘法部件为7个时钟周期,加法部件为6个时钟周期。那么一个结果元素的平均执行时间(包括启动开销)为:

A.3.7 某向量处理机有16个向量寄存器,其中V0-V5种分别存放有向量A,B,C,D,E,F,向量的长度是8,向量各元素均为浮点数;处理部件采用两个单功能流水线,加法功能部件时间为2拍,乘法功能部件时间为3拍。采用类似CRAY-1的链接技术,先计算(A+B)*C,在流水线不停的情况下,接着计算(D+E)*F。求

此链接流水线的通过时间是多少拍?(设寄存器出入各需1拍)

14.名词解释

向量流水处理机

解:处理机具有向量数据表示,并通过向量指令对向量的各元素进行处理。

15.某向量处理机有16个向量寄存器,其中V0-V5种分别存放有向量A,B,C,D,E,F,向量的长度是8,向量各元素均为浮点数;处理部件采用两个单功能流水线,加法功能部件时间为2拍,乘法功能部件时间为3拍。采用类似CRAY-1的链接技术,先计算(A+B)*C,在流水线不停的情况下,接着计算(D+E)*F 。每拍时间是50ns,完成这些计算并且把结果存进相应的寄存器,此处理部件实际吞吐率是多少MFLOPS?(设寄存器出入各需1拍)

. 一台单处理机可以以标量方式运行,也可以以向量方式运行。在向量方式情况下,计算可比标量方式快9倍。设某基准程序在此计算机上运行的时间是T 。另外,已知T 的25%用于向量方式,其余机器时间则以标量方式运行。请计算在上述条件下与完全不用向量方式条件下相比的加速比,并计算上述程序中向量化代码所占的百分比。

加速比=*9+*1)/T=3

由于T 中向量化代码所占的时间为,则串行代码用时==,所以完全不用向量方式执行该段代码用时= +9*=3T, 因此加速比=3T/T=3.

根据Amdahl 定律.

17.一台向量计算机一次只能以下述两种方式中的一种运行:一种是向量方式,执行速度v R 为10Mflops ;另一种是标量方式,执行速度s R 为1Mflops 。设α是该计算机的典型程序代码中可以向量化部分的百分比。如果要使平均执行的速度达到,那么向量化百分比应该多大?

1/[a/Rv+(1-a)/Rs]=

所以a=

18.在CARY1机器上,设向量长度均为32,s 是标量寄存器,加法需要6拍,乘法需要7拍,从存储器读数需要6拍,打入寄存器及启动功能部件(包括寄存器)各需要1拍。则下面的指令组完成所需要的拍数是:

V3←存储器 打入1,启动1,读数6

V2←V0+V1

s0←s2+s3

V3←V1×V4

8+31+9+31

19.在CRAY-1机器上,链接方式执行下面4条向量指令(括号中给出相应功能部件的时间),如果向量寄存器和功能部件之间的数据传输需要1拍,试求此链接流水线的流过时间为多少拍?

V0←存储器 (存储器取数7拍)9

V1←V0+V1 (向量加3拍)5

V3←V2

V5←V3∧V4 (向量逻辑乘2拍)4

相关文档
最新文档