PPL Logo

TopoLB Class Reference

#include <TopoLB.h>

Inheritance diagram for TopoLB:

Inheritance graph
[legend]
Collaboration diagram for TopoLB:

Collaboration graph
[legend]

Public Member Functions

 TopoLB (const CkLBOptions &opt)
 TopoLB (CkMigrateMessage *m)
void work (LDStats *stats)
void pup (PUP::er &p)

Data Fields

LBTopologytopo

Protected Member Functions

virtual void computePartitions (CentralLB::LDStats *stats, int count, int *newmap)
virtual void allocateDataStructures (int num_procs)
virtual void freeDataStructures (int num_procs)
virtual void initDataStructures (CentralLB::LDStats *stats, int count, int *newmap)
virtual void printDataStructures (int num_procs, int num_objs, int *newmap)
virtual double getHopBytes (CentralLB::LDStats *stats, int count, CkVec< int >obj_to_proc)
virtual double getHopBytesNew (int *assign_map, int count)
void performMapping (int *newmap, int count)
bool QueryBalanceNow (int step)

Protected Attributes

double ** dist
double ** comm
double * commUA
double ** hopBytes
boolpfree
boolcfree
intassign
double total_comm

Detailed Description

Definition at line 47 of file TopoLB.h.


Constructor & Destructor Documentation

TopoLB::TopoLB ( const CkLBOptions opt  ) 

TopoLB::TopoLB ( CkMigrateMessage m  )  [inline]

Definition at line 51 of file TopoLB.h.


Member Function Documentation

void TopoLB::work ( LDStats *  stats  ) 

void TopoLB::pup ( PUP::er p  )  [inline]

Definition at line 55 of file TopoLB.h.

void TopoLB::computePartitions ( CentralLB::LDStats *  stats,
int  count,
int newmap 
) [protected, virtual]

void TopoLB::allocateDataStructures ( int  num_procs  )  [protected, virtual]

Definition at line 64 of file TopoLB.C.

References assign, cfree, comm, commUA, dist, hopBytes, and pfree.

Referenced by work().

Here is the caller graph for this function:

void TopoLB::freeDataStructures ( int  num_procs  )  [protected, virtual]

Definition at line 47 of file TopoLB.C.

References assign, cfree, comm, commUA, dist, hopBytes, and pfree.

Referenced by work().

Here is the caller graph for this function:

void TopoLB::initDataStructures ( CentralLB::LDStats *  stats,
int  count,
int newmap 
) [protected, virtual]

Definition at line 291 of file TopoLB.C.

References assign, _LDCommData::bytes, cfree, comm, commUA, dist, _LDCommData::from_proc(), _LDCommDesc::get_destObj(), _LDCommDesc::get_destObjs(), LBTopology::get_pairwise_hop_count(), _LDCommDesc::get_type(), hopBytes, pfree, _LDCommData::receiver, _LDCommData::sender, topo, and total_comm.

Referenced by work().

Here is the call graph for this function:

Here is the caller graph for this function:

void TopoLB::printDataStructures ( int  num_procs,
int  num_objs,
int newmap 
) [protected, virtual]

Definition at line 824 of file TopoLB.C.

References dist, and hopBytes.

Referenced by work().

Here is the caller graph for this function:

double TopoLB::getHopBytes ( CentralLB::LDStats *  stats,
int  count,
CkVec< int obj_to_proc 
) [protected, virtual]

double TopoLB::getHopBytesNew ( int assign_map,
int  count 
) [protected, virtual]

Definition at line 855 of file TopoLB.C.

References comm, and dist.

Referenced by work().

Here is the caller graph for this function:

void TopoLB::performMapping ( int newmap,
int  count 
) [protected]

Definition at line 470 of file TopoLB.C.

References assign, cfree, comm, commUA, dist, hopBytes, int, PUP::l, and pfree.

Referenced by work().

Here is the caller graph for this function:

bool TopoLB::QueryBalanceNow ( int  step  )  [protected]

Definition at line 42 of file TopoLB.C.


Field Documentation

Definition at line 57 of file TopoLB.h.

Referenced by initDataStructures(), and work().

double** TopoLB::dist [protected]

double** TopoLB::comm [protected]

double* TopoLB::commUA [protected]

double** TopoLB::hopBytes [protected]

bool* TopoLB::pfree [protected]

bool* TopoLB::cfree [protected]

int* TopoLB::assign [protected]

double TopoLB::total_comm [protected]

Definition at line 68 of file TopoLB.h.

Referenced by initDataStructures(), and work().


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

Generated on Mon Sep 21 08:30:58 2020 for Charm++ by  doxygen 1.5.5