MPI组合来自所有处理器的矢量

时间:2017-08-27 23:19:58

标签: vector fortran concatenation mpi

我正在编写一个MPI fortran程序,并且让我们说三个不同长度的三个向量。我想以“连接”方式将它们组合在一起,例如:

Rank 0: a0 = [1 2 3 4 5]
Rank 1: a1 = [3 5 7 9]
Rank 2: a2 = [2 4 6 8 10 12]

将它们合并到:

Rank 0: a = [1 2 3 4 5 3 5 7 9 2 4 6 8 10 12]

你能告诉我怎么做吗?

1 个答案:

答案 0 :(得分:1)

由于矢量根据排名有不同的大小,您可以使用MPI_Gatherv()来达到预期的结果