免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4116 | 回复: 4
打印 上一主题 下一主题

请问多指令流多数据流(MIMD)计算机? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-10 21:46 |只看该作者 |倒序浏览
哪位大侠有在通用MIMD上编写过程序的,或对MIMD有了解的,能否介绍下。谢谢!
1.很疑惑MIMD上编程是否和我们通常的SISD上类似,不知道是怎样的情况?
2.如果和SISD上编程类似,那么我猜想,巨大的指令级并行的压力肯定要留给编译器解决了,估计效果不是很好。
3.另外,对于MIMD的汇编指令编程,猜想应该允许人为安排并行指令。即程序中应该允许设定哪些指令能够并行执行。这样既可以减轻编译器的工作量,另外更大的好处是并行效率可能会比纯粹用编译器要来的高。不知MIMD的编译器实际如何解决这一问题,有否提供此机制?
4.对于MIMD的高级语言编程,个人实在无法理解如何做到指令并行的最大化,完全靠编译器???,不知道现在都是如何解决MIMD的高级语言的编译的?
5.考虑到程序空间的利用率,估计MIMD应该都为变长指令编码。不然会造成极大空间浪费。不知是否是这样。

[ 本帖最后由 fineamy 于 2008-10-10 21:59 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-10-10 22:23 |只看该作者
MIMD 是在x86平台上的吗?

论坛徽章:
0
3 [报告]
发表于 2008-10-10 22:43 |只看该作者

不是

刚查了下,现在好像
IBM PowerPC, Sun UltraSparc, DEC Alpha, HP 8000这几款CPU都是MIMD的。

下面是一个介绍

Flynn将计算机划分为四种基本类型,即SISD、MIMD、SIMD、MISD。
  


传统的顺序执行的计算机在同一时刻只能执行一条指令(即只有一个控制流)、处理一个数据(即只有

一个数据流),因此被称为单指令流单数据流计算机(Single Instruction Single Data,SISD)。


而对于大多数并行计算机而言,多个处理单元都是根据不同的控制流程执行不同的操作,处理不同的数

据,因此,它们被称作是多指令流多数据流计算机,即MIMD(Multiple Instruction Multiple Data,MIMD)计算机。
  


曾经在很长一段时间内成为超级并行计算机主流的向量计算机除了标量处理单元之外,最重要的是具有

能进行向量计算的硬件单元。在执行向量操作时,一条指令可以同时对多个数据(组成一个向量)进行

运算,这就是单指令流多数据流(Single Instruction Multiple Data,SIMD)的概念。因此,我们将向

量计算机称为SIMD计算机。


第四种类型即所谓的多指令流单数据(MultipleInstructionSingleData,MISD)计算机。在这种计算机

中,各个处理单元组成一个线性阵列,分别执行不同的指令流,而同一个数据流则顺次通过这个阵列中

的各个处理单元。这种系统结构只适用于某些特定的算法。

  

        相对而言,SIMD和MISD模型更适合于专用计算。在商用并行计算机中,MIMD模型最为通用,SIMD次

之,而MISD最少用。

  PII的MMX指令采用的是SISD,高性能服务器与超级计算机大多属于MIMD。


无缘相见啊,很疑惑MIMD的高级语言的编译到底怎么解决的????

论坛徽章:
0
4 [报告]
发表于 2008-10-10 22:46 |只看该作者

呵呵,这还有个家伙关于MIMD的一个问题,

转过来,发现对MIMD的并行性会有一个很直观的了解。

试确定在下列三种计算机系统中,计算下列表达式所用的时间。   
  S=(A1+B1)*(A2+B2)*(A3+B3)*(A4+B4)*(A5+B5)*(A6+B6)*(A7+B7)*(A8+B   
  其中,加法需用30ns,乘法需用50ns.而在SIMD和MIMD计算机中,数据由一个PE(处理单元)传送到另一个PE需要10ns,而在SISD计算机中数据传送时间可忽略不计。在SIMD计算机中PE间线性环连接(以单向方式传送数据),而在MIMD计算机中,PE间以全互连方式连接。   
  1。具有一个通用PE的SISD的计算机系统。   
  2。具有8个通用PE的SIMD的计算机系统。   
  3。具有8个CPU的MIMD的计算机系统。   
  答案:   
  1.       30*8+50*7=590(ns)   
  2.       30+50*3+10*7=250(ns)        
  3.       30+50*3+10*3=210(ns)   

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
5 [报告]
发表于 2008-10-11 13:45 |只看该作者
对于非SISD,全用汇编指令编程以获得最高的效率是不现实的,虽然理论上这样确实可以做到最高。在这个时候,编译器的优化起到非常重要的作用
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP