KaMPIng 0.1.1
Flexible and (near) zero-overhead C++ bindings for MPI
|
Plugin adding a two dimensional communication grid to the communicator. More...
#include <alltoall_grid.hpp>
Public Member Functions | |
auto | make_grid_communicator () const |
Returns a kamping::plugin::GridCommunicator. | |
Plugin adding a two dimensional communication grid to the communicator.
PEs are row-major and abs(#row - #columns
) <= 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
If #PE != #row * #column
then the PEs of the last incomplete row are transposed and appended to the first rows and do not form an own row based communicator. 0 1 2 3 16 4 5 6 7 17 8 9 10 11 12 13 14 15 (16 17) This enables personalized alltoall exchanges with a latency in about sqrt(#PE)
.