Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2093017
  • 博文数量: 454
  • 博客积分: 10921
  • 博客等级: 上将
  • 技术积分: 5396
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-15 15:20
个人简介

伪IT男

文章分类

全部博文(454)

文章存档

2016年(2)

2013年(6)

2012年(17)

2011年(29)

2010年(24)

2009年(54)

2008年(53)

2007年(202)

2006年(67)

分类:

2007-07-25 23:34:34

作者: 陈兴
并行编程模式主要有三种,那么三种模式的优劣又是怎样的呢?请看下文:

  并行编程模式主要有以下三种:

  共享地址空间模式:以OpenMP为代表,主要是利用添加并行化指令到顺序程序中,由编译器完成自动并行化。

  消息传递模式:以MPI为代表,PVM是消息传递模式的一个变种。

  数据并行模式:比较少见,但以其独特的处理方式受到特定用户群的喜欢。

  我可以这样打比方:作并行计算好比是盖楼房,你有了Beowulf和MPI就好比是有了砂石,水泥和钢材,你可以盖最美的房子,但你必须使用最原始状态的原材料,付出可观的智力劳动;你有了OpenMP就好比是有了预制板和各种预制件,可以非常快速地造房子,事半功倍;你有了数据并行环境,可以比作你有了包工头,很多事情您就可以完全依靠他了。也许我的比喻方式不是很恰当,但是三种编程模式的优劣、效率是很有差别的,可以不夸张地说OpenMP比MPI要容易很多倍。

  在现今流行的Beowulf集群上,MPI和PVM是可以实现的,不管使用千兆网,SCI,还是IB;但是,在这种集群上OpenMP是没有办法实现的。要实现OpenMP编程,至少要有4/8路处理器的SMP系统以及相应的编程环境;要实现数据并行编程模式,光有免费的Beowulf+OSCAR环境远远不够。

阅读(1024) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~