【发布时间】:2014-06-23 20:53:35
【问题描述】:
我是 MPI 的新手,正在尝试运行“hello world”程序。这是我的程序
#include <iostream>
#include <mpi.h>
using namespace std;
int main(int argc, char ** argv)
{
int mynode, totalnodes;
MPI_Init(&argc,&argv);
MPI_Comm_size(MPI_COMM_WORLD, &totalnodes);
MPI_Comm_rank(MPI_COMM_WORLD, &mynode);
cout << "Hello world from process " << mynode;
cout << " of " << totalnodes << endl;
MPI_Finalize();
}
输出只是
Hello world 来自进程 0 of 1
我有多核 CPU,我认为至少应该有 4 个进程在运行。所以输出应该是:
来自进程 0 of 4 的 Hello world 来自进程 1 of 4 的 Hello World 来自过程 2 of 4 的 Hello World 来自进程 3 of 4 的 Hello world
或类似的东西。谁能评论我在程序或编译命令中遗漏了什么?顺便说一句,我在 Windows、MSMPI、Code::Blocks IDE 上的 gcc 编译器上运行。谢谢。
【问题讨论】:
-
你是如何运行程序的? mpirun 的完整命令行是什么?
标签: c++ gcc mpi codeblocks