2

我正在尝试运行此代码:

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

int main (int argc, char *argv[])
{
int id, np;
char processor_name[MPI_MAX_PROCESSOR_NAME];
nt processor_name_len;

MPI_Init(&argc, &argv);

MPI_Comm_size(MPI_COMM_WORLD, &np);
MPI_Comm_rank(MPI_COMM_WORLD, &id);
MPI_Get_processor_name(processor_name, &processor_name_len);

printf("Hello world from process %03d out of %03d, processor name %s\n", 
id, np, processor_name);

MPI_Finalize();
return 0;
}

编译适用于:

mpicc hello_parallel.c -o hello_parallel

但我不能用 ./hello_parallel 运行它

4

1 回答 1

2

如果你想执行一个 MPI 应用程序,你可能想用 mpirun 运行它:

mpirun -np 2 ./hello_parallel

在这种情况下,2 是要运行的进程数。通常还有其他步骤来设置 MPI 集群,然后才能正常工作(lamboot对于 LAM MPI),但这些步骤取决于 MPI 实现。

于 2012-11-22T19:29:01.170 回答