什么是 SIMD 架构?


SIMD 代表单指令多数据流。SIMD 并行计算模型包括两个部分,例如通常冯诺依曼风格的前端计算机和图中所示的处理器阵列。

处理器阵列是由相同同步处理单元的集合组成,足以同时对各种数据执行相同的操作。阵列中的每个处理器都有少量本地内存,分布式数据在并行处理时驻留在其中。

处理器阵列连接到前端的内存总线上,以便前端可以随机创建本地处理器内存,就好像它是另一块内存一样。

可以使用传统的串行编程语言在前端开发和执行程序。应用程序由前端以通常的串行方式执行,但问题命令到处理器阵列以并行执行 SIMD 操作。

串行和数据并行编程之间的相似性是数据并行性的有效点之一。处理器的锁步同步使同步变得无关紧要。处理器要么什么也不做,要么同时执行类似的操作。

在 SIMD 架构中,通过对大量数据集使用同时操作来利用并行性。这种范例最有利于解决具有需要整体升级的多个数据的问题。在许多常规科学计算中,它具有动态的强大功能。

SIMD 机器中已应用两种主要配置。在第一种方案中,每个处理器都有其本地内存。处理器可以通过互连网络相互交互。如果互连网络不支持给定处理器组之间的直接连接,则该组可以通过中间处理器交换信息。

在第二种 SIMD 方案中,处理器和内存模块通过互连网络相互通信。两个处理器可以通过中间内存模块或可能通过中间处理器相互发送信息。BSP(Burroughs 的科学处理器)使用了第二种 SIMD 方案。

更新于: 2021 年 7 月 30 日

13K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告