MPI在VS2010下运行程序配置

转载:http://m.blog.csdn.net/blog/u012337841/16358547

windows7下VS2010配置MPI开发环境教程

1.首先下载MPI

mpich2-1.4.1p1-win-ia32安装程序的下载地址:

http://www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/1.4.1p1/mpich2-1.4.1p1-win-ia32.msi

本文以设置安装在C:\Program Files\MPICH2目录下为例。


2.安装完成后,打开“开始-所有程序-MPICH-wmpiregister.exe” ,在Account中输入本机用户名,在password中输入本机密码,点击Register按钮注册并按OK按钮退出。

3.在VS2010中,VC++ 目录配置位置较以往发生了变化。VC++目录改在项目配置中,在项目名称上右键选择属性,即进入属性页。


4.展开左边配置属性,选中其中的VC++ 目录,在右边“包含目录”加入“C:\ProgramFiles\MPICH2\include;”

5.展开左边配置属性,选中其中的VC++ 目录,在右边“库目录”加入“C:\ProgramFiles\MPICH2\lib;”





6.展开左边配置属性中的C/C++,如果没有这个选项,需要在项目中新建一个cpp文件则会出现该选项,选中其中的“预处理器”,在右边的“预处理器定义”中加入“MPICH_SKIP_MPICXX;”。

7.同样展开C/C++,选中“代码生成”,把右边的“运行库”更改为“Multi-threaded Debug(/MTd)”(此外有下拉菜单可选到它)。

8.展开左边的链接器,选中“输入”,在右边“附加依赖项”中加入“mpi.lib;”。

至此,配置完成。


9.运行示例

#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 MoreWindows\nProcess %d of %d on %s\n", myid, numprocs, processor_name);  
      
    MPI_Finalize();  
      
    if (myid == 1)  
    {  
        printf("\nPress a key and exit.\n");  
        getch();  
    }  
    return 0;  
}  


编译运行,第一个MPI程序就诞生了。


10.如何运行MPI程序?

开“开始-所有程序-MPICH-wmpiexec.exe”,在Applicationd右边浏览找到你在VS2010中生成的exe文件,(在项目目录里的debug里)设置Number of processes(即进程数目,用来模拟并行计算的CPU数目)。再按Execute按钮运行。



MPICH2安装完后,smpd为什么运行不了?

安装后smpd无法运行,进程中没有smpd.exe。注册过程也完成了。运行自带的测试程序cpi.exe,提示
:Error: No smpd passphrase specified through the registry or .smpd file, exiting.
有没有大神知道是哪里出了问题,可以远程指导下。。。在此跪谢了。。。

解决办法
原因是smpd进程没有启动 解决方法也很简单
1、开始菜单--所有程序--附件 用管理员身份运行CMD窗口
2、进入MPICH2的安装目录,以我的为例 cd /d C:\Program Files (x86)\MPICH2\bin
3、输入命令smpd -install -phrase behappy, behappy是安装时设置的passphrase 
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值