笔者初学并行计算这一行,要做并行编程,第一步很定是先配置编程环境了。
1. 准备工作
操作系统:win10
编译器:vs2013
2. 下载并安装MPICH ForWindows
MPI是一个接口规范,我们需要MPICH文件来实现。
首先,我们进入http://www.mpich.org/downloads/站点根据操作系统下载。由于我们使用的是Win10系统,拉到下载网页最底部,最新的MPICH实现已经由微软官网托管,我们直接进去下载。
image
进去后,选择最新的V8.1下载,包含两个文件:msmpisdk.msi和MSMpiSetup.exe。
载完毕直接分别安装这两个程序,都点下一步,下一步即可。
image
image
image
3. 配置VS2013,编写个HelloWord测试程序
3.1新建一个C++ 的win32项目,起名为HelloWord_MPI
image
3.2 点击下一步,在“应用程序类型”中选择“控制台应用程序”,“附加项”中选择“空项目”。点击完成。
image
3.3 点击“调试”->“属性”
image
3.4 点击“配置管理器”
image
在“活动解决方案平台”下选择“新建”
image
把“ARM”替换为“X64”
image
3.5 选择C/C++ ->预处理器->“编辑”,添加:MPICH_SKIP_MPICXX
image
image
3.6 C/C++ -> 代码生成 -> 运行库,选择:多线程调试(/MTd)
image
3.7 链接器 -> 输入 -> 附加依赖项,添加:msmpi.lib
image
image
3.8 在VC++目录这一项中在包含目录中添加C:\Program Files (x86)\Microsoft SDKs\MPI\Include; 在库目录的里面添加:C:\ProgramFiles (x86)\Microsoft SDKs\MPI\Lib\x64;
image
最后,点击应用,确定,这样编译器的环境就配置完成了!!!
4. 新建一个WelloWord.cpp。
image
image
编写如下代码
#include<stdio.h>
#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(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;
}
注意:如果代码有红线,请重新进行步骤3.8
编译整个项目,将编译得到的 exe文件(HelloWord_MPI\x64\Debug文件夹下)放在安装的MS-MPI的bin目录(默认为:C:\ProgramFiles\Microsoft MPI\Bin)下,在这个Bin目录下按住shift键于空白处右键单击,打开powershell窗口,输入 mpiexec -n 8 HelloWord_MPI.exe 得到运行结果,如下图:
作者:没对象的野指针
链接:https://www.jianshu.com/p/119265e21cdf
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。