PPL Logo

HbmLB Class Reference
[Charm++ Load Balancing Framework]

#include <HbmLB.h>

Inheritance diagram for HbmLB:

Inheritance graph
[legend]
Collaboration diagram for HbmLB:

Collaboration graph
[legend]

Public Member Functions

 HbmLB (const CkLBOptions &)
 HbmLB (CkMigrateMessage *m)
 ~HbmLB ()
void AtSync (void)
void ProcessAtSync (void)
void ReceiveStats (double t, int frompe, int fromlevel)
void ResumeClients (double result)
void ResumeClients (int balancing)
void ReceiveMigrationCount (int, int lblevel)
void ReceiveMigrationDelta (double t, int lblevel, int level)
void Migrated (LDObjHandle h, int waitBarrier)
void ObjMigrated (LDObjData data, LDCommData *cdata, int n)
void collectCommData (int objIdx, CkVec< LDCommData > &comms)
void MigrationDone (int balancing)
void NotifyObjectMigrationDone (int level, int lblevel)
virtual void Loadbalancing (int level)
void LoadbalancingDone (int level)
void ReceiveResumeClients (int fromlevel, int balancing)
void reportLBQulity (double mload, double mCpuLoad, double totalload, int nmsgs, double bytesentry)

Static Public Member Functions

static void staticAtSync (void *)
static void staticMigrated (void *me, LDObjHandle h, int waitBarrier)

Protected Member Functions

virtual bool QueryBalanceNow (int)
virtual bool QueryMigrateStep (int)
virtual void work (LDStats *stats)
virtual int useMem ()
int NeighborIndex (int pe, int atlevel)

Protected Attributes

MyHmbHierarchyTreetree
CkVec< LevelData * > levelData
int currentLevel
int lbLevel

Private Member Functions

void FindNeighbors ()

Private Attributes

int foundNeighbors
LDStats myStats
int migrate_expected
LBMigrateMsg ** mig_msgs
int mig_msgs_received
int cur_ld_balancer
double start_lb_time
double maxLoad
double maxCpuLoad
double maxCommBytes
int maxCommCount
double totalLoad
double maxMem
int vector_n_moves
CkVec< LDObjHandlenewObjs

Data Structures

class  LevelData
struct  MigrationRecord

Detailed Description

Definition at line 70 of file HbmLB.h.


Constructor & Destructor Documentation

HbmLB::HbmLB ( CkMigrateMessage m  )  [inline]

Definition at line 74 of file HbmLB.h.


Member Function Documentation

static void HbmLB::staticMigrated ( void *  me,
LDObjHandle  h,
int  waitBarrier 
) [static]

Referenced by HbmLB().

Here is the caller graph for this function:

virtual bool HbmLB::QueryBalanceNow ( int   )  [inline, protected, virtual]

Definition at line 114 of file HbmLB.h.

Referenced by AtSync().

Here is the caller graph for this function:

virtual bool HbmLB::QueryMigrateStep ( int   )  [inline, protected, virtual]

Definition at line 115 of file HbmLB.h.


Field Documentation

Definition at line 110 of file HbmLB.h.

Referenced by FindNeighbors(), and HbmLB().

LDStats HbmLB::myStats [private]

Definition at line 122 of file HbmLB.h.

Referenced by FindNeighbors(), HbmLB(), LoadbalancingDone(), MigrationDone(), ReceiveStats(), and ~HbmLB().

int HbmLB::currentLevel [protected]

Definition at line 187 of file HbmLB.h.

Referenced by HbmLB(), and Loadbalancing().

int HbmLB::lbLevel [protected]

Definition at line 188 of file HbmLB.h.

Referenced by MigrationDone(), NotifyObjectMigrationDone(), and ReceiveMigrationCount().

Definition at line 193 of file HbmLB.h.

Definition at line 194 of file HbmLB.h.

Definition at line 195 of file HbmLB.h.

Definition at line 196 of file HbmLB.h.

double HbmLB::start_lb_time [private]

Definition at line 197 of file HbmLB.h.

Referenced by Loadbalancing(), ProcessAtSync(), and ResumeClients().

double HbmLB::maxLoad [private]

Definition at line 199 of file HbmLB.h.

Referenced by HbmLB(), and reportLBQulity().

double HbmLB::maxCpuLoad [private]

Definition at line 200 of file HbmLB.h.

Referenced by HbmLB(), and reportLBQulity().

double HbmLB::maxCommBytes [private]

Definition at line 201 of file HbmLB.h.

Referenced by HbmLB(), and reportLBQulity().

Definition at line 202 of file HbmLB.h.

Referenced by HbmLB(), and reportLBQulity().

double HbmLB::totalLoad [private]

Definition at line 203 of file HbmLB.h.

Referenced by HbmLB(), LoadbalancingDone(), reportLBQulity(), and ResumeClients().

double HbmLB::maxMem [private]

Definition at line 204 of file HbmLB.h.

Definition at line 206 of file HbmLB.h.

Referenced by HbmLB().

Definition at line 208 of file HbmLB.h.

Referenced by Migrated(), and MigrationDone().


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

Generated on Mon Sep 21 08:25:34 2020 for Charm++ by  doxygen 1.5.5