
#include <BaseLB.h>

Public Member Functions | |
| LDStats (int c=0, int complete_flag=1) | |
| int | nprocs () const |
| the functions below should be used to obtain the number of processors instead of accessing count directly | |
| int & | nprocs () |
| void | assign (int oid, int pe) |
| void | makeCommHash () |
| build hash table | |
| void | deleteCommHash () |
| int | getHash (const LDObjKey &) |
| given an LDObjKey, returns the index in the objData vector this index changes every time one does load balancing even within a run | |
| int | getHash (const LDObjid &oid, const LDOMid &mid) |
| int | getSendHash (LDCommData &cData) |
| int | getRecvHash (LDCommData &cData) |
| void | clearCommHash () |
| void | clear () |
| void | clearBgLoad () |
| void | computeNonlocalComm (int &nmsgs, int &nbytes) |
| double | computeAverageLoad () |
| void | normalize_speed () |
| void | print () |
| void | removeObject (int obj) |
| void | pup (PUP::er &p) |
| int | useMem () |
Data Fields | |
| int | count |
| ProcStats * | procs |
| int | n_objs |
| int | n_migrateobjs |
| CkVec< LDObjData > | objData |
| CkVec< int > | from_proc |
| CkVec< int > | to_proc |
| int | n_comm |
| CkVec< LDCommData > | commData |
| int * | objHash |
| int | hashSize |
| int | complete_flag |
..) and work(...)
Definition at line 84 of file BaseLB.h.
| int BaseLB::LDStats::nprocs | ( | ) | const [inline] |
the functions below should be used to obtain the number of processors instead of accessing count directly
Definition at line 108 of file BaseLB.h.
References count.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clearBgLoad(), computeAverageLoad(), computeNonlocalComm(), PhasebyArrayLB::copyStats(), HybridBaseLB::createMigrateMsg(), normalize_speed(), print(), ProcArray::ProcArray(), pup(), CentralLB::ReceiveStats(), useMem(), VectorStrategy(), TreeMatchLB::work(), TopoLB::work(), TopoCentLB::work(), RotateLB::work(), RefineTopoLB::work(), RefineLB::work(), RefineKLB::work(), RefineCommLB::work(), RandCentLB::work(), OrbLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyLB::work(), GreedyCommLB::work(), GreedyAgentLB::work(), CommLB::work(), and BlockLB::work().
| int& BaseLB::LDStats::nprocs | ( | ) | [inline] |
Definition at line 111 of file BaseLB.h.
References procs, and to_proc.
Referenced by GreedyCommLB::work().
| void BaseLB::LDStats::clear | ( | ) | [inline] |
Definition at line 122 of file BaseLB.h.
References commData, deleteCommHash(), CkVec< T >::free(), from_proc, n_comm, n_migrateobjs, n_objs, objData, and to_proc.
Referenced by HybridBaseLB::LevelData::clear(), HybridBaseLB::CollectInfo(), CentralLB::LoadBalance(), HybridBaseLB::PropagateInfo(), and PhasebyArrayLB::work().
| void BaseLB::LDStats::clearBgLoad | ( | ) | [inline] |
Definition at line 130 of file BaseLB.h.
References nprocs(), and procs.
Referenced by HybridBaseLB::Loadbalancing(), and HbmLB::Loadbalancing().
Definition at line 86 of file BaseLB.h.
Referenced by assign(), HybridBaseLB::buildCombinedLBStatsMessage(), GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), clearBgLoad(), computeAverageLoad(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), PhasebyArrayLB::copyStats(), RefinerApprox::create(), Refiner::create(), CentralLB::depositData(), HybridBaseLB::depositLBStatsMessage(), HybridBaseLB::FindNeighbors(), HbmLB::FindNeighbors(), LBInfo::getInfo(), GridMetisLB::Initialize_PE_Data(), GridHybridSeedLB::Initialize_PE_Data(), GridHybridLB::Initialize_PE_Data(), GridCommRefineLB::Initialize_PE_Data(), GridCommLB::Initialize_PE_Data(), LDStats(), CentralLB::LoadBalance(), OrbLB::mapPartitionsToNodes(), normalize_speed(), RefineKLB::performGreedyMoves(), print(), LBSimulation::PrintDifferences(), ProcArray::ProcArray(), pup(), OrbLB::rec_divide(), CentralLB::ReceiveStats(), VectorStrategy(), TopoLB::work(), TopoCentLB::work(), RotateLB::work(), RefineTopoLB::work(), RandCentLB::work(), OrbLB::work(), GreedyLB::work(), GreedyCommLB::work(), CommLB::work(), and BlockLB::work().
Definition at line 88 of file BaseLB.h.
Referenced by Refiner::AllocProcs(), HybridBaseLB::buildCombinedLBStatsMessage(), GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), computeAverageLoad(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), ObjGraph::convertDecisions(), PhasebyArrayLB::copyStats(), RefinerApprox::create(), Refiner::create(), HybridBaseLB::createMigrateMsg(), CentralLB::depositData(), HybridBaseLB::depositLBStatsMessage(), LBInfo::getInfo(), CentralLB::LoadBalance(), HybridBaseLB::Loadbalancing(), makeCommHash(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), RefineKLB::performGreedyMoves(), print(), HbmLB::ProcessAtSync(), pup(), CentralLB::readStatsMsgs(), HybridBaseLB::ReceiveMigration(), HbmLB::ReceiveMigrationDelta(), CentralLB::ReceiveStats(), HybridBaseLB::ReceiveVectorMigration(), RefinerComm::Refine(), RefinerApprox::Refine(), Refiner::Refine(), removeObject(), HbmLB::ResumeClients(), CentralLB::simulationRead(), NeighborLB::Strategy(), NeighborCommLB::Strategy(), HybridBaseLB::Strategy(), PhasebyArrayLB::updateStats(), useMem(), TopoLB::work(), TopoCentLB::work(), RotateLB::work(), RefineTopoLB::work(), RefineLB::work(), RefineKLB::work(), RefineCommLB::work(), RandCentLB::work(), PhasebyArrayLB::work(), OrbLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyLB::work(), GreedyCommLB::work(), CommLB::work(), ComboCentLB::work(), and BlockLB::work().
Definition at line 89 of file BaseLB.h.
Referenced by HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), PhasebyArrayLB::copyStats(), CentralLB::depositData(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), pup(), CentralLB::readStatsMsgs(), removeObject(), OrbLB::work(), and GreedyCommLB::work().
Definition at line 90 of file BaseLB.h.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), HybridBaseLB::collectCommData(), HbmLB::collectCommData(), computeAverageLoad(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), PhasebyArrayLB::copyStats(), RefinerApprox::create(), Refiner::create(), HybridBaseLB::createMigrateMsg(), CentralLB::depositData(), getHash(), LBInfo::getInfo(), GridMetisLB::Initialize_Object_Data(), GridHybridSeedLB::Initialize_Object_Data(), GridHybridLB::Initialize_Object_Data(), GridCommRefineLB::Initialize_Object_Data(), GridCommLB::Initialize_Object_Data(), CentralLB::LoadBalance(), HybridBaseLB::Loadbalancing(), makeCommHash(), Marquardt_solver(), HbmLB::MigrationDone(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), RefineKLB::performGreedyMoves(), print(), HbmLB::ProcessAtSync(), pup(), CentralLB::ReceiveCounts(), HybridBaseLB::ReceiveMigration(), HbmLB::ReceiveMigrationDelta(), HybridBaseLB::ReceiveVectorMigration(), removeObject(), NeighborLB::Strategy(), NeighborCommLB::Strategy(), PhasebyArrayLB::updateStats(), RotateLB::work(), RandCentLB::work(), PhasebyArrayLB::work(), OrbLB::work(), GreedyLB::work(), GreedyCommLB::work(), CommLB::work(), and BlockLB::work().
Definition at line 91 of file BaseLB.h.
Referenced by GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), PhasebyArrayLB::copyStats(), HybridBaseLB::createMigrateMsg(), CentralLB::depositData(), GridMetisLB::Initialize_Object_Data(), GridHybridSeedLB::Initialize_Object_Data(), GridHybridLB::Initialize_Object_Data(), GridCommRefineLB::Initialize_Object_Data(), GridCommLB::Initialize_Object_Data(), CentralLB::LoadBalance(), HybridBaseLB::Loadbalancing(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), print(), HbmLB::ProcessAtSync(), pup(), CentralLB::ReceiveCounts(), HybridBaseLB::ReceiveMigration(), HybridBaseLB::ReceiveVectorMigration(), removeObject(), CentralLB::simulationRead(), TopoLB::work(), TopoCentLB::work(), RotateLB::work(), RefineTopoLB::work(), RefineLB::work(), RefineKLB::work(), RefineCommLB::work(), RecBisectBfLB::work(), RandCentLB::work(), PhasebyArrayLB::work(), OrbLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyLB::work(), GreedyCommLB::work(), CommLB::work(), and ComboCentLB::work().
Definition at line 92 of file BaseLB.h.
Referenced by assign(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), GreedyCommLB::compute_com(), computeNonlocalComm(), ObjGraph::convertDecisions(), PhasebyArrayLB::copyStats(), HybridBaseLB::createMigrateMsg(), CentralLB::depositData(), LBInfo::getInfo(), getPredictedLoadWithMsg(), HybridBaseLB::Loadbalancing(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), HbmLB::ProcessAtSync(), pup(), CentralLB::ReceiveCounts(), removeObject(), CentralLB::simulationRead(), HybridBaseLB::Strategy(), GreedyCommLB::update(), TreeMatchLB::work(), TopoLB::work(), TopoCentLB::work(), RotateLB::work(), RefineTopoLB::work(), RefineLB::work(), RefineKLB::work(), RefineCommLB::work(), RecBisectBfLB::work(), RandCentLB::work(), PhasebyArrayLB::work(), OrbLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyLB::work(), GreedyCommLB::work(), GreedyAgentLB::work(), CommLB::work(), ComboCentLB::work(), and BlockLB::work().
Definition at line 94 of file BaseLB.h.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), clearCommHash(), HybridBaseLB::collectCommData(), HbmLB::collectCommData(), computeNonlocalComm(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), PhasebyArrayLB::copyStats(), deleteCommHash(), CentralLB::depositData(), HybridBaseLB::depositLBStatsMessage(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), TopoLB::getHopBytes(), LBInfo::getInfo(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), print(), HbmLB::ProcessAtSync(), pup(), CentralLB::ReceiveStats(), removeObject(), NeighborCommLB::Strategy(), useMem(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
Definition at line 95 of file BaseLB.h.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), HybridBaseLB::buildStats(), CentralLB::buildStats(), clear(), clearCommHash(), HybridBaseLB::collectCommData(), HbmLB::collectCommData(), computeNonlocalComm(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), PhasebyArrayLB::copyStats(), deleteCommHash(), CentralLB::depositData(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), TopoLB::getHopBytes(), LBInfo::getInfo(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), print(), HbmLB::ProcessAtSync(), pup(), CentralLB::ReceiveCounts(), removeObject(), NeighborCommLB::Strategy(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
Definition at line 98 of file BaseLB.h.
Referenced by PhasebyArrayLB::copyStats(), deleteCommHash(), getHash(), makeCommHash(), pup(), and PhasebyArrayLB::updateStats().
Definition at line 100 of file BaseLB.h.
Referenced by PhasebyArrayLB::copyStats(), getHash(), makeCommHash(), and PhasebyArrayLB::updateStats().
Definition at line 102 of file BaseLB.h.
Referenced by computeNonlocalComm(), RefinerApprox::create(), Refiner::create(), ObjGraph::ObjGraph(), HbmLB::ProcessAtSync(), and GreedyCommLB::work().
1.5.5