1 #include "../internal/monolish_internal.hpp"
2 #include "../internal/mpi/mpi_util.hpp"
12 template <
typename T>
void Send_core(T val,
int dst,
int tag,
MPI_Comm comm) {
16 #if defined MONOLISH_USE_MPI
17 MPI_Send(&val, 1, internal::mpi::get_type(val), dst, tag, comm);
25 void Send_core(std::vector<T> &vec,
int dst,
int tag,
MPI_Comm comm) {
29 #if defined MONOLISH_USE_MPI
30 MPI_Send(vec.data(), vec.size(), internal::mpi::get_type(vec[0]), dst, tag,
43 #if defined MONOLISH_USE_MPI
44 MPI_Send(vec.
data(), vec.
size(), internal::mpi::get_type(vec[0]), dst, tag,
61 #if defined MONOLISH_USE_MPI
63 MPI_Recv(&val, 1, internal::mpi::get_type(val), src, tag, comm, &stat);
79 #if defined MONOLISH_USE_MPI
81 MPI_Recv(vec.data(), vec.size(), internal::mpi::get_type(vec[0]), src, tag,
98 #if defined MONOLISH_USE_MPI
100 MPI_Recv(vec.
data(), vec.
size(), internal::mpi::get_type(vec[0]), src, tag,