




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中 南 大 学CENTRAL SOUTH UNIVERSITY 基于MPI的并行计算程序设计测试报告学 院: 软件学院 专 业: 软件工程 学 号: 姓 名: 指导教师: 20*-*-*基于MPI的并行计算程序设计测试报告一 并行计算概述1. 采用并行计算的原因: 串行程序速度提升缓慢。从串行程序的发展来讲,一方面,物理速度渐变发展,芯片速度每18个加快一倍,而内存传输率每年加快9%。另一方面,物理极限无法突破,芯片晶体管接近了原子极限,传输速度不可能超过光速。 可以加快速度。更短的时间内解决相同的问题,相同的时间内解决更多的复杂的问题。 可以加大规模。并行计算可以计算更大规模的问题。2. 并行计算简介并行计算(Parallel Computing)是指同时使用多种计算资源解决计算问题的过程。为执行并行计算,计算资源应包括一台配有多处理机(并行处理)的计算机、一个与网络相连的计算机专有编号,或者两者结合使用。并行计算的主要目的是快速解决大型且复杂的计算问题。此外还包括:利用非本地资源,节约成本,使用多个“廉价”计算资源取代大型计算机,同时克服单个计算机上存在的存储器限制。为利用并行计算,通常计算问题表现为以下特征:1.将工作分离成离散部分,有助于同时解决;2.随时并及时地执行多个程序指令;3.多计算资源下解决问题的耗时要少于单个计算资源下的耗时。对并行处理的需求极大的促进了并行技术的发展,因此许多大规模并行计算机系统相继问世,如PVP、SMP、MPP、DSM等。但传统的并行系统的高成本性、专用性、系统规模的不可伸缩性等使其难以推广到普通的商业应用和科学计算中。高性能集群系统因其性能价格比高、高可复用性、强可扩展性、用户编程方便等优点在科学研究中得到了广泛的应用。并行计算机系统的出现就需要对程序进行并行设计,这种需求使得各种不同的并行编程环境得到了很大发展。现行高性能计算机系统中使用的并行编程环境主要有两种:PVM(Parallel Virtual Machine)和MPI(Message Passing Interface)。PVM的开发始于1988年,由美国橡树岭国家实验室发起。目前很多人采用MPI作为并行开发环境。3. 并行计算的相关内容 存储方式。共享内存:ccNUMA,SMP;分布式内存:MPP,Cluster。 三种计算模式。Uniprocessor,shared memory,distribute memory. 并行化分解方法。任务分解:多任务并行执行;功能分解:分解被执行的计算;区域分解:分解被执行的数据。 并行算法的分类。按运算的基本对象:分数值并行算法和非数值并行算法。按进程间的依赖关系:分同步并行算法,异步并行算法和纯并行算法。按并行计算的任务大小:分粗粒度并行算法,中粒度并行算法和细粒度并行算法。二 MPI简介MPI是一个库而不是一门语言许多人认为MPI就是一种并行语言这是不准确的。但是按照并行语言的分类,可以把FORTRAN+MPI或C+MPI, 看作是一种在原来串行语言基础之上扩展后得到的并行语言。MPI库可以被FORTRAN77/C/Fortran90/C+调用,从语法上说,它遵守所有对库函数/过程的调用规则和一般的函数/过程没有什么区别。MPI是一种标准或规范的代表而不特指某一个对它的具体实现迄今为止所有的并行计算机制造商都提供对MPI的支持可以在网上免费得到MPI在不同并行计算机上的实现一个正确的MPI程序可以不加修改地在所有的并行机上运行。MPI是一种消息传递编程模型并成为这种编程模型的代表和事实上的标准MPI虽然很庞大但是它的最终目的是服务于进程间通信这一目标的。三 MPI编程在基于MPI编程模型中,计算是由一个或多个彼此通过调用库函数进行消息收、发通信的进程所组成。在绝大部分MPI实现中,一组固定的进程在程序初始化时生成,一般情况下,一个处理器只生成一个进程。这些进程可以执行相同或不同的程序(相应地称为单程序多数据(SPMD)或多程序多数据(MPMD)模式)。进程间的通信可以是点到点的,也可以是集合的。MPI只是为程序员提供了一个并行环境库,程序员通过调用MPI的库程序来达到程序员所要达到的并行目的,MPI提供C语言和Fortran语言程序接口。其中的6个最基本的函数就能编写一个完整的MPI程序去求解很多问题。它们是:1.MPI_INIT;2.MPI_FINALIZE;3.MPI_COMM_SIZE 确定进程数;4.MPI_COMMON_RANK 确定自己的进程标识符;5.MPI_SEND:发送一条消息;6.MPI_RECV:接收一条信息。MPI程序的一般结构:图1四 并行程序设计及测试准备工作1. 准备工作:- 操作系统分别为Win seven 和Win 2008 server- Microsoft .NET Framework 2.0- Microsoft Visual C+ 6.0- mpich2-1.0.6p1-win32-ia32.msi :mpich2的安装文件2. 环境搭建:2.1在两台机器上分别安装Microsoft .NET Framework 2.0和Microsoft Visual C+ 6.02.2 在两台机器上分别安装mpich2-1.0.6p1-win32-ia32.msi;2.3 安装完成后,其目录结构如下(假定安装路径为 D:Program FilesMPICH2 ):图22.4 将.MPICH2bin(即安装目录,如:D:Program FilesMPICH2bin)添加至系统环境变量path中。单机测试 mpich2 。测试前首先需要注册一个用户,具体操作如下:开始-所有程序-MPICH2-wmpiregister.exe:图3需要说明的一点:该用户名须为有效的操作系统管理员账户,密码对应为系统登录密码。接下来,测试时有两种方式可供选择:GUI界面和命令行。GUI方式:开始-所有程序-MPICH2-wmpiexec.exe;图4 命令行方式:mpiexec 4 D:ProgramFilesMPICH2examplescpi.exe。2.5联机测试MPICH2。有以下几个要点:1.参加并行计算的机器须至少注册一个相同的账户,如笔者两台PC上都注册了一个 MPI 帐号;这些账户最好位于同一工作组,当然不在同一工作组也可以,笔者作过测试,没有问题。2.创建联机目录。每台机器上须有一个路径相同的目录,用于存放待执行的程序(即 exe 程序),测试创建的目录是 d:/mpi/ ,并将测试用的 cpi.exe 文件copy至该目录下。3.联机执行命令:mpiexec -hosts 4 01 12 39 13/cpi.exe 。“-hosts”表示要联机运行,4 表示有两台机器参加运算,Node_1(及Node_2 .)为各机器的计算机名或IP。./*.exe 必须位于前面设置的目录中。2.6 与 vc+ 6.0 的集成。在MPICH2的readme文件中有个粗略的说明:1. Add mpich2include to the include path2.Add mpich2lib to the library path3.For C applications add mpi.lib to your target link command.具体到 VC6 中步骤如下:打开VC6,选择”Tools-Options”,在弹出的“Options”对话框中选择Directories选项卡,分别设置如下图:图5图6图73MPI的编译和运行MPI 程序的开发大体分为两个阶段:使用 visual studio 编译MPI程序,将其debug为exe文件。将exe文件copy到上面环境搭建过程中创建的并行实验的目录下,联机运行。环境搭建好之后,接下来的编译和运行就非常简单。编译MPI程序前,创建一个c+工程,MPI代码放于工程中的cpp文件中,build,start debuging.,OK,编译完成。copy exe文件至每台机器的并行实验目录,进入任何一台机器的cmd下,执行联机运行命令即可。五六MPI提供了良好的并行程序接口,通过调用MPI的库程序,可以达到并行化程序的目的,但并行程序的设计相对于串行程序的设计来说要复杂得多,本报告中就提出了影响并行程序设计的诸多因素。通过测试,可以深刻的认识到MPICH为并行程序的实现提供了并行环境,并且可以根据具体应用程序的不同来选择处理机,基本达到了测试并行程序的目的。但它是先进行单纯的后台计算,然后给用户输出一组时间数据,即求解同一个问题使用单个到多个处理器的时间值。用户必须比较时间值并额外计算加速比和并行效率,才可以对并行程序进行评价。这种方式,只是提供给用户几个呆板的数据,具体的分析还得靠用户去做,并且不能让用户深刻地体会到
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师招聘之《小学教师招聘》通关考试题库附完整答案详解【典优】
- 教师招聘之《小学教师招聘》考试综合练习【满分必刷】附答案详解
- 个性化保健食品定制创新创业项目商业计划书
- 功能性乳品创新创业项目商业计划书
- 水产品深加工技术专利布局与保护创新创业项目商业计划书
- 教师招聘之《小学教师招聘》练习题库含完整答案详解【考点梳理】
- 2025年教师招聘之《小学教师招聘》题库试题附答案详解(达标题)
- 2025年教师招聘之《幼儿教师招聘》模拟考试试卷及参考答案详解【模拟题】
- 2025年教师招聘之《小学教师招聘》题库高频难、易错点100题模拟试题含答案详解(轻巧夺冠)
- 2025年教师招聘之《小学教师招聘》综合提升练习题及参考答案详解【b卷】
- 2022年全国青少年禁毒知识竞赛题库附答案(共470题)
- 钙钛矿型稀土氧化物的制备与红外发射率性能研究
- 湖南文艺出版社小学四年级上册全册音乐教案
- 专科护理建设体系构建与实施路径
- 直销团队文化课件
- 如何提高采购效率培训课件
- 《飞行控制系统》课件
- 环境保护工程质量保证措施
- 2025外研版英语八年级上册多元化教学计划
- 公司6s管理制度
- 消防系统施工方案
评论
0/150
提交评论