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计算机的体系结构的Flynn分类法相关推荐

  1. 转SISD、MIMD、SIMD、MISD计算机的体系结构的Flynn分类法

    1. 计算平台介绍 Flynn于1972年提出了计算平台的Flynn分类法,主要根据指令流和数据流来分类,共分为四种类型的计算平台,如下图所示: 单指令流单数据流机器(SISD) SISD机器是一种传 ...

  2. SISD、MIMD、SIMD、MISD计算机的体系结构的Flynn分类法

    1966年,MichealFlynn根据指令和数据流的概念对计算机的体系结构进行了分类,这就是所谓的Flynn分类法.Flynn将计算机划分为四种基本类型,即SISD.MIMD.SIMD.MISD. ...

  3. 计算机体系结构分类-Flynn分类法

    计算机体系结构分类-Flynn分类法 文章目录 计算机体系结构分类-Flynn分类法 体系结构类型 单指令流单数据流SISD 结构 控制部分 处理器: 主存模块: 特性 代表 单指令流多数据流SIMD ...

  4. 计算机组成 并行体系 Flynn分类法

    并行性是指计算机系统具有的同时运算或同时操作的特性.包括同时性和并发性. 同时性 两件事同时发生 并发性 两件事在时间间隔内发生 Flynn分类法 SISD Single Instruction-st ...

  5. 【软件设计师】计算机组成原理与体系结构-Flynn分类法

    计算机组成原理与体系结构-Flynn分类法 Flynn分类法 Flynn分类法 Flynn分类法是一种计算机体系结构的分类方法.通过这种分类方法,我们可以把常见的计算机进行分类.分类依据有两个指标,分 ...

  6. 计组-计算机体系结构分类-Flynn

    计算机体系结构分类-Flynn 单指令流单数据流SISD 控制部分:一个 处理器:一个 主存模块:一个 代表: 单处理系统 单指令流多数据流SIMD 控制部分:一个 处理器:多个 主存模块:多个 关键 ...

  7. 计算机体系结构分类-Flynn

    Flynn分类法将我们常见的计算体分类成多个类别. 他的分类依据是两个指标:指令流.数据流. 无论是指令流还是数据流都分为两种类型. 所以一共组合了四种这种分类体系结构:单指令流单数据流.单指令流多数 ...

  8. 计算机系统结构实验报告Linux,计算机操作系统体系结构实验报告.doc

    操作系统实验报告 实验目的: 随着操作系统应用领域的扩大,以及操作系统硬件平台的多样化,操作系统的体系结构和开发方式都在不断更新,目前通用机上常见操作系统的体系结构有如下几种:模块组合结构.层次结构. ...

  9. 浅谈操作系统OS与计算机软硬件体系结构,自顶贯穿性与行为回归硬件性

    操作系统OS与计算机软硬件体系结构 使计算机更好用! 这是操作系统的根本要义!! 操作系统这个概念基本上以后会讲一路的,今天的话就基本上讲一下轻量化的概念. 所以操作系统到底是什么?操作系统首先是软件 ...

最新文章

  1. 图论(二分图构造) ---- 二分图的性质 C. Arpa’s overnight party and Mehrdad’s silent entering
  2. [转载]常用CASE工具介绍
  3. Python-----学了今天,忘了昨天.
  4. 自然语言处理-LDA主题模型
  5. 【万字长文】Spring Cloud Alibaba 开箱即用!
  6. 雷达篇(四)雷达工作波段
  7. 第0课:郭盛华课程_零基础学Visual Basic编程语言
  8. 经济法基础之企业所得税思维导图
  9. activiti选择上一步下一步处理人
  10. 青岛大学计算机分专业吗,青岛大学热门专业有哪些?附青岛大学最低分专业名单...
  11. pandas基础用法详解
  12. Codeforces1575 D. Divisible by Twenty-Five(dp)
  13. 华为路由器命令手册_用数据说话,华为路由Q2 Pro与网件R7800对比测评
  14. 《数据库系统概论》:DBA的职责有些
  15. oracle修改表中字段名,oracle如何修改表字段名
  16. lisp修改天正标高值_天正CAD里面如何修改标高三角形尺寸,一直太大?
  17. 百度周景博:POI知识图谱的构建及应用
  18. SSM毕设项目基于的NBA球队管理系统8x21a(java+VUE+Mybatis+Maven+Mysql)
  19. 独家 | 数据分析@爱可可-爱生活是否利用机器学习算法运营微博
  20. island of java_专业英语试卷

热门文章

  1. 人人5功盖世时候,我在支持国产
  2. 抖音蓝V如何认证,蓝V号与普通号的区别?
  3. linux proftpd 用户,linux之proftpd搭建(随时盖楼)
  4. wifi破解神器殃及池鱼后
  5. php开发APP接口 接收客户端的图片
  6. 【Python】如何用pyth做游戏脚本(太简单了吧)
  7. Android使用xml自定义软键盘效果(附源码)
  8. 一个苏州IT人的5年挨踢经历-------面试,薪资,企业,经历全方位揭示(之二)
  9. 1.19(Cake Baking)
  10. 天气数据API接口记录