Windows搭建一个MPI环境

参考文档:
如何在win10+vs2013上配置MPI并行编程环境

1、准备工作

操作系统:win10
工具:Visual Studio 2022 

2、下载安装MPI所需环境

根据操作系统下载

image.png

第一步,找到Windows环境下的链接
image.png
image.png

两个程序下载完成之后分别双击安装运行

3、配置VS 2022 编写测试程序

建一个新项目

新建一个C++控制台应用项目,起名为 MpiConsoleApplication


image.png

点击“调试”→“属性”

image.png

C/C++ → 常规

设置附加包含目录


image.png

填入skd安装路径,这里我是默认安装路径:C:\Program Files (x86)\Microsoft SDKs\MPI\Include


image.png

链接器 → 常规

设置 附加库目录


image.png

设置路径:C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x64


image.png

链接器 → 输入

image.png

填入
msmpi.lib
msmpifec.lib
msmpifmc.lib


image.png

测试环境

在工程输入如下代码:

#include
#include

int main(int argc, char* argv[])
{
    int myid, numprocs, namelen;
    char processor_name[MPI_MAX_PROCESSOR_NAME];
    MPI_Init(&argc, &argv);
    MPI_Comm_rank(MPI_COMM_WORLD, &myid);
    MPI_Comm_size(MPI_COMM_WORLD, &numprocs);
    MPI_Get_processor_name(processor_name, &namelen);
    if (myid == 0) printf("number of processes: %d\n", numprocs);
    printf("%s: Hello world from process %d \n", processor_name, myid);
    MPI_Finalize();
    return 0;
}

编译整个项目,将编译得到的 exe文件(HelloWord_MPI\x64\Debug文件夹下)放在安装的MS-MPI的bin目录(默认为:C:\ProgramFiles\Microsoft MPI\Bin)下,在这个Bin目录下按住shift键于空白处右键单击,打开powershell窗口,输入 mpiexec -n 8 MpiConsoleApplication.exe 得到运行结果,如下图:

image.png
以上为本机MPI环境,其中IP为10.12.37.31

装配MPI集群

参考文档 :https://blog.csdn.net/longji/article/details/95058814

需要安装一个
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

这里我安装总是出错,需要我安装.NET Framework 2.0 但是没有找到这个版本 https://dotnet.microsoft.com/zh-cn/download/dotnet-framework 这个链接里面下载了4.8 版本 ,但是系统已经有这个版本了,所以我下载了3.5 SP1版本,安装完场就可以安装mpich2了

image.png

接下来开启防火墙暴露默认端口号:8677
这里链接是 如何防火墙服务端口
http://www.xitongcheng.com/jiaocheng/win10_article_12908.html

一切安装完成之后,进入C:\Program Files\Microsoft MPI\Bin盘符下


image.png

进入powershell 启动服务 : smpd.exe -p 8677

image.png

运行测试

进入cmd窗口 运行
mpiexec -hosts 2 10.12.37.31 10.12.37.231 8 MpiConsoleApplication.exe
(其中 IP地址后面的数字为启动线程数量)

image.png

你可能感兴趣的:(Windows搭建一个MPI环境)