16#include <kamping/collectives/collectives_helpers.hpp>
17#include <kamping/communicator.hpp>
32 template <
typename...>
typename DefaultContainerType = std::vector,
33 template <
typename,
template <
typename...>
typename>
37 public Plugins<TopologyCommunicator<DefaultContainerType, Plugins...>, DefaultContainerType>... {
41 template <
typename...
Args>
71 template <
typename...
Args>
Wrapper for MPI communicator providing access to rank() and size() of the communicator....
Definition communicator.hpp:49
Communicator()
Default constructor not specifying any MPI communicator and using MPI_COMM_WORLD by default.
Definition communicator.hpp:57
size_t root() const
Default root for MPI operations that require a root as size_t.
Definition communicator.hpp:239
STL-compatible allocator for requesting memory using the builtin MPI allocator.
Definition allocator.hpp:32
A Communicator which possesses an additional virtual topology and supports neighborhood collectives (...
Definition topology_communicator.hpp:37
int out_degree_signed() const
Returns the out degree of the process' rank, i.e. the number of out-going edges/communication links s...
Definition topology_communicator.hpp:67
size_t in_degree() const
Returns the in degree of the process' rank, i.e. the number of in-going edges/communication links tow...
Definition topology_communicator.hpp:47
TopologyCommunicator(size_t in_degree, size_t out_degree)
topolgy constructor using MPI_COMM_WORLD by default.
Definition topology_communicator.hpp:81
TopologyCommunicator(size_t in_degree, size_t out_degree, MPI_Comm comm, int root, bool take_ownership=false)
topolgy constructor where an MPI communicator and the default root rank have to be specified.
Definition topology_communicator.hpp:100
TopologyCommunicator(size_t in_degree, size_t out_degree, MPI_Comm comm, bool take_ownership=false)
topolgy constructor where an MPI communicator has to be specified.
Definition topology_communicator.hpp:90
size_t out_degree() const
Returns the out degree of the process' rank, i.e. the number of out-going edges/communication links s...
Definition topology_communicator.hpp:60
int in_degree_signed() const
Returns the in degree of the process' rank, i.e. the number of in-going edges/communication links tow...
Definition topology_communicator.hpp:53
auto neighbor_alltoall(Args... args) const
Wrapper for MPI_Neighbor_alltoall.
Definition alltoall.hpp:87