欢迎来到天天文库
浏览记录
ID:59379038
大小:312.50 KB
页数:7页
时间:2020-01-26
《基于MPI的并行计算程序的设计测试报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.word格式.中南大学CENTRALSOUTHUNIVERSITY基于MPI的并行计算程序设计测试报告学院:软件学院专业:软件工程学号:姓名:指导教师:20**-**-**.专业.专注..word格式.基于MPI的并行计算程序设计测试报告一.并行计算概述1.采用并行计算的原因:²串行程序速度提升缓慢。从串行程序的发展来讲,一方面,物理速度渐变发展,芯片速度每18个加快一倍,而内存传输率每年加快9%。另一方面,物理极限无法突破,芯片晶体管接近了原子极限,传输速度不可能超过光速。²可以加快速度。更短的时间内解决相同的问题,相同的时间内解决
2、更多的复杂的问题。²可以加大规模。并行计算可以计算更大规模的问题。2.并行计算简介并行计算(ParallelComputing)是指同时使用多种计算资源解决计算问题的过程。为执行并行计算,计算资源应包括一台配有多处理机(并行处理)的计算机、一个与网络相连的计算机专有编号,或者两者结合使用。并行计算的主要目的是快速解决大型且复杂的计算问题。此外还包括:利用非本地资源,节约成本,使用多个“廉价”计算资源取代大型计算机,同时克服单个计算机上存在的存储器限制。为利用并行计算,通常计算问题表现为以下特征:1.将工作分离成离散部分,有助于同时解决;
3、2.随时并及时地执行多个程序指令;3.多计算资源下解决问题的耗时要少于单个计算资源下的耗时。对并行处理的需求极大的促进了并行技术的发展,因此许多大规模并行计算机系统相继问世,如PVP、SMP、MPP、DSM等。但传统的并行系统的高成本性、专用性、系统规模的不可伸缩性等使其难以推广到普通的商业应用和科学计算中。高性能集群系统因其性能价格比高、高可复用性、强可扩展性、用户编程方便等优点在科学研究中得到了广泛的应用。并行计算机系统的出现就需要对程序进行并行设计,这种需求使得各种不同的并行编程环境得到了很大发展。现行高性能计算机系统中使用的并行
4、编程环境主要有两种:PVM(ParallelVirtualMachine)和MPI(MessagePassingInterface)。PVM的开发始于1988年,由美国橡树岭国家实验室发起。目前很多人采用MPI作为并行开发环境。3.并行计算的相关内容²存储方式。共享内存:ccNUMA,SMP;分布式内存:MPP,Cluster。²三种计算模式。Uniprocessor,sharedmemory,distributememory.²并行化分解方法。任务分解:多任务并行执行;功能分解:分解被执行的计算;区域分解:分解被执行的数据。²并行算法
5、的分类。按运算的基本对象:分数值并行算法和非数值并行算法。按进程间的依赖关系:分同步并行算法,异步并行算法和纯并行算法。按并行计算的任务大小:分粗粒度并行算法,中粒度并行算法和细粒度并行算法。.专业.专注..word格式.一.MPI简介MPI是一个库而不是一门语言许多人认为MPI就是一种并行语言这是不准确的。但是按照并行语言的分类,可以把FORTRAN+MPI或C+MPI,看作是一种在原来串行语言基础之上扩展后得到的并行语言。MPI库可以被FORTRAN77/C/Fortran90/C++调用,从语法上说,它遵守所有对库函数/过程的调用
6、规则和一般的函数/过程没有什么区别。MPI是一种标准或规范的代表而不特指某一个对它的具体实现迄今为止所有的并行计算机制造商都提供对MPI的支持可以在网上免费得到MPI在不同并行计算机上的实现一个正确的MPI程序可以不加修改地在所有的并行机上运行。MPI是一种消息传递编程模型并成为这种编程模型的代表和事实上的标准MPI虽然很庞大但是它的最终目的是服务于进程间通信这一目标的。二.MPI编程在基于MPI编程模型中,计算是由一个或多个彼此通过调用库函数进行消息收、发通信的进程所组成。在绝大部分MPI实现中,一组固定的进程在程序初始化时生成,一般
7、情况下,一个处理器只生成一个进程。这些进程可以执行相同或不同的程序(相应地称为单程序多数据(SPMD)或多程序多数据(MPMD)模式)。进程间的通信可以是点到点的,也可以是集合的。MPI只是为程序员提供了一个并行环境库,程序员通过调用MPI的库程序来达到程序员所要达到的并行目的,MPI提供C语言和Fortran语言程序接口。其中的6个最基本的函数就能编写一个完整的MPI程序去求解很多问题。它们是:1.MPI_INIT;2.MPI_FINALIZE;3.MPI_COMM_SIZE确定进程数;4.MPI_COMMON_RANK确定自己的进程
8、标识符;5.MPI_SEND:发送一条消息;6.MPI_RECV:接收一条信息。MPI程序的一般结构:图1.专业.专注..word格式.一.并行程序设计及测试准备工作1.准备工作:-操作系统分别为Winse
此文档下载收益归作者所有