Class faabric::mpi::MpiWorld
-
class MpiWorld
Public Functions
-
MpiWorld()
-
void broadcastHostsToRanks()
-
std::string getHostForRank(int rank)
-
std::string getUser()
-
std::string getFunction()
-
int getId() const
-
int getSize() const
-
bool destroy()
-
void getCartesianRank(int rank, int maxDims, const int *dims, int *periods, int *coords)
-
void getRankFromCoords(int *rank, int *coords)
-
void shiftCartesianCoords(int rank, int direction, int disp, int *source, int *destination)
-
void send(int sendRank, int recvRank, const uint8_t *buffer, faabric_datatype_t *dataType, int count, MpiMessageType messageType = MpiMessageType::NORMAL)
-
int isend(int sendRank, int recvRank, const uint8_t *buffer, faabric_datatype_t *dataType, int count, MpiMessageType messageType = MpiMessageType::NORMAL)
-
void broadcast(int rootRank, int thisRank, uint8_t *buffer, faabric_datatype_t *dataType, int count, MpiMessageType messageType = MpiMessageType::NORMAL)
-
void recv(int sendRank, int recvRank, uint8_t *buffer, faabric_datatype_t *dataType, int count, MPI_Status *status, MpiMessageType messageType = MpiMessageType::NORMAL)
-
int irecv(int sendRank, int recvRank, uint8_t *buffer, faabric_datatype_t *dataType, int count, MpiMessageType messageType = MpiMessageType::NORMAL)
-
void awaitAsyncRequest(int requestId)
-
void sendRecv(uint8_t *sendBuffer, int sendcount, faabric_datatype_t *sendDataType, int sendRank, uint8_t *recvBuffer, int recvCount, faabric_datatype_t *recvDataType, int recvRank, int myRank, MPI_Status *status)
-
void scatter(int sendRank, int recvRank, const uint8_t *sendBuffer, faabric_datatype_t *sendType, int sendCount, uint8_t *recvBuffer, faabric_datatype_t *recvType, int recvCount)
-
void gather(int sendRank, int recvRank, const uint8_t *sendBuffer, faabric_datatype_t *sendType, int sendCount, uint8_t *recvBuffer, faabric_datatype_t *recvType, int recvCount)
-
void allGather(int rank, const uint8_t *sendBuffer, faabric_datatype_t *sendType, int sendCount, uint8_t *recvBuffer, faabric_datatype_t *recvType, int recvCount)
-
void reduce(int sendRank, int recvRank, uint8_t *sendBuffer, uint8_t *recvBuffer, faabric_datatype_t *datatype, int count, faabric_op_t *operation)
-
void allReduce(int rank, uint8_t *sendBuffer, uint8_t *recvBuffer, faabric_datatype_t *datatype, int count, faabric_op_t *operation)
-
void op_reduce(faabric_op_t *operation, faabric_datatype_t *datatype, int count, uint8_t *inBuffer, uint8_t *resultBuffer)
-
void scan(int rank, uint8_t *sendBuffer, uint8_t *recvBuffer, faabric_datatype_t *datatype, int count, faabric_op_t *operation)
-
void allToAll(int rank, uint8_t *sendBuffer, faabric_datatype_t *sendType, int sendCount, uint8_t *recvBuffer, faabric_datatype_t *recvType, int recvCount)
-
void probe(int sendRank, int recvRank, MPI_Status *status)
-
void barrier(int thisRank)
-
std::shared_ptr<InMemoryMpiQueue> getLocalQueue(int sendRank, int recvRank)
-
long getLocalQueueSize(int sendRank, int recvRank)
-
void overrideHost(const std::string &newHost)
-
double getWTime()
-
void prepareMigration(int newGroupId, int thisRank, bool thisRankMustMigrate)
-
MpiWorld()