首页 > 解决方案 > MPI 散点图的使用

问题描述

我正在处理 MPI 编程,但我不太了解 MPI_Scatter 函数的工作原理。

我在主节点中调用分散,那么之后我需要在从节点中调用 MPI_Recv 吗?

那么它应该看起来像这样,还是我弄错了?

int size;
if (node == MASTER){
    int arr[size * nproc];
    int sub_array[size];
    MPI_Scatter(arr, size, MPI_INT, sub_arr, size, MPI_INT, 0, MPI_COMM_WORLD);
    //do things;
    MPI_Gather(…);
} else {
    int arr[size];
    MPI_Recv(arr, size, MPI_INT, MASTER, 0, MPI_COMM_WORLD);
    //do things;
    MPI_Send(…);
}

标签: c++mpi

解决方案


推荐阅读