分散一个矩阵,处理n得到mpi中的每第n行

时间:2014-11-14 19:55:56

标签: matrix mpi

我想分配一个N×N矩阵,以便每个进程P得到每个第P行。例如,如果我有4个进程,则进程0从0开始每隔4行,进程1从1开始每隔4行,依此类推。

1 个答案:

答案 0 :(得分:0)

您可以使用MPI数据类型和分散调用的组合来执行此操作。如果使用MPI矢量类型,则可以将步幅设置为4行的大小,以跳过您不想发送的其他三个。

然后你可以做一个MPI_Scatter并将数量计算为矩阵的大小除以4。