|
| communicator (MPI_Comm comm=MPI_COMM_WORLD) |
|
auto | size () const |
|
auto | rank () const |
|
auto | prev () const |
|
auto | next () const |
|
auto | first () const |
|
auto | last () const |
|
MPI_Comm | mpi_comm () const |
|
void | barrier () const |
|
void | bcast (void *src, std::size_t count, std::size_t root) const |
|
void | scatter (const void *src, void *dst, std::size_t count, std::size_t root) const |
|
template<typename T > |
void | scatter (const std::span< T > src, T &dst, std::size_t root) const |
|
void | scatterv (const void *src, int *counts, int *offsets, void *dst, int dst_count, std::size_t root) const |
|
void | gather (const void *src, void *dst, std::size_t count, std::size_t root) const |
|
template<typename T > |
void | gather (const T *src, T *dst, std::size_t count, std::size_t root) const |
|
template<typename T > |
void | gather (const T &src, std::span< T > dst, std::size_t root) const |
|
template<typename T > |
void | all_gather (const T *src, T *dst, std::size_t count) const |
|
template<typename T > |
void | all_gather (const T &src, std::vector< T > &dst) const |
|
template<rng::contiguous_range R> |
void | all_gather (const R &src, R &dst) const |
|
template<typename T > |
void | i_all_gather (const T *src, T *dst, std::size_t count, MPI_Request *req) const |
|
template<typename T > |
void | i_all_gather (const T &src, std::vector< T > &dst, MPI_Request *req) const |
|
void | gatherv (const void *src, MPI_Count *counts, MPI_Aint *offsets, void *dst, std::size_t root) const |
|
template<typename T > |
void | isend (const T *data, std::size_t count, std::size_t dst_rank, auto tag, MPI_Request *request) const |
|
template<typename T > |
void | isend (const T *data, std::size_t count, std::size_t dst_rank, MPI_Request *request) const |
|
template<rng::contiguous_range R> |
void | isend (const R &data, std::size_t dst_rank, auto tag, MPI_Request *request) const |
|
template<rng::contiguous_range R> |
void | isend (const R &data, std::size_t dst_rank, MPI_Request *request) const |
|
template<typename T > |
void | irecv (T *data, std::size_t size, std::size_t src_rank, auto tag, MPI_Request *request) const |
|
template<typename T > |
void | irecv (T *data, std::size_t size, std::size_t src_rank, MPI_Request *request) const |
|
template<rng::contiguous_range R> |
void | irecv (R &data, std::size_t src_rank, int tag, MPI_Request *request) const |
|
template<rng::contiguous_range R> |
void | irecv (R &data, std::size_t src_rank, MPI_Request *request) const |
|
void | wait (MPI_Request request) const |
|
void | waitall (std::size_t count, MPI_Request *requests) const |
|
template<rng::contiguous_range R> |
void | alltoall (const R &sendr, R &recvr, std::size_t count) |
|
template<typename T > |
void | alltoall (const T *send, T *receive, std::size_t count) |
|
template<rng::contiguous_range SendR, rng::contiguous_range RecvR> |
void | alltoallv (const SendR &sendbuf, const std::vector< std::size_t > &sendcnt, const std::vector< std::size_t > &senddsp, RecvR &recvbuf, const std::vector< std::size_t > &recvcnt, const std::vector< std::size_t > &recvdsp) |
|
bool | operator== (const communicator &other) const |
|