流水线技术--向量处理机
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
量功能部件之间都能并行工作,大大加快了向量
指令的处理。
虚拟存储器的特点
9/43
3.5 向量处理机
Vi冲突:指的是并行工作的各向量指令的源向 量或结果向量的Vi有相同的。 向量功能部件冲突:指同一个向量功能部件被 一条以上的并行工作向 量指令所使用。 3. CRAY-1向量指令类型
◆ Vk ← Vi op Vj
2. CRAY-1的基本结构
◆ 向量运算部件:6个
整数加,逻辑运算,移位 浮点加,浮点乘,求倒数
虚拟存储器的特点 8/43
3.5 向量处理机
◆ 向量寄存器组:8×64
V0 ~ V7
◆ 每个 Vi
每个向量运算部件
◆ 向量长度寄存器VL ◆ 向量屏蔽寄存器VM
CRAY-1向量处理的显著特点:只要不出现Vi 冲突和向量功能部件冲突,各个Vi之间和各个向
◆ 这种分段向量处理技术也称为分段开采。
◆ 将长向量循环分段处理是由系统硬件和软件控
制完成的,对程序员透明。
虚拟存储器的特点
19/43
3.5 向量处理机
例3.8 设A和B是长度为N的向量,考虑在 Cray-1向量处理器上实现如下的循环操作。 DO 10 I = 1,N 10 A(I) = 5.0 * B(I) + 1.0 ◆ 当N ≤64时,可以用如下指令序列实现上 述循环操作:
(3) V4←V2*V3(浮点乘,存D) 解:链接过程如图3.44所示:
虚拟存储器的特点
14/43
3.5 向量处理机
访存(6 拍)
存储器
V0
V1
V2
V3
V4
浮点加(6 拍)
浮点乘(7 拍)
图 3.44 通过链接技术实现指令重叠执行
◆ 三条向量指令全部用串行方法执行,则总
的执行时间为:
[(1+6+1) + N-1] + [(1+6+1) + N-1] +[(1+7+1) + N-1] = 3N + 22 拍
◆ 只有当前一条向量指令全部执行完毕,释放
相应的向量寄存器资源后才能执行后面的向 量指令。
虚拟存储器的特点 17/43
3.5 向量处理机
◆ 当一条向量指令的两个源操作数分别是两条
先行向量指令的结果寄存器时,要求先行的 两条向量指令产生运算结果的时间必须相等, 即要求有关向量功能部件的延迟时间相等。
虚拟存储器的特点
15/43
3.5 向量处理机
◆ 前两条向量指令并行执行之后,再执行第
三条向量指令,则总的执行时间为:
[(1+6+1) + N-1] + [(1+7+1) + N1]
= 2N + 15 拍 ◆ 采用向量链接技术,所需拍数(亦称Βιβλιοθήκη Baidu链接
流水线的流水时间)为:
[(1+6+1)] + [(1+7+1)] = 17 拍
S1←5.0 ;将常数5.0送入标量寄存器S1
S2←1.0
VL←N
;将常数1.0送入标量寄存器S2
;在向量长度寄存器VL中设置向量长度N
◆ Vk ← Si op Vj
◆ Vk ← 主存 ◆ 主存 ← Vi
虚拟存储器的特点 10/43
3.5 向量处理机
虚拟存储器的特点
11/43
3.5 向量处理机
4. 链接技术 当两条指令出现“写后读”相关时,若它们 不存在功能部件冲突和向量寄存器(源或目的)
冲突,就有可能把它们所用的功能部件头尾相
虚拟存储器的特点
3.5 向量处理机
2. 向量处理机的速度评价方法
◆ 标量处理机:通常用每秒执行多少指令
MIPS(Million Instructions Per Second) 来衡量机器的运算速度 。
◆ 向量处理机:常用每秒取得多少个浮点运算
结果表示机器速度,以MFLOPS(Million of Floating Point Per Second)作为测量单位。
虚拟存储器的特点
2/43
3.5 向量处理机
虚拟存储器的特点
3/43
3.5 向量处理机
(3) 分组(纵横)处理方式
把向量分成长度为某个固定值的若干组, 组内按纵向方式处理,依次处理各组。 每组内: 相关:1次
功能切换:2次
虚拟存储器的特点
4/43
3.5 向量处理机
虚拟存储器的特点
5/43
对处理机结构的要求: 寄存器-寄存器型操作的运算流水线。 举例
(1) 水平(横向)处理方式 Ki=bi+ci Di=Ki×ai 相关:N 次 功能切换:2N 次
虚拟存储器的特点
3.5 向量处理机
(2) 垂直(纵向)处理方式 K=B+C D=K×A 相关:1次 功能切换:1次 对处理机结构的要求: 存储器-存储器型操作的运算流水线对 存储器的带宽要求很高。 例如:STAR-100,CYBER-205
接,形成一个链接流水线,进行流水处理。 链接特性实质上是把流水线“定向”的思想
引入到向量执行过程的结果。
虚拟存储器的特点
12/43
虚拟存储器的特点
3.5 向量处理机
例 3.7 对 上 述 向 量 运 算 D=A*(B+C) , 若 向 量 长度N≤64 ,向量元素为浮点数,则在 B 、 C 取 到 V0、V1后,就可用以下三条向量指令求解: (1) V3←存储器(访存,载入A) (2) V2←V0+V1(浮点加)
◆ 只有所有可以链接执行的向量指令的向量长
度相等时,它们之间才能链接执行,否则它 们之间也不能链接执行。
18/43
3.5 向量处理机
6. 向量循环或分段开采技术 如果向量的长度大于向量寄存器的长度, 该如何处理呢?
◆ 向量循环 :长向量循环分段处理的程序结构 。
把长向量分成固定长度的段,然后循环分 段处理,一次循环只处理一个向量段。
则三条向量指令总执行时间为: [(1+6+1)] + [(1+7+1)] +(N-1)= N + 16 拍
虚拟存储器的特点 16/43
3.5 向量处理机
5. 向量链接的一些主要要求:
(除了要保证无向量寄存器使用冲突和无向
量功能部件使用冲突的条件之外 )
◆ 在进行链接的时候,只有在前一条向量指令
的第一个结果元素送入结果向量寄存器的那 一个时钟周期才可以进行链接,若错过该时 刻就不能进行链接。
另一种评定计算机速度的方法:比较法。 (选择一台速度指标得到公认的机器作为标准机, 给定一些典型的基准程序。)
虚拟存储器的特点 7/43
3.5 向量处理机
3.5.2 提高向量处理机性能的主要技术
1. CRAY-I简介
◆ 美国CRAY公司 ◆ 1976年
◆ 每秒亿次浮点运算
◆ 主频:80MHz
字长:64位