PPL Logo

LBObj Class Reference
[Charm++ Load Balancing Framework]

#include <LBObj.h>

Collaboration diagram for LBObj:

Collaboration graph
[legend]

Public Member Functions

 LBObj (const LDObjHandle &_h, void *usr_ptr=NULL, bool _migratable=true, bool _asyncArrival=false)
 ~LBObj ()
void Clear (void)
void IncrementTime (LBRealType walltime, LBRealType cputime)
void StartTimer (void)
void StopTimer (LBRealType *walltime, LBRealType *cputime)
void getTime (LBRealType *w, LBRealType *c)
void setTiming (LBRealType cputime)
LDOMHandleparentOM ()
const LDObjHandleGetLDObjHandle () const
void SetMigratable (bool mig)
void setPupSize (size_t obj_pup_size)
void UseAsyncMigrate (bool async)
LDObjDataObjData ()
void lastKnownLoad (LBRealType *w, LBRealType *c)
void * getLocalUserData ()
void * getDBUserData (int idx)

Private Attributes

void * localUserData
LDObjData data
double startWTime
LBRealType lastWallTime
double startCTime
LBRealType lastCpuTime

Friends

class LBDB

Detailed Description

Definition at line 13 of file LBObj.h.


Constructor & Destructor Documentation

LBObj::LBObj ( const LDObjHandle _h,
void *  usr_ptr = NULL,
bool  _migratable = true,
bool  _asyncArrival = false 
) [inline]

Definition at line 18 of file LBObj.h.

References LDObjData::asyncArrival, Clear(), data, LDObjData::handle, lastCpuTime, lastWallTime, localUserData, LDObjData::migratable, startCTime, and startWTime.

Here is the call graph for this function:

LBObj::~LBObj (  )  [inline]

Definition at line 38 of file LBObj.h.


Member Function Documentation

void LBObj::StartTimer ( void   )  [inline]

Definition at line 43 of file LBObj.h.

References startCTime, and startWTime.

Referenced by LDCollectStatsOn(), and LDObjectStart().

Here is the caller graph for this function:

void LBObj::StopTimer ( LBRealType walltime,
LBRealType cputime 
) [inline]

Definition at line 49 of file LBObj.h.

References startCTime, and startWTime.

Referenced by LDObjectStop().

Here is the caller graph for this function:

void LBObj::getTime ( LBRealType w,
LBRealType c 
) [inline]

Definition at line 65 of file LBObj.h.

References LDObjData::cpuTime, data, and LDObjData::wallTime.

Referenced by LDGetObjLoad().

Here is the caller graph for this function:

void LBObj::setTiming ( LBRealType  cputime  )  [inline]

Definition at line 74 of file LBObj.h.

References LDObjData::cpuTime, data, and LDObjData::wallTime.

Referenced by LBDatabase::EstObjLoad().

Here is the caller graph for this function:

LDOMHandle& LBObj::parentOM (  )  [inline]

Definition at line 82 of file LBObj.h.

References data, LDObjData::handle, and LDObjHandle::omhandle.

Referenced by LBDB::MetaLBCallLBOnChares(), and LBDB::MetaLBResumeWaitingChares().

Here is the caller graph for this function:

const LDObjHandle& LBObj::GetLDObjHandle (  )  const [inline]

Definition at line 83 of file LBObj.h.

References data, and LDObjData::handle.

Referenced by LDGetObjHandle(), LBDB::MetaLBCallLBOnChares(), and LBDB::MetaLBResumeWaitingChares().

Here is the caller graph for this function:

void LBObj::SetMigratable ( bool  mig  )  [inline]

Definition at line 84 of file LBObj.h.

References data, and LDObjData::migratable.

Referenced by LDMigratable(), and LDNonMigratable().

Here is the caller graph for this function:

void LBObj::setPupSize ( size_t  obj_pup_size  )  [inline]

Definition at line 85 of file LBObj.h.

References data, pup_encodeSize, and LDObjData::pupSize.

Referenced by LDSetPupSize().

Here is the caller graph for this function:

void LBObj::UseAsyncMigrate ( bool  async  )  [inline]

Definition at line 88 of file LBObj.h.

References LDObjData::asyncArrival, and data.

Referenced by LDAsyncMigrate().

Here is the caller graph for this function:

LDObjData& LBObj::ObjData (  )  [inline]

Definition at line 89 of file LBObj.h.

References data.

Referenced by LBDB::GetObjData(), and controlPointManager::gotoNextPhase().

Here is the caller graph for this function:

void LBObj::lastKnownLoad ( LBRealType w,
LBRealType c 
) [inline]

Definition at line 90 of file LBObj.h.

References lastCpuTime, and lastWallTime.

Referenced by LDQueryKnownObjLoad().

Here is the caller graph for this function:

void* LBObj::getLocalUserData (  )  [inline]

Definition at line 98 of file LBObj.h.

References localUserData.

Referenced by LDObjUserData().

Here is the caller graph for this function:

void* LBObj::getDBUserData ( int  idx  )  [inline]

Definition at line 100 of file LBObj.h.

References data, and LDObjData::getUserData().

Referenced by LDDBObjUserData().

Here is the call graph for this function:

Here is the caller graph for this function:


Friends And Related Function Documentation

friend class LBDB [friend]

Definition at line 15 of file LBObj.h.


Field Documentation

void* LBObj::localUserData [private]

Definition at line 104 of file LBObj.h.

Referenced by getLocalUserData(), and LBObj().

double LBObj::startWTime [private]

Definition at line 109 of file LBObj.h.

Referenced by LBObj(), StartTimer(), and StopTimer().

Definition at line 110 of file LBObj.h.

Referenced by LBDB::ClearLoads(), lastKnownLoad(), and LBObj().

double LBObj::startCTime [private]

Definition at line 112 of file LBObj.h.

Referenced by LBObj(), StartTimer(), and StopTimer().

Definition at line 113 of file LBObj.h.

Referenced by LBDB::ClearLoads(), lastKnownLoad(), and LBObj().


The documentation for this class was generated from the following files:

Generated on Mon Sep 21 08:26:36 2020 for Charm++ by  doxygen 1.5.5