vt::elm::ElementLBData struct

Derived classes

struct vt::vrt::collection::balance::CollectionLBData

Public static variables

static const constexpr SubphaseType no_subphase constexpr

Constructors, destructors, conversion operators

ElementLBData() defaulted
ElementLBData(ElementLBData const&) defaulted
ElementLBData(ElementLBData&&) defaulted

Public functions

void start(TimeType time)
void stop(TimeType time)
void addTime(LoadType const timeLoad)
void setTime(LoadType const timeLoad, std::vector<LoadType> const& subphaseLoads)
warning: this will override any existing time that might be there
void sendToEntity(ElementIDStruct to, ElementIDStruct from, double bytes)
void sendComm(elm::CommKey key, double bytes)
void addWritableSharedID(NodeType home, int shared_id, double bytes)
void addReadOnlySharedID(NodeType home, int shared_id, double bytes)
void recvComm(elm::CommKey key, double bytes)
void recvObjData(ElementIDStruct to_perm, ElementIDStruct from_perm, double bytes, bool bcast)
void recvFromNode(ElementIDStruct to_perm, NodeType from, double bytes, bool bcast)
void recvToNode(NodeType to, ElementIDStruct from_perm, double bytes, bool bcast)
void setPhase(PhaseType const& new_phase)
void updatePhase(PhaseType const& inc = 1)
void resetPhase()
auto getPhase() const -> PhaseType
auto getLoad(PhaseType const& phase) const -> LoadType
auto getLoad(PhaseType phase, SubphaseType subphase) const -> LoadType
auto getComm(PhaseType const& phase) -> CommMapType const &
auto getSubphaseComm(PhaseType phase) -> std::vector<CommMapType> const &
auto getSubphaseTimes(PhaseType phase) -> std::vector<LoadType> const &
void setSubPhase(SubphaseType subphase)
auto getSubPhase() const -> SubphaseType
auto getLoadPhaseCount() const -> std::size_t
auto getCommPhaseCount() const -> std::size_t
auto getSubphaseLoadPhaseCount() const -> std::size_t
auto getSubphaseCommPhaseCount() const -> std::size_t
template<typename Serializer>
void serialize(Serializer& s)

Protected functions

void releaseLBDataFromUnneededPhases(PhaseType phase, unsigned int look_back)
Release LB data from phases prior to lookback.

Protected variables

bool cur_time_started_
TimeType cur_time_
PhaseType cur_phase_
std::unordered_map<PhaseType, LoadType> phase_timings_
std::unordered_map<PhaseType, CommMapType> phase_comm_
SubphaseType cur_subphase_
std::unordered_map<PhaseType, std::vector<LoadType>> subphase_timings_
std::unordered_map<PhaseType, std::vector<CommMapType>> subphase_comm_