win10 C++环境 MSMPI+VS+Intel Parallel Studio XE (MKL库)安装配置

时间:2024-03-21 10:35:30

VS2013淘宝有很多,随便买个安装即可

MSMPI百度一下在微软官网上下载即可,一共两个安装包

win10 C++环境 MSMPI+VS2013+Intel Parallel Studio XE 2015 (MKL库)安装配置


win10 C++环境 MSMPI+VS2013+Intel Parallel Studio XE 2015 (MKL库)安装配置


win10 C++环境 MSMPI+VS2013+Intel Parallel Studio XE 2015 (MKL库)安装配置

下载完之后默认安装


Intel Parallel Studio XE 2015也能从网上找到安装资源,直接安装即可

全部安装完成后

新建一个控制台文件

1、MSMPI配置:

项目属性按如下修改

包含目录里面添加: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;


2、MKL库配置

在“配置属性”下的“Intel Performance Libraries”面板上的“Use Intel MKL”条目的右边的下拉框选择“Parallel” 

在“VC++目录”下设置以下: 
可执行文件目录为:c:\Program Files (x86)\Intel\Composer XE 2015\redist\intel64\mkl 
包含目录为:c:\Program Files (x86)\Intel\Composer XE 2015\mkl\include 
库目录为:c:\Program Files (x86)\Intel\Composer XE 2015\compiler\lib\intel64;c:\Program Files (x86)\Intel\Composer XE 2015\mkl\lib\intel64 

注意:如果是32位的,就不是“intel 64”而是“ia32” 


在“自定义生成步骤”下,设置“附加依赖项”,选择以下lib文件,缺少什么可能需要尝试以下,一般是这几个: 
mkl_intel_c.lib 
mkl_intel_thread.lib 
mkl_core.lib 

libiomp5md.lib 



最后 放上测试代码 同时测试了mkl库和mpi的使用

#include <stdio.h> 
#include <mpi.h>
#include <mkl.h>
#include<stdlib.h>






int main(int argc, char *argv[])
//      int argc; 
//      char *argv[]; 
{
int myid, numprocs, namelen;
char processor_name[MPI_MAX_PROCESSOR_NAME];


MPI_Init(&argc, &argv);        /* starts MPI */
MPI_Comm_rank(MPI_COMM_WORLD, &myid);  /* get current process id */
MPI_Comm_size(MPI_COMM_WORLD, &numprocs);      /* get number of processes */
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);


float *A;
int n = 5;
float res;
A = (float *)mkl_malloc(n*sizeof(float), 64);
printf("The original vector:\n");
for (int i = 0; i < n; i++)
{
A[i] = i + 1;
printf("%2.0f ", A[i]);
}
printf("\n");
res = cblas_snrm2(n, A, 1);//计算二范数
printf("The norm2 of vector is:%2.6f", res);
mkl_free(A);


MPI_Finalize();
return 0;

}



生成文件在release文件夹找到相应的exe文件,拷到mpi安装目录下的bin文件夹  空白处shift鼠标右键打开命令行  ,利用命令执行即可,效果如下

win10 C++环境 MSMPI+VS2013+Intel Parallel Studio XE 2015 (MKL库)安装配置