Class faabric::batch_scheduler::SchedulingDecision
-
class SchedulingDecision
Public Functions
-
SchedulingDecision(uint32_t appIdIn, int32_t groupIdIn)
-
bool operator==(const SchedulingDecision &rhs) const = default
-
bool isSingleHost() const
Work out if this decision is all in one host. If the decision is completely on another host, we still count it as not being on a single host, as this host will be the main.
Will always return false if single host optimisations are switched off.
-
void addMessage(const std::string &host, int32_t messageId, int32_t appIdx)
-
void addMessage(const std::string &host, int32_t messageId, int32_t appIdx, int32_t groupIdx)
-
void addMessageInPosition(int32_t pos, const std::string &host, int32_t messageId, int32_t appIdx, int32_t groupIdx, int32_t mpiPort)
-
int32_t removeMessage(int32_t messageId)
-
std::set<std::string> uniqueHosts()
-
void print(const std::string &logLevel = "debug")
Public Members
-
uint32_t appId = 0
-
int32_t groupId = 0
-
int32_t nFunctions = 0
-
std::vector<std::string> hosts
-
std::vector<int32_t> messageIds
-
std::vector<int32_t> appIdxs
-
std::vector<int32_t> groupIdxs
-
std::vector<int32_t> mpiPorts
-
std::string returnHost
Public Static Functions
-
static SchedulingDecision fromPointToPointMappings(faabric::PointToPointMappings &mappings)
-
SchedulingDecision(uint32_t appIdIn, int32_t groupIdIn)