MS-MPI的Visual Studio 2013配置 我已经花了几天时间(实际上是晚上)来配置我的Visual Studio 2013,用C++进行MPI编程,但是我的努力没有用。我还没有编译Hello World程序的简单MPI版本

MS-MPI的Visual Studio 2013配置 我已经花了几天时间(实际上是晚上)来配置我的Visual Studio 2013,用C++进行MPI编程,但是我的努力没有用。我还没有编译Hello World程序的简单MPI版本,c++,visual-studio-2013,mpi,C++,Visual Studio 2013,Mpi,我已经下载了MS-MPI SDK并按照给出的说明进行了操作 安装和环境变量设置正常,因为已验证步骤2。我也试着仔细地遵循指令5,只是我的项目和.cpp文件有不同的名称。我的源代码如下: #include <mpi.h> #include "stdafx.h" #include <iostream> int main(int argc, char** argv) { MPI_Init(NULL, NULL); int world_size; MPI_Comm_size

我已经下载了MS-MPI SDK并按照给出的说明进行了操作

安装和环境变量设置正常,因为已验证步骤2。我也试着仔细地遵循指令5,只是我的项目和.cpp文件有不同的名称。我的源代码如下:

#include <mpi.h>
#include "stdafx.h"
#include <iostream>

int main(int argc, char** argv) {

MPI_Init(NULL, NULL);

int world_size;
MPI_Comm_size(MPI_COMM_WORLD, &world_size);

int world_rank;
MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);

char processor_name[MPI_MAX_PROCESSOR_NAME];
int name_len;
MPI_Get_processor_name(processor_name, &name_len);

printf("Hello world from processor %s, rank %d"
    " out of %d processors\n",
    processor_name, world_rank, world_size);

MPI_Finalize();
return 0;
#包括
#包括“stdafx.h”
#包括
int main(int argc,字符**argv){
MPI_Init(NULL,NULL);
国际大世界;
MPI_Comm_大小(MPI_Comm_WORLD和WORLD_大小);
国际世界排名;
MPI通信等级(MPI通信世界级和世界级);
字符处理器名称[最大处理器名称];
国际名称;
MPI获取处理器名称(处理器名称和名称);
printf(“来自处理器%s,排名%d的Hello world”
“共%d个处理器\n”,
处理器名称、世界排名、世界大小);
MPI_Finalize();
返回0;
}

在编辑器中,所有MPI命令和变量以及#include都有错误下划线,编译会产生一系列错误。前两个错误是

错误C3861:“MPI_Init”:找不到标识符

错误C2065:“MPI\u通信世界”: 哈桑


谢谢大家花时间阅读我的问题。我设法使它工作起来了。我必须在配置管理器中为活动解决方案平台选择x64

我知道这对您的MPI配置没有帮助,但您确实应该将MPI的初始化调用为
MPI_Init(&argc,&argv)
。我也有同样的问题,但犯了一个愚蠢的错误。我写的是MPI_init而不是MPI_init(忽略了第二个单词的大小写)。