MPI的点对点通讯详解.pdf

MPI的点对点通讯详解.pdf

ID:54592695

大小:211.51 KB

页数:2页

时间:2020-05-02

MPI的点对点通讯详解.pdf_第1页
MPI的点对点通讯详解.pdf_第2页
资源描述:

《MPI的点对点通讯详解.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、网络与通信《微计算机信息)2ol2年第28卷第1期文章编号:1008—0570(2012)01—0116—02MPl的点对点通讯详解MPI’spointtopointcommunicationfunctionexplanation(武汉生物工程学院)贺杰HEJie摘要:随着人们对高性能计算研究的深入,各方面的并行计算开发语言也应运而生。本文以当前甚为流行的MPI(MessagePassinglnterface)~例,对其通信功能进行分类,并详细的讲解其通讯功能中最常用的点对点通讯。关键词:进程gl;上下文:通讯子中图分类号:

2、TP338.6文献标识码:AAbstract:S0rfsofdevelopmentlanguagesemergeashighperformancecomputingresearchadvanced.Thispapercategorizethemostpopularmessagepassinginterfacebyitscommunicationfunction,oneofwhichpointtopointisdemonstratedindetails.Keywords:group;context;communicator并行

3、算法设计是将一个任务分解为多个可同时执行的子被阻塞到消息发送为止。示例图如下任务,这些子任务分别运行在不同的处理器上,通过进程之间的进程0:(发送)进程I:(接收)MPIs曲4、(&s~ndbu~一1)MPIRecn(&recvbuf1.0.)数据交换完成同一个任务,其中有效的数据划分方法及高效的ll阻塞ll阻塞JlScndbuf拷贝到sysbul~t,从源进程接收到sysbufl通信,是其成功的关键。高效的通信指尽量减少进程间的数据交’SysbufO发送到目标进程I把数据从sysbufl拷贝到recvbuf5en~tf区可

4、重用Recvbuf区接收到正确数据流,或以尽可能快的方式交流。MPI提供了丰富的进程问数据通图1阻通讯示意图讯函数。总体上分通讯域内部通讯和通讯域间的通讯。若两个进程同时向(从)对方发送(接受)消息,除非有足够的通讯域内部通讯又可分为点对点通讯即单进程与单进程系统缓冲区,否则因为双方都等待着发送,双方不能执行接收,出之间的通讯f这是最基本的)和组通讯。本文只对点对点的通讯现死锁::进行详解。组通讯在实现进程数据交换的同时还可以进行数据进程O:MPI_Send(buf,buflenl,MPI_INT,1,tagl,comm);

5、的相应计算.属MPI高级运用方面在此不作探讨。MPIMPI点对点通讯指两个进程之间的通讯,这两个进程属于_Recv(buf2,buflen2,MPI_INT,1,tag2,comm.,&status);进程1:MPI_Send(bur2,buflen2,MPI_INT,0,tag2,comm);相同或不同的进程~[(group)。一般情况下,除非源或标志使用通MPI配符(wildcard),接收者只接收由源或标志及通讯子指定的消息。_Recv(bufl,buflenl,MpI_INT,0,tag1,comm.,&status

6、);若两个进程同时从对方接收消息,便出现死锁:使用MPI_ANY—SOURCE表示接收任何进程发送的消息;使用进程0:MPI_RecvCouf2,buflen2,MPI_INT,1,tag2,comm.,&sta-MPIANY—_TAG表示接收任何标志的信息。这两个标志在组通tus);信中经常使用。MPI点对点通讯包括阻塞通讯fblockingc0m—MPImunication),非阻塞通讯non_Send(buf1,buflenI,MPI_INT,1,tagl,comm);—blockingcommunication)及持

7、久通进程hMPI—Recv(buf,buflenl,MPI_INT,0,tag1,comm.,&sta-讯(persistentcommunication)。其中阻塞通讯和非阻塞通讯又包tus);含了3种具体通讯方式:缓存通讯、同步通讯以及接收就绪通MPISend(bur2,buflen2,MPI_INT,0,tag2,comm);讯。以下详细介绍这几种通讯:2非阻塞通讯1阻塞通讯MPI的非阻塞通讯操作分:开始及完成两个阶段,允许在两MPI的标准发送及接收函数都是阻塞的。接收者在调用函个阶段中执行其他计算。即实现通讯与计算的

8、重叠进行,这也是数MPI_Recv后被阻塞,直到收到匹配的消息为止:但发送者的节约资源.提高计算速度的常用方法。发送者调用函数阻塞比较复杂,当发送者调用函数MPISend后被阻塞。在此期MPI[send或接收者调用函数MPl_[recv后,可执行其它计算。间,系统会先把发送者的发送缓冲区中

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。