- Windows 10
- Visual Studio 2019
- MSMPI v10.1.2
step1. 安装MSMPI
前往官网下载.msi & .exe
两个文件,按提示安装即可
安装过程会自动添加环境变量,可在PATH中看到
step2. 配置 VS2019
新建一个空项目,新建一个属性表
包含目录、库目录
-
包含目录里面添加:
C:\Program Files (x86)\Microsoft SDKs\MPI\Include;
-
库目录的里面添加:
C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x64;
-
【C/C+ 附加包含目录】:添加
$(MSMPI_INC);$(MSMPI_INC)\x64
-
【链接器-常规-附加库目录】:添加
$(MSMPI_LIB64)
-
【链接器-输入-附加依赖项】:添加
msmpi.lib
step3. 测试
#include <iostream>
#include <mpi.h>
int main(int argc, char* argv[])
{
MPI_Init(&argc, &argv);
int RankID;
MPI_Comm_rank(MPI_COMM_WORLD, &RankID);
if (0 == RankID)
{
int SendNum = 16;
MPI_Send(&SendNum, 1, MPI_INT, 1, 0, MPI_COMM_WORLD);
}
else if (1 == RankID)
{
int RecvNum = 0;
MPI_Recv(&RecvNum, 1, MPI_INT, 0, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE);
std::cout << "Receive from rank 0: " << RecvNum << std::endl;
}
MPI_Finalize();
return 0;
}
step4. 配置VS调试指令和参数
VS【工程属性】
- 调试 - 命令:
$(MSMPI_BIN)\mpiexec.exe
- 调试 - 命令参数:
-n 2 $(TargetPath)
通过这种方法运行MPI多进程程序时,无法调试,如果需要调试,就需要将配置到工程里的指令删去才可。
Reference:https://blog.csdn.net/u014516143/article/details/89316258