MPI 在Windows10 上安装,使用VS2013编译生成可执行程序
原文地址:http://www.cnblogs.com/leijin0211/p/6851789.html
参考博客: http://www.cnblogs.com/shixiangwan/p/6626156.html
http://www.cnblogs.com/hantan2008/p/5390375.html
系统环境:
Windows10 (Windows7及以上均可以)
64bit
VS2013
1. 下载并安装MPICH For Windows
进入http://www.mpich.org/downloads/站点根据操作系统下载。由于我们使用的是Windows,拉到下载网页最底部,最新的MPICH实现已经由微软官网托管,我们直接进去下载。

然后,选择最新的V8下载,包含两个文件:msmpisdk.msi和MSMpiSetup.exe。

下载完毕直接分别安装这两个程序 msmpisdk.msi 和 MSMpiSetup.exe
我安装在了D盘:

2. VS配置以及demo演示
新建一个VC++项目

在项目属性中配置修改如下:
包含目录里面添加:C:\Program Files (x86)\Microsoft SDKs\MPI\Include;
库目录的里面添加:C:\Program Files (x86)\Microsoft SDKs\MPI\Lib\x64;
其他必要配置:
配置管理器,选择x64编译平台;
C/C++ -> 预处理器,添加:MPICH_SKIP_MPICXX;
C/C++ -> 代码生成 -> 运行库,选择:多线程调试(/MTd);
链接器 -> 输入 -> 附加依赖项,添加:msmpi.lib;

demo测试,新建一个C++文件,命名为main.cpp

1 #include<stdio.h>
2 #include<mpi.h>
3 #include<stdlib.h>
4 #include<time.h>
5
6 int main(int argc, char* argv[])
7 {
8 int myid, numprocs, namelen;
9 char processor_name[MPI_MAX_PROCESSOR_NAME];
10
11 MPI_Init(&argc, &argv); // starts MPI
12 MPI_Comm_rank(MPI_COMM_WORLD, &myid); // get current process id
13 MPI_Comm_size(MPI_COMM_WORLD, &numprocs); // get number of processes
14 MPI_Get_processor_name(processor_name, &namelen);
15
16 if (myid == 0) printf("number of processes: %d\n...", numprocs);
17 printf("%s: Hello world from process %d \n", processor_name, myid);
18
19 MPI_Finalize();
20
21 return 0;
22 }

编译整个项目,将编译(1.项目右键重新生成 或者 2.使用编辑器编译得到)得到的 exe文件(debug文件夹下)放在安装的MS-MPI的bin目录(默认为:C:\Program Files\Microsoft MPI\Bin 我安装在了D盘)下,在这个Bin目录下按住shift键于空白处右键单击,打开命令行窗口,输入 mpiexec -n 10 MPI-demo.exe 得到运行结果,如下图:


MPI 在Windows10 上安装,使用VS2013编译生成可执行程序的更多相关文章
- 在windows10上安装caffe和tensorflow
最近在Windows10上安装了caffe和tensorflow,折腾了好久.在此记录一下. 安装caffe的过程已在另一篇博客中进行了记录,在此不再赘述.而tensorflow也是非常简单的,也不再 ...
- 在Ubuntu16.04.4和Windows10上安装jdk
在Ubuntu16.04.4和Windows10上安装jdk 一.在Ubuntu16.04.4上安装jdk 1.下载jdk安装包 首先我们在oracle官网上下载jdk-8u161-linu ...
- windows10上安装mysql详细图文教程
在windows10上安装mysql详细图文教程 这篇文章主要介绍了在windows10上安装mysql详细图文教程,本文介绍的非常详细,具有参考借鉴价值,感兴趣的朋友一起看看吧 环境:windw ...
- Windows10上安装Linux子系统(WSL2,Ubuntu),配合Windows Terminal使用
Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具.实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销. WSL 说白了安装Li ...
- Windows10上安装EDEM2.7
这次我们来安装EDEM2.7. 安装软件来自于互联网,本文仅作学习交流之用,工程应用请购买正版. 1 软件准备 从网上找到EDEM2.7安装包,解压后里面包含两个文件,如下图所示. 2 软件安装 鼠标 ...
- windows10上安装 .NET Framework 3.5
在安装一些软件时,需要 .NET Framework3.5.按照windows给的提示下载不了.在官方网站上给了解决方案: 运行 DISM 工具 从屏幕右边缘向中间轻扫,然后点击“搜索”.(如果使用的 ...
- windows10上安装mysql(详细步骤)
2016年09月06日 08:09:34 阅读数:46198 环境:windwos 10(1511) 64bit.mysql 5.7.14 时间:2016年9月5日 一.下载mysql 1. 在浏览器 ...
- Windows10上安装Keras 和 TensorFlow-GPU
安装环境: Windows 10 64bit GPU: GeForce gt 720 Python: 3.5.3 CUDA: 8 首先下载Anaconda3的Win10 64bit版,安装Python ...
- windows10上安装mysql
环境:windwos 10(1511) 64bit.mysql 5.7.14 一.下载mysql 1. 在浏览器里打开mysql的官网http://www.mysql.com/ 2. 进入页面顶部的& ...
随机推荐
- Spring Cloud(四) --- config
Spring Cloud Config 随着线上项目变的日益庞大,每个项目都散落着各种配置文件,如果采用分布式的开发模式,需要的配置文件随着服务增加而不断增多.某一个基础服务信息变更,都会引起一系列的 ...
- apk的安装删除
1,签名: java -jar signapk.jar platform.x509.pem platform.pk8 DownloadProvider.apk DownloadProvider-sig ...
- Ubuntu16.04常用软件源
这篇博文的,主要目的是为了方便我和大家安装软件.我将我安装过的所有软件包的源列在此处. Google Chrome sudo wget https://repo.fdzh.org/chrome/goo ...
- csp20151203画图 解题报告和易错地方
Solution: dfs 对于dfs: //遇到map[u][v]==c,则不用再搜 //因为通过(u,v)到达的其它点(p,q), //之前从(u,v)开始肯定能到达(p,q),(p, ...
- CSS3:文字属性
文字属性注意的细节: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- go 包-锁机制
线程同步 import(“sync”) 互斥锁, var mu sync.Mutex 读写锁, var mu sync.RWMutex 资源竞争样例 func testMap() { var a ma ...
- 个股与指数的回归分析(自带python ols 参数解读)
sklearn实战-乳腺癌细胞数据挖掘(博客主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&a ...
- Linux安装-kickstart无人值守安装
Linux安装-kickstart无人值守安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 大家做运维估计都避免不了时不时会去机房安装一台linux服务器,但是服务器启动的特别慢 ...
- JavaSE学习总结(十六)—— 泛型与泛型应用
一.泛型概要 泛型(Generic)的本质是类型参数化,通俗的说就是用一个占位符来表示类型,这个类型可以是String,Integer等不确定的类型,表明可接受的类型. 泛型是Java中一个非常重要的 ...
- vue基础篇---修改对象或数组的值,页面实时刷新
这个问题估计大家很难想到,如果一个数组[1,2,3,4],然后我们v-for遍历,我们改变数组的值,arr[1] = 5 ,难道不应该改变么?按理说根据vue的特性应该是改变的,但是事实上确实数组已经 ...