您会注意到代码在 MPI_COMM_WORLD 中实例化,但在函数 send_code 中使用!
我的代码是:
int send_code(char *code)
{
//produce the codes for adding the code into the table
printf("%s\n",code);
MPI_Send(code, 8, MPI_CHAR,0, 0,MPI_COMM_WORLD);
}
int main(int argc, char *argv[])
{
MPI_Status status;
int outbuf, inbuf;
MPI_Init(&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
if (rank==0)
{
MPI_Recv(code, 8, MPI_CHAR, 0, 0, MPI_COMM_WORLD, &status);
printf("%s by master\n",code);
}
else
{
........
}
MPI_Finalize();
}
最佳答案
如果您询问 MPI 中的 MPI_COMM_WORLD
,它在 mpi.h
中声明并在 MPI 实现库之一的某处定义。
关于c - 我如何声明 MPI_COMM_WORLD 以便我可以在任何地方使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9860945/