- 下载MPI
- 下载vs2019
- 在vs2019中配置环境
- 测试代码
1.下载MPI
首先,正确下载MPI,下载好了会有下面两个文件
两个文件都安装在同一个目录下,我这里安装在了d盘的MPI目录下了,安装好了一共六个文件,如下图
2.下载vs2019
下载过程就不说了,网上很多教程,这里推荐一个博客,没有安装的可以去看看
推荐博客
3.配置vs中的MPI环境
1)创建c++空项目
项目目录中的源文件点右键添加新建项
2)配置属性
右击创建的项目,点最下面的属性
配置属性->VC++目录->包含文件->最右边箭头->编辑:
找到之前安装的MPI目录下的include文件,点确定
然后下面有一个库目录,同上,找到MPI文件下的lib里面的X64,确定。
然后:c/c++ -> 预处理器 -> 预处理器定义
加上这一句话
MPICH_SKIP_MPICXX
代码生成 -> 运行库 选择多线程调试(/MTd)
链接器 -> 输入 -> 附加依赖项
添加三个文件名,这三个就是你的MPI中的lib中的X64文件夹里的三个文件,可以看看是不是这三个
msmpi.lib
msmpifec.lib
msmpifmc.lib
配置完成,点确定关闭属性界面
4)测试代码如下:
#include<stdio.h>
#include<mpi.h>
int main(int argc, char* argv[]) {
int myid, numprocs;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &myid);
MPI_Comm_size(MPI_COMM_WORLD, &numprocs);
printf("%d helle from %d", numprocs, myid);
MPI_Finalize();
return 0;
}
把这段代码写上,如下图,我的全是错误提示
不要急,看看运行环境是x86还是x64,如下图左上角,改为x64,就没有错误了。
点运行(如果一闪而过,点击CTRL+f5),如果只有一个线程,如下图,不要着急,马上成功了。
5)运行多线程程序
因为vs2019中只能显示一个线程的程序,所以我们要到cmd中实现多线程程序。
保存一下你的代码,到文件中找到他的exe程序,如下图。(一定是x64目录下的Debug中)
在路径栏中输入cmd打开dos窗口,输入下面这句话
mpiexec -n 8 mpi001.exe
8代表8个线程,后面是我的文件名,写你自己的文件名就好。
点回车执行,如下图,成功。
完成