`
android_mylove
  • 浏览: 399870 次
社区版块
存档分类
最新评论

【整理】SISD、MIMD、SIMD、MISD计算机的体系结构的Flynn分类法

 
阅读更多

1.计算平台介绍

Flynn于1972年提出了计算平台的Flynn分类法,主要根据指令流和数据流来分类,共分为四种类型的计算平台,如下图所示:

单指令流单数据流机器(SISD)

SISD机器是一种传统的串行计算机,它的硬件不支持任何形式的并行计算,所有的指令都是串行执行。并且在某个时钟周期内,CPU只能处理一个数据流。因此这种机器被称作单指令流单数据流机器。早期的计算机都是SISD机器,如冯诺.依曼架构,如IBM PC机,早期的巨型机和许多8位的家用机等。

单指令流多数据流机器(SIMD)

SIMD是采用一个指令流处理多个数据流。这类机器在数字信号处理、图像处理、以及多媒体信息处理等领域非常有效。

Intel处理器实现的MMXTM、SSE(Streaming SIMD Extensions)、SSE2及SSE3扩展指令集,都能在单个时钟周期内处理多个数据单元。也就是说我们现在用的单核计算机基本上都属于SIMD机器。

多指令流单数据流机器(MISD)

MISD是采用多个指令流来处理单个数据流。由于实际情况中,采用多指令流处理多数据流才是更有效的方法,因此MISD只是作为理论模型出现,没有投入到实际应用之中。

多指令流多数据流机器(MIMD)

MIMD机器可以同时执行多个指令流,这些指令流分别对不同数据流进行操作。最新的多核计算平台就属于MIMD的范畴,例如Intel和AMD的双核处理器等都属于MIMD。

本书所讲述的主要内容就是围绕多核计算平台而来的,下面就来介绍一下多核的硬件结构。

2.多核CPU硬件结构

多核CPU是将多个CPU核集成到单个芯片中,每个CPU核都是一个单独的处理器。每个CPU核可以有自己单独的Cache,也可以多个CPU核共享同一Cache。下图便是一个不共享Cache的双核CPU体系结构。

在现代的多核硬件结构中,内存对多个CPU核是共享的,CPU核一般都是对称的,因此多核属于共享存储的对称多处理器(Symmetric Multi-processor,SMP)。

在多核硬件结构中,如果要充分发挥硬件的性能,必须要采用多线程(或多进程)执行,使得每个CPU核在同一时刻都有线程在执行。

和单核上的多线程不同,多核上的多个线程是在物理上并行执行的,是一种真正意义上的并行执行,在同一时刻有多个线程在并行执行。而单核上的多线程是一种多线程交错执行,实际上在同一时刻只有一个线程在执行。

3.多核编程模型

前面谈到过多核属于共享存储的SMP,但实际上SMP系统出现在多核之前,服务器硬件中就广泛采用多个CPU构成的SMP系统,如双CPU、四CPU的服务器很早就出现了。多核CPU系统中的编程和多CPU的SMP系统的编程模型是一致的,都属于共享存储的编程模型,在本书中把它叫做多核编程,实际上并不限于在多核CPU系统中的编程,而是可以应用于共享存储的SMP系统中的编程。


原文来自

http://book.51cto.com/art/201004/197196.htm

来自《多核计算与程序设计》周伟明

出版社:华中科技大学出版社 出版日期:2009年3月 ISBN:978-7-5609-5069-9

分享到:
评论

相关推荐

    SISD、MIMD、SIMD、MISD计算机的体系结构

    ### SISD、MIMD、SIMD、MISD 计算机的体系结构 #### 计算平台介绍 1972年,Flynn教授提出了著名的计算平台分类法,这一分类法主要依据指令流(Instruction Stream)与数据流(Data Stream)的不同组合来划分不同的...

    计算机体系结构和分类

    Micheak Flynn 在 1972 年根据指令和数据流概念提出了不同计算机系统结构的一种分类方法,这种分类方法将计算机分为四种类型:单指令流单数据流计算机(SISD)、单指令流多数据流计算机(SIMD)、多指令流单数据流...

    flynn分类法讲解

    这一分类法为理解不同类型的处理器和计算机体系结构提供了基础框架,对于架构师来说,掌握Flynn分类法有助于设计和优化高性能计算系统。 Flynn分类法主要基于两个维度进行分类:指令流(Instruction Stream)和数据...

    东大-计算机体系结构笔记

    根据 Flynn 分类法,计算机系统结构被分为四种类型: 1. SISD(单指令流单数据流):只有一个指令流和一个数据流,如传统的冯诺依曼架构。 2. SIMD(单指令流多数据流):适用于并行处理大量相同数据,如图像处理。 ...

    计算机体系结构第2版课后答案(王志英版)

    Flynn分类法(Flynn's taxonomy)是计算机体系结构领域的另一个基本概念,它根据指令流和数据流的性质,将计算机系统分为单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)和多指令流...

    计算机组成与体系结构.pdf

    Flynn分类法将计算机系统分为四类:单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)和多指令流多数据流(MIMD)。 单指令流单数据流(SISD)是一种传统的顺序执行的单处理器计算机...

    计算机体系结构知识点汇总情况

    计算机系统结构分类法有 Flynn 分类法和氏分类法,Flynn 分类法将计算机系统结构分为四类:单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)和多指令流多数据流(MIMD)。计算机设计...

    【山东大学】计算机体系结构复习资料

    Flynn分类法是计算机系统的一种分类方法,依据指令流和数据流的组合,将计算机分为单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)和多指令流多数据流(MIMD)四种类型。Amdahl定律则用于...

    计算机体系结构1-9章答案1

    计算机系统结构是研究计算机系统的核心概念,它...Flynn分类法基于指令流和数据流的多倍性,将计算机结构分为SISD、SIMD、MISD和MIMD四类。这些概念共同构成了计算机科学的基础,影响着硬件和软件的设计、开发和优化。

    计算机体系结构课后习题-部分答案.pdf

    30. Flynn 分类法:是按照指令流和数据流的多倍性进行分类,把计算机系统的结构分为:(1)单指令流单数据流 SISD(2)单指令流多数据流 SIMD(3)多指令流单数据流 MISD(4)多指令流多数据流 MIMD。

    计算机体系结构-课后习题答案-张晨曦著.pdf

    14. Flynn分类法:根据指令流和数据流的多倍性,计算机系统结构可以分为单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)、多指令流多数据流(MIMD)等类型。这是计算机体系结构领域...

    计算机体系结构复习精辟整理.doc

    Flynn 分类法把计算机系统的结构分为四类:单指令流单数据流 SISD、单指令流多数据流 SIMD、多指令流单数据流 MISD、多指令流多数据流 MIMD。 八、数据表示 数据表示是计算机硬件能够直接识别、指令集可以直接调用...

    计算机体系结构知识点.doc

    Flynn分类法根据指令流和数据流的数目将计算机分为SISD、SIMD、MISD和MIMD四类。这些分类有助于理解计算机处理数据的方式。 在性能评估方面,系统加速比是衡量改进前后程序执行时间的指标,而CPI(Cycles Per ...

    计算机体系结构课后习题原版答案_张晨曦著

    Flynn分类法将计算机系统分为SISD、SIMD、MISD和MIMD四类,基于指令流和数据流的数量。这些分类有助于理解和设计不同类型的并行计算系统。 计算机系统结构、组成和实现之间的关系体现在设计过程中。例如,确定主存...

    计算机组成与体系结构.doc

    Flynn提出的Flynn分类法,将计算机系统分为SISD、SIMD、MISD和MIMD四种类型,它们分别代表了不同的并行处理能力。SISD对应单处理器系统,适用于串行任务;SIMD适用于并行处理任务,可以同时对大量数据执行相同操作...

    高级计算机体系结构知识点.doc

    另一方面,Flynn分类法则依据指令流和数据流的多倍性,分为SISD、SIMD、MISD和MIMD四种类型。 计算机性能优化常常基于Amdahl定律,它指出系统性能的提升受限于可改进部分在整体中的比例。性能指标如响应时间、CPU...

    计算机体系结构复习.doc

    8. Flynn 分类法和氏分类法:Flynn 分类法依据指令流和数据流的多倍性,将计算机分为SISD、SIMD、MISD和MIMD四类;氏分类法则基于系统的最大并行度进行分类。 9. 定量分析技术:如Amdahl定律说明了优化部分系统组件...

    计算机系统结构张晨曦版课后答案.pdf

    根据 Flynn 分类法,计算机系统结构可以分为四类:单指令流单数据流SISD、单指令流多数据流SIMD、多指令流单数据流MISD和多指令流多数据流MIMD等。 2. 计算机系统结构的其他概念 2.1 系统加速比 系统加速比是指对...

Global site tag (gtag.js) - Google Analytics