- 1、本文档共121页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
05-并行计算_MPI_v2
关 雪 峰
测绘遥感国家重点实验室
Warm up
网络段子:
交通基本靠走,通讯基本靠吼,取暖基本靠抖…..
问题:
为什么要“通讯基本靠吼”?
“吼”给“谁”听?
怎么保证“吼”的正确传递?
集群特点:
• 每一个节点机都是一个完整的工作站或PC机
• 各节点机通过成本较低的商业网络连接起来
• 各节点内都有本地磁盘
• 一个完整的操作系统驻留在每个节点中
消息传递模型
通过进程来分配任务
第四章 集群环境并行程序设计
• 主要内容
1. MPI 基础
2. 点对点通信
3. 群集通信
4. MPI扩展数据结构
5. 集群作业系统
什么是MPI?
• MPI (Massage Passing Interface ):消息传递函数库的标准规范,
由MPI论坛开发,支持Fortran和C 。
• 一种API 函数库描述,不是一种语言。共有上百个函数调
用接口,在Fortran和C语言中可以直接对这些函数进行调
用
• MPI是一种标准或规范的代表,而不是特指某一个对它的
具体实现
• MPI是一种消息传递编程模型,并成为这种编程模型的代
表和事实上的标准
MPI的发展过程
• 发展阶段
• MPI 1.1: 1995
• MPI 1.2~2.0:动态进程, 并行I/O, 支持F90和C++(1997).
• MPI 3.0
• MPI-3.0 is a major update to the MPI standard. The updates include the extension
of collective operations to include nonblocking versions, extensions to the one-
sided operations, and a new Fortran 2008 binding. In addition, the deprecated
C++ bindings have been removed, as well as many of the deprecated routines and
MPI objects
为什么要用MPI?
MPI规范强调:
• Practical (实用性)
• Portable (可移植性)
• Efficient (高效性)
• Flexible (可扩展性)
• 高可移植性
• MPI 已在IBM PC机上、MS Windows上、所有主要的Unix工作站上和所
有主流的并行机上得到实现。使用MPI作消息传递的C或Fortran并行程
序可不加改变地运行在IBM PC 、MS Windows、Unix工作站、以及各种
并行机上。
两种内存模型
• 共享存储
CPU CPU CPU CPU CPU
内 存
• 分布式存储
CPU CPU CPU CPU CPU
内存 内存 内存 内存 内存
MPI开源实现
• MPICH 3.1.3
• Argonne National Laboratory
• MVAPICH: MPI over InfiniBand, Omni-Path, Ethernet/iWARP, and RoCE
• OpenMPI 1.82
• FT-MPI from University of Tennessee
• LA-MPI from Los Alamos National Laboratory
• LAM/MPI from Ohio Supercomputer Center
• PACX-MPI team at
文档评论(0)