- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验三MPI程序进程间的通信 一 MPI进程间通信基本概念 MPI是一种消息传递模型,驻留在不同处理器上的进程通过传递消息相互通信,从而实现不同进程间的数据互访。 MPI是一种标准或规范,它的实现包括MPICH、LAM、IBM MPL等多个版本 MPI虽然很庞大,但是它的最终目的是实现进程间的通信 一 MPI进程间通信基本概念 消息的构成 MPI消息包括信封和数据两个部分 信封指出了发送或接收消息的对象及相关信息而 数据是本消息将要传递的内容 信封:源/目标识通信域 数据:起始地址数据个数数据类型 一 MPI进程间通信基本概念 通信域(Communicator): 一类进程的集合,且在该集合内,进程间可以相互通信; 任何MPI通信函数均必须在某个通信域内发生; MPI缺省的通信域MPI_COMM_WORLD,所有启动的MPI进程通过调用函数MPI_Init(),包含在该通信域内; 各进程通过函数MPI_Comm_size()获取通信域包含的(初始启动)的MPI进程个数; 一 MPI进程间通信基本概念 基础函数 MPI初始化 int MPI_Init(int *argc, char ***argv) MPI_Init是MPI程序的第一个调用,它完成MPI程序所有的初始化工作,所有MPI程序 的第一条可执行语句都是这条语句。 MPI结束 int MPI_Finalize(void) MPI_Finalize是MPI程序的最后一个调用,它结束MPI程序的运行,它是MPI程序的最后一条可执行语句。 一 MPI进程间通信基本概念 基础函数 当前进程标识 int MPI_Comm_rank(MPI_Comm comm, int *rank) comm 进程通信域 rank 返回进程在通信域中的标识 这一调用返回调用进程在给定的通信域中的进程标识号,有了这一标识号不同的进程就可以将自身和其它的进程区别开来,实现各进程的并行和协作。 一 MPI进程间通信基本概念 基础函数 通信域包含的进程数 int MPI_Comm_size(MPI_Comm comm, int *size) comm 进程所在通信域 size 返回通信域内进程数 这一调用返回给定的通信域中所包括的进程的个数,不同的进程通过这一调用得知在给定的通信域中一共有多少个进程在并行执行。 一 MPI进程间通信基本概念 基础函数 消息发送 int MPI_Send(void* buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm) buf 发送缓冲区的起始地址 count 将发送的数据的个数 datatype 发送数据的数据类型 dest 目的进程标识号 tag 消息标志 comm 通信域 一 MPI进程间通信基本概念 基础函数 消息接收 int MPI_Recv(void* buf, int count, MPI_Datatype datatype, int source, int tag,MPI_Comm comm, MPI_Status *status) buf 接收缓冲区的起始地址 count 最多可接收的数据的个数 datatype 接收数据的数据类型 source 接收数据的来源即发送数据的进程的进程标识号 tag 消息标识与相应的发送操作的表示相匹配相同 comm 本进程和发送进程所在的通信域 status 返回状态 一 MPI进程间通信基本概念 基础函数 广播 int MPI_Bcast(void* buffer,int count,MPI_Datatype datatype,int root, MPI_Comm comm) buffer 通信消息缓冲区的起始地址 count 将广播出去/或接收的数据个数 datatype 广播/接收数据的数据类型 root 广播数据的根进程的标识号 comm 通信域 一 MPI进程间通信基本概念 基础函数 MPI时间函数 double MPI_Wtime(void) MPI_WTIME返回一个用浮点数表示的秒数, 它表示从过去某一时刻到调用时刻所经历的时间。 一般为了测试某一段代码,可以在他前后加上一对 MPI_Wtime的调用,两次调用的返回值的差就是消耗的时间秒数 。 一 MPI进程间通信基本概念 基础函数 同步 int MPI_Barrier(MPI_Comm comm) comm 进程所在通信域 MP
您可能关注的文档
- 1.3线段的垂直平分线(第2课时).ppt
- lmsa10概率论和统计学的基本原理.ppt
- 1.3菱形的判定.ppt
- LoadRunner运行时设置.ppt
- LR中Linux的常用命令.ppt
- 1.4 平行线的性质2.ppt
- 1.3集合与常用逻辑语课件.ppt
- 1.4 线段、角的轴对称性(第1课时).ppt
- lv品牌历史、设计风格、经典作品.ppt
- 1.4 角平分线(1)性质定理与逆定理.ppt
- 吉安县公开招聘专职文明实践员笔试备考试题及答案解析.docx
- 2025重庆枫叶国际学校招聘教师笔试备考试题及答案解析.docx
- 游机队电玩自制联网教程-tplink.pdf
- 2025重庆新华出版集团招聘1人笔试模拟试题及答案解析.docx
- 2025宜宾高新丽雅城市产业发展有限公司公开招聘笔试模拟试题及答案解析.docx
- 2025云南保山市龙陵县勐糯镇人民政府招聘合同制专职消防员1人笔试模拟试题及答案解析.docx
- 11.1生活中常见的盐 九年级化学人教版下册.pptx
- 6.1法律保护下的婚姻 高二政治《法律与生活》课件(统编版选择性必修2)(新版).pptx
- 文昌市中小学教师校园招聘29人笔试模拟试题及答案解析.docx
- 10.1.5 常见的酸和碱(第5课时)课件-九年级化学人教版下册.pptx
文档评论(0)