vs下安装配置使用mpi

安装和配置MPI

  1. mpi的下载路径:https://www.microsoft.com/en-us/download/details.aspx?id=57467,两个文件都要安装(SDK和Bin),并记住路径(注意:由于MPI的bin在安装时自动添加了环境变量,故此时应该重启Windows使其生效)。
  2. 在vs工程的项目属性页配置MPI(以我的项目为例,配置x64平台的Debug和Release):
    1. 选择所有配置,x64平台
    2. “VC++目录”=>包含目录添加MPI头文件所在的路径:C:\Program Files (x86)\Microsoft SDKs\MPI\Include\x64C:\Program Files (x86)\Microsoft SDKs\MPI\Include;
    3. “VC++目录”=>库目录添加MPI链接库所在的目录:C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x64
    4. 链接器=>输入=>附加依赖项添加msmpi.lib
    5. C/C++ => 预处理器=>预处理器定义添加MPICH_SKIP_MPICXX
    6. C/C++ => 代码生成=>运行库添加:
      1. debug模式下添加多线程调试 (/MTd)
      2. release模式下添加多线程 (/MT)

使用MPI

MPI程序的测试代码如下:

#include <mpi.h>

int main(int argc, char*argv[])
{
    int myid, numprocs, 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();
    return 0;
}

编译成功后用cmd进入到该可执行文件所在路径,运行如下命令:

# 5为启动的并行进程数,test_mpi.exe为编写的mpi程序
mpiexec -n 5 test_mpi.exe

MPI程序主要利用其同步和互斥API,具体用法还需进一步探索。

原创文章 33 获赞 51 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_21950929/article/details/105892746
今日推荐