【发布时间】:2016-04-21 05:08:55
【问题描述】:
在 C++ 中,使用 MPI_Scatter 的一个例子是:
MPI::COMM_WORLD.Scatter(sendbuf, 100, MPI::INT, recvarr, 100,MPI::INT, root);
这会将sendbuff 的内容分散到 100 个单独的进程中,以在每个进程上生成recvarr,但仅在 MPI World 通信器中。
与 C 中的 MPI_Scatter 不同,C++ 版本没有用于通信器的输入。如何修改此示例以适用于任何通信器,而不仅仅是 MPI_COMM_WORLD?
例如,假设我的通讯器名为comm。如何将sendbuff 分散在comm 通信组而不是MPI_COMM_WORLD?
【问题讨论】: