标签: mpi scatter multidimensional-array
我需要分散3D矩阵(NxNxN)。如果必须通过切割z维度来完成,那么Scatter()工作正常。我想通过y维度切割矩阵,即每个过程将接收N / NUM_PROCS x-z平面。
为此,我制作了一个由N / NUM_PROCS x-z平面组成的MPI矢量类型。但是当我执行MPI :: Scatterv()时,传输到第0个进程的数据是正确的,而对于其他进程则没有!
任何人都知道其中的替代品吗?或者为什么这种方法不起作用?