向量处理机的基本特性 ·基本思想:两个向量的对应分量进行运算,产生一个结 果向量。 ·简单的一条向量指令包含了多个操作=> fewer instruction fetches 每结果独立于前面的结果 长流水线,编译器保证操作间没有相关性 硬件仅需检测两条向量指令间的相关性 较高的时钟频率 ·向量指令以已知的模式访问存储器 可有效发挥多体交叉存储器的优势 可通过重叠减少存储器操作的延时64 elements 不需要数据 Cache!(仅使用指令 cache) 在流水线控制中减少了控制相关 2021/1/29 计算机体系结构 12
向量处理机的基本特性 • 基本思想:两个向量的对应分量进行运算,产生一个结 果向量。 • 简单的一条向量指令包含了多个操作=> fewer instruction fetches • 每一结果独立于前面的结果 − 长流水线,编译器保证操作间没有相关性 − 硬件仅需检测两条向量指令间的相关性 − 较高的时钟频率 • 向量指令以已知的模式访问存储器 − 可有效发挥多体交叉存储器的优势 − 可通过重叠减少存储器操作的延时 64 elements − 不需要数据Cache! (仅使用指令cache) • 在流水线控制中减少了控制相关 2021/1/29 计算机体系结构 12
向量处理机的基本结构 memory- memory vector processors.:所有的向量 操作是存储器到存储器 vector-register processors:除了load和 store操作 外,所有的操作是向量寄存器与向量寄存器间的 操作 向量机的Load/ Store结构 1980年以后的所有的向量处理机都是这种结构 Cray, Convex, Fujitsu, Hitachi, NEC 我们也主要针对这种结构 2021/1/29 计算机体系结构 13
向量处理机的基本结构 • memory-memory vector processors: 所有的向量 操作是存储器到存储器 • vector-register processors: 除了load 和store操作 外,所有的操作是向量寄存器与向量寄存器间的 操作 − 向量机的Load/Store结构 − 1980年以后的所有的向量处理机都是这种结构: Cray, Convex, Fujitsu, Hitachi, NEC − 我们也主要针对这种结构 2021/1/29 计算机体系结构 13
Vector Memory-Memory versus Vector Register Machines ·存储器-存储器型向量机所有指令操作的操作数来源于存储器 第一台向量机 CDC Star-100(73) and iasc(71)是存储器 存储器型机器 cray-1(76)是第一台寄存器型向量机 Vector Memory-Memory Code Example Source Code ADDV CA, B for(=0;i<;i++) SUBV D A B C[i]=A[i]+B[i]; Vector Register Code D[i]=A[i]-B[i]; IV VI A LV V2 B AddV V3, V1 V2 sv V3, C 2021/1/29 计算机体系结构 SUBV V4, V1 V2
Vector Memory-Memory versus Vector Register Machines • 存储器-存储器型向量机所有指令操作的操作数来源于存储器 • 第一台向量机 CDC Star-100 (‘73) and TI ASC (‘71), 是存储器- 存储器型机器 • Cray-1 (’76) 是第一台寄存器型向量机 2021/1/29 计算机体系结构 for (i=0; i<N; i++) { C[i] = A[i] + B[i]; D[i] = A[i] - B[i]; } Example Source Code ADDV C, A, B SUBV D, A, B Vector Memory-Memory Code LV V1, A LV V2, B ADDV V3, V1, V2 SV V3, C SUBV V4, V1, V2 SV V4, D Vector Register Code
Vector Memory-Memory vs Vector Register Machines 存储器-存储器型向量机(VMMA)需要更高的存储器带宽 All operands must be read in and out of memory VMMA结构使得多个向量操作重叠执行较困难 Must check dependencies on memory addresses VMMA启动时间更长 CDC Star-100在向量元素小于100时,标量代码的性能高于向量 化代码 - For Cray-1, vector/scar均衡点在2个元素 CDC Cray-1后续的机器( Cyber205,ETA-10)都是寄存 器型向量杆 2021/1/29 计算机体系结构
Vector Memory-Memory vs. Vector Register Machines • 存储器-存储器型向量机 (VMMA) 需要更高的存储器带宽 − All operands must be read in and out of memory • VMMA结构使得多个向量操作重叠执行较困难 − Must check dependencies on memory addresses • VMMA启动时间更长 − CDC Star-100 在向量元素小于100时,标量代码的性能高于向量 化代码 − For Cray-1, vector/scalar 均衡点在2个元素 • CDC Cray-1后续的机器 (Cyber-205, ETA-10) 都是寄存 器型向量机 2021/1/29 计算机体系结构 15
Vector Supercomputers Cray-1的变体(1976) Scalar Unit: Load/ Store Architecture Vector extension Vector Registers Vector instructions Implementation 硬布线逻辑控制 高效流水化的功能部件 多体交叉存储系统 无 Data Cache 不支持 irtual Memory 2021/1/29 计算机体系结构 16
Vector Supercomputers • Cray-1的变体(1976): • Scalar Unit:Load/Store Architecture • Vector Extension − Vector Registers − Vector Instructions • Implementation − 硬布线逻辑控制 − 高效流水化的功能部件 − 多体交叉存储系统 − 无Data Cache − 不支持 Virtual Memory 2021/1/29 计算机体系结构 16