多处理器的基本概念

33 阅读3分钟

SISD(单指令流单数据流)

image.png 特性: 各指令序列只能并发、不能并行,每条指令处理一两个数据 不是 数据级并行技术 硬件组成: 一个处理器+一个主存储器 若采用指令流水线,需设置多个功能部件,采用多模块交叉存储器

SIMD(单指令流多数据流)

image.png 特性: 各指令序列只能并发、不能并行,但每条指令可同时处理很多个具有相同特征的数据 是一种数据级并行技术 硬件组成: 一个指令控制部件(CU)+多个处理单元/执行单元(如ALU)+多个局部存储器+一个主存储器 每个执行单元有各自的寄存器组、局部存储器、地址寄存器 不同执行单元执行同一条指令,处理不同的数据

MISD(多指令流单数据流)

多条指令并行执行,处理同一个数据。现实中不存在这种计算机

MIMD(多指令流多数据流)

image.png 特性: 各指令序列并行执行,分别处理多个不同的数据 是—种线程级并行、甚至是线程级以上并行技术 多处理器系统: 特性: 各处理器之间,可以通过LOAD/STORE指令,访问同一个主存储器,可通过主存相互传送数据 硬件组成: 一台计算机内,包含多个处理器+—个主存储器 多个处理器共享单一的物理地址空间 多计算机系统: image.png 特性: 各计算机之间,不能通过LOAD/STORE指令直接访问 对方的存储器,只能通过“消息传递”相互传送数据 硬件组成: 由多台计算机组成,因此拥有多个处理器+多个主存储器 每台计算机拥有各自的私有存储器,物理地址空间相互独立

向量处理机(SIMD思想的进阶应用)

image.png eg:向量处理机的LOAD指令,可以将一个向量取到向量寄存器中;加法指令,可以实现两个向量相加应用于:向量计算、大量浮点数计算,空气动力学、核物理学、巨型矩阵计算问题 很多超级计算机如中国的“银河”就是向量处理器

特征: 一条指令的处理对象是“向量” 擅长对向量型数据并行计算、浮点数运算,常被用于超级计算机中,处理科学研究中巨大运算量 硬件组成: 多个处理单元,多组“向量寄存器” 主存储器应采用“多个端口同时读取”的交叉多模块存储器 主存储器大小限定了机器的解题规模,因此要有大容量的、集中式的主存储器

共享内存多处理器(SharedMemorymultiProcessor,SMP

多处理器系统(简称) 多个处理器共享一个主存储器 多个处理器共享单一的地址空间,都可以通过LOAD.STORE指令访问共享的主存储器

多核处理器(multi-core)的基本概念

一个CPU芯片中包含多个处理器,即多个核(core),因此通常也称为片级多处理器(Chip-Level MultiProcessing,CMP)。意思是:一块芯片上集成了多个处理器 所有核共享一个LLC (Last-Levef Cache) ,并共享主存储器

硬件多线程

三种硬件多线程 image.png image.png image.png