计算机组成原理-多处理器系统的基本概念(SISD SIMD MISD MIMD)

本文概述了单指令单数据(SISD)、单指令流多数据流(SIMD)、多指令单数据流(MISD)和多指令多数据流(MIMD)的处理器模型,以及向量处理器如何利用数据并行性。同时讨论了共享内存多处理器和多核处理器的区别,强调了它们在处理效率上的优势。
摘要由CSDN通过智能技术生成

总览

先看这个

在这里插入图片描述

再往下看

在这里插入图片描述

SISD

并发就是;先执行一下该指令序列,再执行一下另外一个指令序列
并行就是:两个指令序列同时进行
在某个时间段内只能处理一个进程或者一个线程的指令序列,各个进程或者线程的指令序列只能并发的执行,不能并行的执行
在这里插入图片描述

单指令流是指同一时间段内只能处理一个时间序列
单数据流指的是每条指令只能处理一到两个数据
在这里插入图片描述
在这里插入图片描述

SIMD

由于此时每个ALU处理的地址不同,所以地址寄存器也不同
在这里插入图片描述
相当于一条指令同时给多个ALU同时执行,相当于执行多次该条指令或者说控制信号给多个ALU,多个ALU执行相同的操作
在各自局部存储器,该局部存储器最后合起来就是总的要控制的那块存储区域
此时一条指令可以并行处理多个数据(同时处理多个数据)

对应到例子就是像素处理,每个ALU处理部分像素
或者对所有数组元素做相同的处理,每个ALU对应的局部存储为数组的某个元素,所以每个ALU处理数组的某个元素
在这里插入图片描述

MISD

现实不存在,因为比较愚蠢的做法,此时的多条指令对数据的效果都是相同的。不可能说多条指令对数据的处理是不同的,或者说是指令序列,那么此时并行,依赖性全无。比如某个指令可能需要执行前一个指令执行的结果。但此时是同时执行原数据。显然不合理。
因此既然多条指令并行处理一个数据,效果也相同,为啥不一个执行就好了嘛
在这里插入图片描述

MIMD

有多个处理器,可以执行多个不同的指令序列,也可以执行多个相同的指令序列(此时就是并行处理多个数据流)

在这里插入图片描述
多处理器系统
多个处理器共享LLC,各个处理器还有更高级的Cache给自己用,
在这里插入图片描述
多计算机系统
消息传递可以说网络传递
同时执行不同指令序列流,而且每台处理的数据流也是不一样的,因为可以给要处理的数据到不同存储器,此时给的数据可以不一样
在这里插入图片描述
在这里插入图片描述

向量处理器

在这里插入图片描述
此时一个向量寄存器存储一个n维的向量
当两个n维的向量相加时,向量处理器只需要一次add指令,因为向量寄存器存储的是向量,所以它的相加单位是n维向量
而当普通处理器处理时需要n次add指令,因为每次的相加单位是一个数据
所以可以认为向量寄存器是数据并行,或者同时一条指令对多个数据处理
多端口,支持同时读
在这里插入图片描述

共享内存多处理器和多核处理器

核就是 处理器
共享内存多处理器和多核处理器就是一个玩意
在这里插入图片描述

  • 15
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

看星猩的柴狗

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

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

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

打赏作者

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

抵扣说明:

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

余额充值