我尝试了微软的MPI实现。 我从这里安装了CCP SDK:
http://www.microsoft.com/en-us/download/details.aspx?id=239
然后在我的项目设置,我添加了包括文件夹,lib文件夹,并提到msmpi.lib。
而其余的设置,是,我建立该程序,然后在命令提示符下我继续运行程序,但没有任何反应后,我启动它。
下面的代码(这应该显示为每个线程ID号):
#include "stdafx.h"
#include "mpi.h"
#include <stdio.h>
//Commands in cmd prompt
//cd "C:\Program Files\Microsoft Compute Cluster Pack\Bin"
//mpiexec.exe -n 2 "C:\Users\MyNameHere\Documents\Visual Studio 2012\Projects\tspMpi\Debug\tspMpi.exe"
int main(int argc, char* argv[])
{
int nTasks = 0, rank = 0;
MPI_Init(&argc,&argv);
MPI_Comm_size(MPI_COMM_WORLD,&nTasks);
MPI_Comm_rank(MPI_COMM_WORLD,&rank);
printf ("Number of threads = %d, My rank = %d\n", nTasks, rank);
return 0;
MPI_Finalize();
}
当我运行mpiexec.exe(该命令是在评论)节目少了点什么,直到我按下Ctrl-C。 有谁知道我做错了吗? 有没有当我建立程序中的错误,如果我从Visual Studio运行它,它的作用好像有只有一个进程启动。