系统结构考点之CRAY-1向量处理机

本文介绍了CRAY-1向量处理机的特点和与标量处理机的区别,强调了其在向量运算中的分组纵横处理方式。通过一个实例详细解析了向量处理的串行执行时间、并行执行时间和链接技术的应用,展示了向量处理机在提高计算效率上的优势。

如题:2019年4月

分析

依然想不起什么。系统结构考点之PM2I单级网络已经复习过了第6章内容向量处理机中的阵列处理机以后部分,但不记得有这个cray-1?这里只记录一下没有涉及到的部分。

基本知识

与标量处理机的区别

向量处理机更擅长处理向量数据,而不是说不能处理标量。

向量的处理方式

横向处理:也就是从数组中取a_ib_i…参与运算,再取a_i+1b_i+1…参与运算.这种方式不是向量流水的处理方式。

横向处理就是每次处理完一个向量分量。并不适合并行操作。如本题中D=AX(B+C),每次处理完D_i=A_i X (B_i+C_i)这就是向量分量。

向量的流水处理方式

纵向处理和分组纵横处理方式。

纵向处理是每次处理完向量的一个子操作。如E=B+C;D=AXE

分组纵横处理是组内纵向,组间横向

cray-1有什么特点

cray-1就是采用分组纵横处理方式。在P190介绍了它的结构。没必要细读,现在硬件也更新很快,像跑linux的A核,不知更新多少代了,只要记住它进行向量运算的拍数即可。

整数加 3拍

逻辑运算 2拍

移位 4拍

浮点加 6拍 *

浮点乘 7拍 *

启动访存、元素送入功能部件、结果存入,都需要1拍 *

浮点迭代求倒数 14拍

访存 6拍 (这个书上倒是没提,但根据结构可以推出来的) *

典型的浮点向量处理机。最多能并行处理6条向量指令。

解题 这题其实是书P207页的例子

书中的通过这个例子讲解了链接技术。

第一问:串行执行时的时间

如果忽略了向量的处理方式,很容易就会只计算三步串行的时间。要考虑向量的处理串行方式,指的就是横向处理方式,一次处理一个向量分量。

D_0=A_0 X (B_0+C_0)

D_1=A_1 X (B_1+C_1)

直到

D_n=A_n X (B_n+C_n)

然后,再计算三步的串行;根据题目来就行,不用按照逻辑顺序,先算括号里的加,其实都是一样的。

第一步:启动访存 1拍 -> 访存 取A 6拍 -> A送入V3 1拍;因为D是个向量有n个元素,所以流水线处理方式所花费时间,启动访存时间+(n-1)t,所以8+n-1=7+n

第二步:V_0 + V_1 -> V_2;还用不用再取V1(B)、V2©呢?可以认为在第一步时已经取出来了。题目考点是考察向量的处理方式,这些细节也不用过于纠结。

选把B、C送入加法器 1拍 -> 算加法(由于cray-1是浮点型向量处理机,所以这里的加法指的是浮点加) 6拍 -> 结果送入V2 1拍 ;n个数据,那还是8+n-1=7+n

第三步:送乘 1拍 -> 乘法 7拍 -> 结果送V4 1拍 ;结果为9+n-1=8+n

最后的串行总时间结果为:22+3n.

串行,需要频繁切换流水线,效率不高

第二问 1,2并行,再执行3

第一步就是访存取A,第二步是算B+C,没什么关系,所以是可以并行的;也就是将1,2步所花时间合为一步,但这里要注意,合为一步后,并行执行后,流水线也只需要加一次n-1;结果为7+n

第三步,不能并行了,只有执行完取A,加法后,再算乘,这里单列。结果为8+n

最后的结果为15+2n.

第三问,取采链接技术,1、2并行与3链接

所谓的链接技术是将两条不相关的流水线链在一起的技术。链在一起的话就不需要再重复加n-1了。

前两步只需要8;第三步需要8+n,总共需要16+n

总结

第一问的,就是考察的横向处理。第二问就是纵向处理。同时也对链接有所涉及,关键还要理解计算机的思想。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

guangod

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值