- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MPI编程课件,mpi编程,mpi并行编程,mpi编程实例,mpi并行编程入门,mpi编程电缆,数控编程课件,网络编程课件,ppt课件,课件网
基于消息传递的并行编程(MPI)
1
消息传递功能需求
•共享存储编程(OpenMP)
•定义并行区(omp parallel)
•设置并行度
•并行结构(omp for; omp (parallel) sections)
• 任务分配(schedule)
•数据管理/变量分类(omp private/shared)
• 同步控制(omp critical…)
•消息传递编程
•定义并行区
•设置并行度(静态、动态)
•程序员完成任务分配
•通信管理(消息管理、通信模式)
• 同步控制(?)
2
消息传递接口(Message-Passing Interface)
在当前所有的消息传递软件中, 最重要最流行的是MPI,
它能运行在所有的并行平台上, 包括SMP. 二者已经在
Windows这样的非Unix平台上实现. 程序设计语言支持
C/C++, Fortran, Java.
3
消息传递库(Message-Passing Libraries)
1.1 MPI(Message Passing Interface) 简介
1992年4月 组建了一个制定消息传递接口标准的工作组
1992年10月 初稿形成,主要定义了点对点通信接口
1993年1月 第一届MPI会议在Dallas举行
1993年2月 公布了MPI-1修定版本
1993年11月 MPI的草稿和概述发表在Supercomputing‘93的会议论文集中
1994年5月 MPI标准正式发布
1994年7月 发布了MPI标准的勘误表
1997年 MPI论坛发布了一个修订的标准, 叫做MPI-2, 同时, 原来的MPI更名为MPI-1
目标: 是提供一个实际可用的、可移植的、高效的和灵活的
消息传递接口标准. MPI以语言独立的形式来定义这个接口库,
并提供了与C、Fortran和Java语言的绑定. 这个定义不包含
任何专用于某个特别的制造商、操作系统或硬件的特性. 由
于这个原因, MPI在并行计算界被广泛地接受.
4
消息传递库(Message-Passing Libraries)
MPI的实现
建立在厂家专用的环境之上
IBM SP2的POE/MPL,
Intel Paragon的OSF/Nx
公共的MPI环境:
LAM(Local Area Multicomputer) Ohio超级计算中心
MPICH Argonne国家实验室与Mississippi州立大学
Intel MPI Intel
MPICH是MPI在各种机器上的可移植实现,可以安装在几乎所有的平台上:
PC
工作站
SMP
MPP
5
COW
基于Linux系统安装MPICH
•MPICH包的获取
• /mpi/
•安装
• 解压:tar zxvf mpich-1.2.7p1.tar.gz
• Linux完全安装
• 配置和编译:cd mpich ;./configure ;make; make install
• 设置路径:将mpich/bin 加入缺省查找路径
• 设置手册页路径:将mpich/man加入到手册页路径
文档评论(0)