Download presentation
Presentation is loading. Please wait.
1
第八章 SIMD计算机
2
SIMD计算机,亦称并行处理机、阵列处理机(单一控制部件控制下的多个处理单元构成的阵列)
3
8.1 SIMD计算机模型
4
SIMD计算机的抽象模型:在同一个控制部件管理下,有多个处理单元,所以处理单元均收到从控制部件广播来的同一条指令,但操作对象是不同的数据
图8.1:H.J.Siegel提出的SIMD计算机的操作模型 M=(N,C,I,M,R) N:为机器的处理单元(PE)数 C:为由控制部件(CU)直接执行的指令集 I:为由CU广播至所有PE进行并行执行的指令集 M:为屏蔽方案集 R:为数据寻径功能集
6
MasPar MP-1计算机 表8.1:三种SIMD计算机 细粒度、位片式SIMD计算机 (所谓细粒度并行性,则是指在一个进程中进行指令一级或操作一级的并行处理)
8
8.2 SIMD计算机的基本结构
9
分布式存储器结构
10
图8.2:分布式存储器结构的SIMD计算机 数据寻径网络、阵列控制部件、控制存储器、标量处理机、处理单元(PE)、本地存储器(LM) 通过控制部件的是单指令流,指令的执行顺序和单处理机一样,是串行处理 如果是标量操作或控制操作指令,则直接由与控制部件相连的标量处理机执行;如果是向量操作,则将它广播到所有PE并行地执行 Illiac Ⅳ:由64个PE组成,PE间通过8*8环绕连接网络实现互连 分布式存储器SIMD计算机的主要差别为进行PE之间互相通信的数据寻径网络不同
12
共享存储器结构
13
图8.3:共享存储器的SIMD计算机 共享的多体并行存储器SM通过对准网络与各处理单元PE相连 m ≥ N BSP(Burroughs Scientific Processor)计算机:见P364 16个PE、17个SM:可以实现无冲突并行地访问存储器
15
SIMD计算机的特点
16
向量处理机和SIMD计算机都能对大量数据进行向量处理
(1)、与流水线向量处理机一样,特别适于高速数值计算 (2)、与多处理机(MIMD)相比,SIMD计算机具有较固定的结构,它直接与一定的算法相联系,其效率取决于计算程序向量化的程度 (3)、与流水线向量处理机相比,SIMD计算机依靠的并行措施是资源重复,而不是时间重复 (4)、标量运算速度和编译过程的开销,也是影响SIMD系统实际有效速度的另外两个因素 (5)、SIMD计算机基本上是一台向量处理专用计算机
17
8.3 SIMD计算机实例
18
BSP计算机
19
BSP:1979年美国Barnes公司和Illinois大学研制的
BSP:属于共享存储器结构的SIMD计算机 BSP:不是一台独立运行的计算机,它是附属于系统管理机的一台后端处理机 图8.8 BSP:承担算术运算 BSP:由控制处理机、并行处理机、文件存储器、并行存储器模块以及对准网络等组成 图8.9
22
1、并行处理机 所有16个算术单元AE对不同的数据组进行同一种指令操作 16个AE是以SIMD方式在单一微序列控制下同步工作的
时钟周期:160ns BSP的执行速度最高可达:50MFLOPS
23
2、控制处理机 控制处理机除了用以控制并行处理机以外,还提供了与系统管理机相连的接口
包括:标量处理机、并行处理机控制器、控制存储器、控制维护单元 SECDED:single error check double errors detect
24
3、文件存储器 FM:文件存储器 FM:是一个半导体辅助存储器
BSP的计算任务文件从系统管理机加载到它上面,然后对这些任务进行排队,由控制处理机加以执行 在BSP程序执行过程中所产生的暂存文件和输出文件,在将它们送给系统管理机输出给用户之前是存在文件存储器中的
25
4、对准网络 对准网络包含完全交叉开关以及用来实现数据从一个源广播至几个目的地以及当几个源寻找一个目的地时能分解冲突的硬件
16个操作数先从存储器模块中取出,通过输入对准网络送给AE进行处理,再将结果经输出对准网络送给存储器模块存储起来
26
5、质数存储系统 BSP并行存储器由17个存储模块组成 每个周期存取16个字 每次运算需要两个变量,时间为160ns/16*2=20ns
一般的巨型机:采用多个并行存储器模块,该存储系统因访问冲突而使频带严重变窄; 如16个存储模块存储16*16数组,各行跨模块存储,一列放在一个模块中,虽然行的存取是并行的,但列的访问则是顺序的
27
(1,1) (1,2) … … … (1,16) (2,1) (2,2) … … … (2,16) … … … … … … … … …
(1,1) (1,2) … … … (1,16) (2,1) (2,2) … … … (2,16) … … … … … … … … … (16,1) (16,2) … … … (16,16) 第1存储模块 第2存储模块 第16存储模块
28
BSP提供一种线性向量法来开拓并行性 线性向量各分量的存储间距为常数d 如列分量的d=1;行分量的d=n;正向对角线分量的d=n (p364 d=1,n=6,n+1=7) 例:一台含有N个AE和M个存储器模块的类BSP机的情况 存储器模块号μ=a mod M a为存储器的线性地址 存储器模块内的地址偏移量i=[a/N]
29
图8.10:4*5矩阵按列映射到一台串行机存储器中的情况
N=7,M=7 存储器的线性地址 a=0,1,2,3,4,5,6,7,……,15,16,17,18,19 存储器模块号 μ=a mod M=0,1,2,3,4,5,6,0,1,……,4,5 存储器模块内的地址偏移量 i=[a/N]=0,0,0,0,0,0,1,1,……,3,3 第0个元素a11存放在[0,0]中 第1个元素a21存放在[1,0]中 ……………………………… 第20个元素a45存放在[5,3]中
31
例如,第二行元素的存放情况 a21,a22,a23,a24,a25 起始地址=1(a=1),跳距d=4(a=1,5,…,17) μ=a mod M =(1,5,9,13,17) mod 7 =(1,5,2,6,3) i=[a/N] =[1/6,5/6,9/6,13/6,17/6] =(0,0,1,2,2) 第二行元素存放在(1,0),(5,0),(2,1),(6,2),(3,2)中
32
列分量的间距d=1 a11,a21,a31,a41,……,a15,a25,a35,a45 行分量的间距d=4 a11,a12,a13,a14,…,a41,a42,a43,a44,a45 对角线分量的间距d=5=4+1 a11,a22,a33,a44
33
谢谢!
Similar presentations