系统并行平台的搭建.docxVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
系统并行平台的搭建

Windows7系统下搭建MPI环境本人想做一个小的机群,做并行计算,搜罗了一些网上的资料,在单机上建了个并行平台,一些小例子都没问题,但是我的计算程序还是没有成功!我的电脑是Win7 ,64位系统。按照网上所说64位系统应该装64位的mpich2,但是没有找到资源,就装了32位的。程序设计软件是vc++6!下面讲一下我的安装过程,希望对大家有用!!!第一项:准备工作1 安装MPI的SDK——MPICH2mpich2-1.4.1p1-win-ia32安装程序的下载地址:/research/projects/mpich2/downloads/tarballs/1.4.1p1/mpich2-1.4.1p1-win-ia32.msi注意:网上很多人都说要以管理员身份进行安装,究竟怎样以管理员身份安装呢?这一点浪费了我好长时间,其实也不是很难,只是没有意识到!点击“开始”——输入cmd(就会看见cmd.exe)——右键——以管理员身份运行——(输入要安装的文件)msiexec /i e:\mpi\mpich2-1.4.1p1-win-ia32.msi回车即可,然后按照提示下一步直至安装成功。其中e:\mpi\mpich2-1.4.1p1-win-ia32.msi是指源文件所在位置。(注意空格)安装成功后会有如下几个文件生成注意在bin文件中一定要有下面两个应用程序,否则未安装成功。2 新建用户密码安装成功后要测试一下,测试前要先注册一个用户(这个用户名须为有效的操作系统管理员账户,密码对应为系统登录密码。这个地方也煞费苦心啊,一定要注意!!!)开始——控制面板——用户账户和家庭安全——添加或删除用户账户——创建一个新账户(在下面可以看到)——输入用户名(选择用户类型为“管理员”)——创建用户然后再创建密码就ok啦!如下图所示这个用户名和密码就是我们测试时需要用的。3 注册开始——所有程序——mpich2——wmpiregister如下图,这个就是刚才注册的用户和密码。输入后点击Register——OK。就会出现一行字,成功注册。4 测试mpich2开始——所有程序——mpich2——wmpiconfig.exe——scan hosts这时左侧会出现绿色,说明成功了。5 vc++6中的设置打开vc,工具——options——Directories——include files添加你刚刚安装的mpich2中include文件,如图所示然后在show directories for的下拉菜单中选择library files,同样添加lib文件。至此就大功告成了,你就可以试着运行你的程序了。不过,要想运行成功,程序中也是要作些改动的。第二项:测试程序1 mpich2自带的cpi.exe开始--所有程序--MPICH2--wmpiexec.exe(在安装的examples中有cpi.exe)选择Application为 c:\program files\mpich2\examples\cpi.exe (就是自带的一个计算圆周率的例子程序)。在Number of processes的数量选择2表示用二个进程来协同完成。选中“run in separate windw”选项。再点击Excute就可以执行了。然后在控制台窗口下提示输入number of intervals ,随便输入个大点的数字(50000,5000000)就可以看到求的的圆周率值。如下图:2 MPI程序(这是在网上找的一个程序)#include mpi.h#include stdlib.h#include stdio.h#include conio.h#pragma comment (lib, mpi.lib) int main(int argc, char* argv[]) { int myid,numprocs; int namelen; char processor_name[MPI_MAX_PROCESSOR_NAME]; MPI_Init(argc, argv); //用MPI_Comm_rank 获得进程的rank,该rank值为0到p-1间的整数,相当于进程的ID MPI_Comm_rank(MPI_COMM_WORLD, myid); //用MPI_Comm_size 获得进程个数 int MPI_Comm_size(MPI_Comm comm, int *size); MPI_Comm_size(MPI_COMM_WORLD, numprocs); MPI_Get_processor_name(processor_name, namelen); printf(Hello World! by MoreWindow

文档评论(0)

laideman + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档