- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MPI并行编程
MPI并行编程 报告人:李俊照 内容 1、MPI并行编程简介 2、efund并行的结果分析 3、主程序的并行思路 MPI并行编程简介 主/从式 主进程将任务分发到从进程分别计算,再收集计算结果,比如计算1+…+100,可以分成两部份。进从程计算1+..+50和51+..+100,主进程收集结果再相加 对等式 每个进程相对独立计算各自的任务 比如要计算1+…+100和1*…*100,可以由两个进程独立计算 混合模式 主进程分发完任务后,参与计算 如计算1+..+100,主进程可以自己计算1..33,分发任务34..66和67..100到两个从进程。可以提高效率 一个简单的MPI程序 include mpif.h‘ integer myid,numprocs,ierr,rc call MPI_Init(ierr) call MPI_Comm_rank(MPI_COMM_WORLD,myid,ierr) call MPI_Comm_size(MPI_COMM_WORLD,numprocs,ierr) //添加需要并行的程序 Write(*,*) Hello World! process is :,myid // call MPI_Finalize(rc) 运行的结果 MPI初始化 call MPI_Init(ierr) Integer ierr MPI结束 call MPI_Finalize(ierr) Integer ierr 当前进程标识 call MPI_Comm_rank(MPI_COMM_WORLD,myid,ierr) In MPI_COMM_WORLD 为进程所在的通信域 Out Integer myid,ierr 通信域包含的进程数 Call MPI_Comm_size(MPI_COMM_WORLD,numprocs,ierr) In MPI_COMM_WORLD Out Integer numprocs,ierr 通信域 一个通信域是一个进程组加上一个现场,进程组是所有参加通信的进程的集合,如果一共有N个进程参加通信,则进程编号从0到N-1;现场提供一个相对独立的通信区域 MPI消息 MPI消息包括信封和数据两部份 信封:<源/目,标识,通信域> 数据:<起始地址,数据个数,数据类型> MPI_Send(buf,count,datatype,dest,tag,comm) 消息数据 消息信封 In buf,count,datatype,dest,tag,comm 消息接收 MPI_Recv(buf,count,datatype,source,tag,comm,status) In count,datatype,source,tag,comm Out buf,status(返回状态) MPI类型匹配:数据类型要一致 阻塞通信与非阻塞通信 非阻塞消息发送 MPI_ISend(buf,count,datatype,dest,tag,comm,request,ierr) In buf,count,datatype,dest,tag,comm Out request,ierr Request(返回的非阻塞通信对象) 非阻塞消息接收 MPI_IRecv(buf,count,datatype,source,tag,comm,request,ierr) In buf,count,datatype,source,tag,comm Out request,ierr 非阻塞通信的完成 MPI_Wait(request,status) In request Out status 组通信 一对一 编写安全的通信 If (rank.eq.0) then Call MPI_Recv(recvbuf,count,real,1,tag,comm,status,ierr) Call MPI_Rend(sendbuf,count,real,1,tag,comm,ierr) Else if (rank.eq.1) Call MPI_Recv(recvbuf,count,real,0,tag,comm,status,ierr) Call MPI_Rend(sendbuf,count,real,0,tag,comm,ierr) Endif 例子 Myid:本身进程号 Numprocs:总的进程数 For(I=myid+1;I=n;I+=numprocs) /*每一个进程计算一部份矩形的面
您可能关注的文档
- ChinaUser.doc
- C)15.doc
- Delphi簡介.ppt
- Detectionofdifferentiallyexpressedgenes.ppt
- DEV332.ppt
- DEV201.ppt
- E-STARGlobalEmployeeRecognitionProgramManagerGuideto.ppt
- elluserunit3.ppt
- elearn_voc_service_ja.ppt.ppt
- EWA042512QR7.doc
- MPLAB-IDEWorkshop.ppt
- moodle使用手册——教师版.doc
- N1111.ppt
- NNC1.doc
- No.2実用部材の疲労強度に関する研究.ppt
- NSC11-NoticeofAlterationofShareCapital更改股本通知書.doc
- NSC13-NoticeofRedenominationofShareCapital.doc
- NSC15-NoticeofVariationofRightsAttachedtoShares更改股份.doc
- NSC14-NoticeofReconversionofStockintoShares股額再轉換為.doc
- NSC2-ReturnofShareRedemptionorBuy-Back贖回或回購股份.doc
最近下载
- 锅炉本体检修工职业技能鉴定高级工试题.docx VIP
- 初中数学重点知识点梳理汇总.docx VIP
- [中国青铜器]01.第一章 概论.pdf VIP
- 德国探亲签邀请函中德文对照.docx
- 2024山西太原市古交市招聘劳动保障工作站和社区低保工作站人员笔试历年典型考题及考点剖析附答案带详解.docx VIP
- 2025年高等教育自学考试马克思主义基本原理概论真题及模拟试题汇编.doc VIP
- it审计的组织与实施(培训课件).ppt VIP
- 2025社区两保人员考试真题及答案.doc VIP
- 《春江花月夜》教学设计及课堂镜头.doc VIP
- 肿瘤多学科综合治疗模式与个体化治疗研究进展.docx VIP
文档评论(0)