1. MPI_Bcast:广播消息
MPI_Bcast用于将一个进程的buffer中的数据广播到其他进程的相同buffer变量中
代码示例如下:
int rank, data[10];MPI_Init(0, 0);MPI_Comm_rank(MPI_COMM_WORLD, &rank);if (rank == 0) { for (int i = 0; i < 10; ++i){ data[i] = i + 1;}} //进程0广播数据给所有进程MPI_Bcast(&data, 10, MPI_INT, 0, MPI_COMM_WORLD);//printf("process %d send data\n", rank);//每个进程该变量都被置为一样的值printf("process %d receive data:", rank); for (int i = 0; i < 10; ++i){printf("%d ", data[i]);}MPI_Finalize();
运行 mpiexec -n 4 TestMPI.exe 后,可以看到各进程的data变量都被设置了与进程0