一、编程基础(可下载使用).pdf

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四讲 消息传递编程接口MPI 一、MPI 编程基础 主要内容 MPI 安装、程序编译与运行 MPI 编程基础 MPI 程序基本结构 MPI 数据类型 消息发送和接收 MPI 一些常用函数 MPI 介绍 Message Passing Interface 消息传递编程标准,目前最为通用的并行编程方式 提供一个高效、可扩展、统一的并行编程环境 MPI 是一个库,不是一门语言,MPI 提供库函数/过程 供C/FORTRAN 调用 MPI 是一种标准或规范的代表而不特指某一个对它的 具体实现。迄今为止所有的并行计算机制造商都提供对 MPI 的支持 MPI 是一种消息传递编程模型,最终目的是服务于进 程间通信这一目标 MPI 介绍 MPI 的目标 较高的通信性能; 较好的程序可移植性; 强大的功能 MPI 的实现—— 免费版本 1994 年公布MPI 1.0 标准,1998 年公布2.0 标准 MPI 1.0 :MPICH 1.2.7 MPI 2.0 :MPICH2 1.0.7 MPI 商业版本 一些厂商也提供商业版的MPI 系统,许多是在MPICH 的基础上优化产生的 MPI 下载与安装 MPICH 下载 / MPICH 的安装 参考MPICH Install Guide MPICH 的使用 参考MPICH User Guide MPI 编程基本概念 MPI 进程 MPI 程序中一个独立参与通信的个体 MPI 进程组 MPI 程序中由部分或全部进程构成的有序集合 每个进程都被赋予一个所在进程组中唯一的序号(rank), 用于在该组中标识该进程,称为进程号,取值从0 开始 MPI 进程与通信器 MPI 通信器/通信子(Communicator) MPI 程序中进程间的通信必须通过通信器进行 通信器分为域内通信器 (同一进程组内的通信)和域间 通信器 (不同进程组的进程间的通信) MPI 程序启动时自动建立两个通信器: MPI_COMM_WORLD :包含程序中所有MPI 进程 MPI_COMM_SELF :有单个进程独自构成,仅包含自己 MPI 程序中,一个MPI 进程 由一个进程组和在该组中的进程号唯一确定;或 由一个通信器和在该通信器中的进程号唯一确定 进程号是相对进程组或通信器而言的,同一进程在不 同的进程组或通信器中可以有不同的进程号 MPI 消息 进程号是在进程组或通信器被创建时赋予的 空进程:MPI_PROC_NULL 与空进程通信时不做任何操作 消息(message) 一个消息指进程间进行的一次数据交换 一个消息由通信器、源地址、目的地址、消息标签、 和数据构成 第一个MPI Fortran 程序 mpif.h 是MPI相对于FORTRAN的头文件 program main include mpif.h character * (MPI_MAX_PROCESSOR_NAME) proc_name integer myid, numprocs, namelen, rc, ierr call MPI_INIT ( ierr ) call MPI_COMM_RANK ( MPI_COMM_WORLD, myid, ierr ) call MPI_COMM_SIZE ( MPI_COMM_WORLD, numprocs, ierr ) call MPI_GET_PROCESSOR_NAME (proc_name, namelen, ierr) write(*,10) myid, numprocs, proc_name 10 FORMAT(Hello, I am

文档评论(0)

gkok007 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档