网站导航:首页 -> 软件水平考试 -> 软件水平考试指导 -> 三言两语谈并行编程模式

三言两语谈并行编程模式

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

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

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

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

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

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

  在现今流行的beowulf集群上,mpi和pvm是可以实现的,不管使用千兆网,sci,还是ib;但是,在这种集群上openmp是没有办法实现的。要实现openmp编程,至少要有4/8路处理器的smp系统以及相应的编程环境;要实现数据并行编程模式,光有免费的beowulf+oscar环境远远不够。