
|
This load balancer is a neighborLB and should inherit from NborBaseLB instead of incorrectly inheriting from BaseLB.
Load balancer that use Orthogonal Recursive Bisection(ORB) to partition objects and map to processors.
!!!!!!!!!!!!!!!!! DEFUNCT !!!!!!!!!!!!!!!!!!!
This file is not compiled anymore and its uses should be replaced by the class of the same name (ObjGraph) in ckgraph.h
!!!!!!!!!!!!!!!!! DEFUNCT !!!!!!!!!!!!!!!!!!!
In OrbLB, objects are treated to be enclosed by a rectangular box using their LDObjid as coordinates.
Written by Gengbin Zheng
ORB now takes background load into account 3/26/2010: added support for avail_vector
Also struct LDStats in here should be removed and merged with the one in NborBaseLB. -- ASB
| typedef LBMigrateMsg CLBMigrateMsg |
| typedef LBMigrateMsg CLBMigrateMsg |
| typedef LBMigrateMsg NLBMigrateMsg |
| typedef LBMigrateMsg NLBMigrateMsg |
| typedef void(* LBCreateFn)() |
Definition at line 108 of file LBDatabase.h.
Definition at line 109 of file LBDatabase.h.
| typedef CMK_LBTIME_TYPE LBRealType |
| typedef int LDObjIndex |
| typedef struct _LDCommDesc LDCommDesc |
| typedef void(* LDMigrateFn)(LDObjHandle handle, int dest) |
| typedef void(* LDStatsFn)(LDOMHandle h, int state) |
| typedef void(* LDQueryEstLoadFn)(LDOMHandle h) |
| typedef void(* LDMigratedFn)(void *data, LDObjHandle handle, int waitBarrier) |
| typedef void(* LDStartLBFn)(void *user_ptr) |
| typedef void(* LDMigrationDoneFn)(void *user_ptr) |
| typedef void(* LDPredictFn)(void *user_ptr) |
| typedef void(* LDPredictModelFn)(void *user_ptr, void *model) |
| typedef void(* LDPredictWindowFn)(void *user_ptr, void *model, int wind) |
| typedef void(* LDBarrierFn)(void *user_ptr) |
| typedef void(* LDResumeFn)(void *user_ptr) |
| typedef LBMigrateMsg NLBMigrateMsg |
Definition at line 17 of file RecBisectBfLB.h.
| typedef LBTopo_smp_n<1> LBTopo_smp_n_1 |
Definition at line 162 of file topology.C.
| typedef LBTopo_smp_n<2> LBTopo_smp_n_2 |
Definition at line 163 of file topology.C.
| typedef LBTopo_smp_n<3> LBTopo_smp_n_3 |
Definition at line 164 of file topology.C.
| typedef LBTopo_smp_n<4> LBTopo_smp_n_4 |
Definition at line 165 of file topology.C.
| typedef LBTopo_smp_n<5> LBTopo_smp_n_5 |
Definition at line 166 of file topology.C.
| typedef LBTopo_smp_n<6> LBTopo_smp_n_6 |
Definition at line 167 of file topology.C.
| typedef LBTopo_smp_n<7> LBTopo_smp_n_7 |
Definition at line 168 of file topology.C.
| typedef LBTopo_smp_n<8> LBTopo_smp_n_8 |
Definition at line 169 of file topology.C.
| typedef LBTopo_smp_n<9> LBTopo_smp_n_9 |
Definition at line 170 of file topology.C.
| typedef LBTopo_smp_n<10> LBTopo_smp_n_10 |
Definition at line 171 of file topology.C.
| typedef LBTopo_torus_nd<1> LBTopo_torus_nd_1 |
Definition at line 684 of file topology.C.
| typedef LBTopo_torus_nd<2> LBTopo_torus_nd_2 |
Definition at line 685 of file topology.C.
| typedef LBTopo_torus_nd<3> LBTopo_torus_nd_3 |
Definition at line 686 of file topology.C.
| typedef LBTopo_torus_nd<4> LBTopo_torus_nd_4 |
Definition at line 687 of file topology.C.
| typedef LBTopo_torus_nd<5> LBTopo_torus_nd_5 |
Definition at line 688 of file topology.C.
| typedef LBTopo_torus_nd<6> LBTopo_torus_nd_6 |
Definition at line 689 of file topology.C.
| typedef LBTopo_torus_nd<7> LBTopo_torus_nd_7 |
Definition at line 690 of file topology.C.
| typedef LBTopo_torus_nd<8> LBTopo_torus_nd_8 |
Definition at line 691 of file topology.C.
| typedef LBTopo_torus_nd<9> LBTopo_torus_nd_9 |
Definition at line 692 of file topology.C.
| typedef LBTopo_torus_nd<10> LBTopo_torus_nd_10 |
Definition at line 693 of file topology.C.
| typedef LBTopo_torus_nd_smp<1> LBTopo_torus_nd_smp_1 |
Definition at line 855 of file topology.C.
| typedef LBTopo_torus_nd_smp<2> LBTopo_torus_nd_smp_2 |
Definition at line 859 of file topology.C.
| typedef LBTopo_torus_nd_smp<3> LBTopo_torus_nd_smp_3 |
Definition at line 860 of file topology.C.
| typedef LBTopo_torus_nd_smp<4> LBTopo_torus_nd_smp_4 |
Definition at line 861 of file topology.C.
| typedef LBTopo_torus_nd_smp<5> LBTopo_torus_nd_smp_5 |
Definition at line 862 of file topology.C.
| typedef LBTopo_torus_nd_smp<6> LBTopo_torus_nd_smp_6 |
Definition at line 863 of file topology.C.
| typedef LBTopo_torus_nd_smp<7> LBTopo_torus_nd_smp_7 |
Definition at line 864 of file topology.C.
| typedef LBTopo_torus_nd_smp<8> LBTopo_torus_nd_smp_8 |
Definition at line 865 of file topology.C.
| typedef LBTopo_torus_nd_smp<9> LBTopo_torus_nd_smp_9 |
Definition at line 866 of file topology.C.
| typedef LBTopo_torus_nd_smp<10> LBTopo_torus_nd_smp_10 |
Definition at line 867 of file topology.C.
| typedef LBTopo_itorus_nd<1> LBTopo_itorus_nd_1 |
Definition at line 968 of file topology.C.
| typedef LBTopo_itorus_nd<2> LBTopo_itorus_nd_2 |
Definition at line 972 of file topology.C.
| typedef LBTopo_itorus_nd<3> LBTopo_itorus_nd_3 |
Definition at line 973 of file topology.C.
| typedef LBTopo_itorus_nd<4> LBTopo_itorus_nd_4 |
Definition at line 974 of file topology.C.
| typedef LBTopo_itorus_nd<5> LBTopo_itorus_nd_5 |
Definition at line 975 of file topology.C.
| typedef LBTopo_itorus_nd<6> LBTopo_itorus_nd_6 |
Definition at line 976 of file topology.C.
| typedef LBTopo_itorus_nd<7> LBTopo_itorus_nd_7 |
Definition at line 977 of file topology.C.
| typedef LBTopo_imesh_nd<1> LBTopo_imesh_nd_1 |
Definition at line 1086 of file topology.C.
| typedef LBTopo_imesh_nd<2> LBTopo_imesh_nd_2 |
Definition at line 1090 of file topology.C.
| typedef LBTopo_imesh_nd<3> LBTopo_imesh_nd_3 |
Definition at line 1091 of file topology.C.
| typedef LBTopo_imesh_nd<4> LBTopo_imesh_nd_4 |
Definition at line 1092 of file topology.C.
| typedef LBTopo_imesh_nd<5> LBTopo_imesh_nd_5 |
Definition at line 1093 of file topology.C.
| typedef LBTopo_imesh_nd<6> LBTopo_imesh_nd_6 |
Definition at line 1094 of file topology.C.
| typedef LBTopo_imesh_nd<7> LBTopo_imesh_nd_7 |
Definition at line 1095 of file topology.C.
| typedef LBTopo_graph_nc<2> LBTopo_graph_nc_2 |
Definition at line 1143 of file topology.C.
| typedef LBTopo_graph_nc<3> LBTopo_graph_nc_3 |
Definition at line 1144 of file topology.C.
| typedef LBTopo_graph_nc<4> LBTopo_graph_nc_4 |
Definition at line 1145 of file topology.C.
| typedef LBTopo_graph_nc<5> LBTopo_graph_nc_5 |
Definition at line 1146 of file topology.C.
| typedef LBTopo_graph_nc<6> LBTopo_graph_nc_6 |
Definition at line 1147 of file topology.C.
| typedef LBTopo_graph_nc<7> LBTopo_graph_nc_7 |
Definition at line 1148 of file topology.C.
| typedef LBTopo_graph_nc<8> LBTopo_graph_nc_8 |
Definition at line 1149 of file topology.C.
| typedef LBTopo_graph_nc<9> LBTopo_graph_nc_9 |
Definition at line 1150 of file topology.C.
| typedef LBTopo_graph_nc<10> LBTopo_graph_nc_10 |
Definition at line 1151 of file topology.C.
| typedef LBTopo_graph_nc<20> LBTopo_graph_nc_20 |
Definition at line 1152 of file topology.C.
| typedef LBTopo_karytree<2> LBTopo_2_arytree |
Definition at line 1202 of file topology.C.
| typedef LBTopo_karytree<3> LBTopo_3_arytree |
Definition at line 1205 of file topology.C.
| typedef LBTopo_karytree<4> LBTopo_4_arytree |
Definition at line 1206 of file topology.C.
| typedef LBTopo_karytree<128> LBTopo_128_arytree |
Definition at line 1207 of file topology.C.
| typedef LBTopo_karytree<512> LBTopo_512_arytree |
Definition at line 1208 of file topology.C.
| typedef void *(* LBtopoFn)() |
Definition at line 86 of file topology.h.
Definition at line 64 of file BaseLB.C.
References i_abs(), and _LDObjid::id.
Referenced by BaseLB::LDStats::getHash(), and BaseLB::LDStats::makeCommHash().
Definition at line 144 of file BaseLB.C.
References doublingPrimes.
Referenced by BaseLB::LDStats::makeCommHash(), and CkHashtable::put().
Definition at line 22 of file bitvecset.c.
References malloc(), BV_Set::max, printf(), s, BV_Set::size, and BV_Set::vector.
Referenced by makeEmptySet(), and RecBisectBfLB::partitionInTwo().
Definition at line 13 of file bitvecset.c.
References makeSet().
Referenced by RecBisectBfLB::partitionInTwo().
| void destroySet | ( | BV_Set * | set | ) |
Definition at line 52 of file bitvecset.c.
References BV_Set::max, printf(), BV_Set::size, and BV_Set::vector.
Referenced by RecBisectBfLB::addToQ().
Definition at line 67 of file bitvecset.c.
References BV_Set::max, printf(), and BV_Set::vector.
Referenced by RecBisectBfLB::addToQ(), RecBisectBfLB::enqChildren(), and RecBisectBfLB::findNextUnassigned().
Definition at line 77 of file bitvecset.c.
References BV_Set::size.
Referenced by RecBisectBfLB::partitionInTwo().
Definition at line 82 of file bitvecset.c.
References malloc(), BV_Set::max, printf(), BV_Set::size, and BV_Set::vector.
Referenced by RecBisectBfLB::partitionInTwo().
| void getGlobalStep | ( | CkGroupID | ) |
| void initMlogLBStep | ( | CkGroupID | gid | ) |
This is the first time Converse is called after AtSync method has been called by every local object.
It is a good place to insert some optimizations for synchronized checkpoint. In the case of causal message logging, we can take advantage of this situation and garbage collect at this point.
Definition at line 3089 of file ckcausalmlog.C.
References Converse::CkMyPe(), garbageCollectMlog(), and _ckGroupID::idx.
Referenced by CentralLB::ProcessAtSync().
| void sendDummyMigrationCounts | ( | int * | dummyCounts | ) |
this method is used by a restarted processor to tell other processors that they are not going to receive these many objects.
. just the count not the objects themselves
Definition at line 2996 of file ckcausalmlog.C.
References CmiMyPe(), Converse::CmiSyncSend(), DummyMigrationMsg::count, DummyMigrationMsg::flag, and DummyMigrationMsg::lbID.
Referenced by CentralLB::ProcessReceiveMigration().
| CpvExtern | ( | void * | , | |
| CkGridObject | ||||
| ) |
| CreateLBFunc_Def | ( | CentralLB | , | |
| "CentralLB base class" | ||||
| ) |
| static int isMigratable | ( | LDObjData ** | objData, | |
| int * | len, | |||
| int | count, | |||
| const LDCommData & | commData | |||
| ) | [static] |
Definition at line 657 of file CentralLB.C.
References _LDCommDesc::get_destObj(), LDObjIDEqual(), _LDObjKey::objID(), LDCommData::receiver, and LDCommData::sender.
| void resumeCentralLbAfterChkpt | ( | void * | _lb | ) |
Definition at line 957 of file CentralLB.C.
References CentralLB::endMigrationDone(), and CentralLB::savedBalancing.
Referenced by CentralLB::MigrationDone().
| void getPredictedLoadWithMsg | ( | BaseLB::LDStats * | stats, | |
| int | count, | |||
| LBMigrateMsg * | msg, | |||
| LBInfo & | info, | |||
| int | considerComm | |||
| ) |
Definition at line 1313 of file CentralLB.C.
References BaseLB::LDStats::getHash(), LBInfo::getInfo(), idx, BaseLB::LDStats::makeCommHash(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, MigrateInfo::obj, LDObjHandle::objID(), LDObjHandle::omID(), MigrateInfo::to_pe, and BaseLB::LDStats::to_proc.
Referenced by CentralLB::findSimResults(), and CentralLB::LoadBalance().
| void CreateCentralLB | ( | ) |
| void getLoadInfo | ( | BaseLB::LDStats * | stats, | |
| int | count, | |||
| LBInfo & | info, | |||
| int | considerComm | |||
| ) |
| void Marquardt_coefficients | ( | double * | x, | |
| double * | y, | |||
| double * | param, | |||
| double ** | alpha, | |||
| double * | beta, | |||
| double & | chisq, | |||
| LBPredictorFunction * | predict | |||
| ) |
Definition at line 99 of file CentralPredictor.C.
References LBPredictorFunction::function(), and LBPredictorFunction::num_params.
Referenced by Marquardt_solver().
| bool Marquardt_solver | ( | CentralLB::FutureModel * | mod, | |
| int | object | |||
| ) |
Definition at line 133 of file CentralPredictor.C.
References alpha, beta, CentralLB::FutureModel::collection, CentralLB::FutureModel::cur_stats, gaussj(), Marquardt_coefficients(), LBPredictorFunction::num_params, BaseLB::LDStats::objData, CentralLB::FutureModel::parameters, and CentralLB::FutureModel::predictor.
| LBAllocFn getLBAllocFn | ( | char * | lbname | ) |
Definition at line 100 of file LBDatabase.C.
References LBDBRegistry::getLBAllocFn().
Referenced by CreateLBFunc_Def().
| CreateLBFunc_Def | ( | ComboCentLB | , | |
| "Allow multiple strategies to work serially" | ||||
| ) |
Definition at line 16 of file ComboCentLB.C.
References Converse::CkMyPe(), CmiAbort(), getLBAllocFn(), and p.
| void CreateComboCentLB | ( | ) |
| void printMapping | ( | std::vector< Vertex > & | vertices | ) | [inline] |
Definition at line 318 of file CommAwareRefineLB.C.
| void handleTransfer | ( | int | randomly_obj_id, | |
| ProcInfo & | p, | |||
| int | possible_pe, | |||
| std::vector< int > * | parr_objs, | |||
| ObjGraph * | ogr, | |||
| ProcArray * | parr | |||
| ) | [inline] |
Definition at line 342 of file CommAwareRefineLB.C.
References eraseObjFromParrObjs(), ProcInfo::getProcId(), ProcArray::procs, ProcInfo::totalLoad(), and ObjGraph::vertices.
Referenced by CommAwareRefineLB::work().
| void updateLoadInfo | ( | int | p_index, | |
| int | possible_pe, | |||
| double | upper_threshold, | |||
| double | lower_threshold, | |||
| std::vector< int > & | parr_above_avg, | |||
| std::vector< int > & | parr_below_avg, | |||
| bool * | proc_load_info, | |||
| ProcArray * | parr | |||
| ) | [inline] |
Definition at line 354 of file CommAwareRefineLB.C.
References ProcInfo::getTotalLoad(), p, ProcArray::procs, and removeFromArray().
Referenced by CommAwareRefineLB::work().
| void getPossiblePes | ( | std::vector< int > & | possible_pes, | |
| int | randomly_obj_id, | |||
| ObjGraph * | ogr, | |||
| ProcArray * | parr | |||
| ) | [inline] |
Definition at line 393 of file CommAwareRefineLB.C.
References BGConverse::CkNodeFirst(), BGConverse::CkNodeOf(), BGConverse::CkNodeSize(), ObjPeCommInfo::pcomm, sort(), and ObjGraph::vertices.
Referenced by CommAwareRefineLB::work().
| CreateLBFunc_Def | ( | CommAwareRefineLB | , | |
| "always assign the heaviest obj onto lightest loaded processor." | ||||
| ) |
| void PrintProcLoad | ( | ProcArray * | parr | ) |
| void CreateCommAwareRefineLB | ( | ) |
| BaseLB* AllocateCommAwareRefineLB | ( | ) |
| void init | ( | alloc_struct ** | a, | |
| graph * | object_graph, | |||
| int | l, | |||
| int | b | |||
| ) |
Definition at line 116 of file CommLB.C.
References graph::data, alloc_struct::load, alloc_struct::nbyte, graph::next, graph::nmsg, and alloc_struct::nmsg.
Referenced by CkArray::allocate(), CK_REDUCTION_CLIENT_DEF(), fem_impl_call_init(), FTN_NAME(), LV3D1_Map::LV3D1_Map(), and CommLB::work().
| void CreateCommLB | ( | ) |
| static void CreateNoLB | ( | void | ) | [static] |
Definition at line 12 of file CommonLBs.C.
| void initCommonLBs | ( | void | ) |
Definition at line 17 of file CommonLBs.C.
| CreateLBFunc_Def | ( | DummyLB | , | |
| "Dummy load | balancer, | |||
| like a normal one but with empty strategy" | ||||
| ) |
| void CreateDummyLB | ( | ) |
| CreateLBFunc_Def | ( | GraphBFTLB | , | |
| "Algorithm which does breadth first traversal for communication aware load balancing" | ||||
| ) |
| void CreateGraphBFTLB | ( | ) |
| CreateLBFunc_Def | ( | GraphPartLB | , | |
| "Algorithm which uses graph partitioning for communication aware load balancing" | ||||
| ) |
| void CreateGraphPartLB | ( | ) |
| CreateLBFunc_Def | ( | GreedyAgentLB | , | |
| "always assign the heaviest obj onto lightest loaded processor taking into account the topology" | ||||
| ) |
| void CreateGreedyAgentLB | ( | ) |
| CreateLBFunc_Def | ( | GreedyCommLB | , | |
| "Greedy algorithm which takes communication graph into account" | ||||
| ) |
Definition at line 22 of file GreedyCommLB.C.
References _lb_args, CkLBArgs::alpha(), alpha, CkLBArgs::beeta(), and manager_init().
Definition at line 124 of file GreedyCommLB.C.
References graph::data, graph::next, and graph::nmsg.
Referenced by GreedyCommLB::work().
| void CreateGreedyCommLB | ( | ) |
| BaseLB* AllocateGreedyCommLB | ( | ) |
| void CreateGreedyLB | ( | ) |
| BaseLB* AllocateGreedyLB | ( | ) |
Referenced by CreateLBFunc_Def().
| CreateLBFunc_Def | ( | HbmLB | , | |
| "HybridBase load balancer" | ||||
| ) |
Definition at line 195 of file HbmLB.C.
Referenced by adjust(), HbmLB::Loadbalancing(), HypercubeRouter::LocalProcMsg(), DimexRouter::LocalProcMsg(), setIC(), and simpleFindCollisions().
| void CreateHbmLB | ( | ) |
| CreateLBFunc_Def | ( | HybridBaseLB | , | |
| "HybridBase load balancer" | ||||
| ) |
Definition at line 15 of file HybridBaseLB.C.
| LBVectorMigrateMsg* VectorStrategy | ( | BaseLB::LDStats * | stats | ) |
Definition at line 7 of file LButil.C.
References _lb_args, processorInfo::available, processorInfo::backgroundLoad, processorInfo::computeLoad, CkLBArgs::debug(), maxHeap::deleteMax(), done, VectorMigrateInfo::from_pe, InfoRecord::Id, Set::insert(), maxHeap::insert(), Set::iterator(), CkVec< T >::length(), VectorMigrateInfo::load, InfoRecord::load, LBVectorMigrateMsg::moves, msg, LBVectorMigrateMsg::n_moves, Set::next(), BaseLB::LDStats::nprocs(), p, processorInfo::pe_speed, BaseLB::LDStats::procs, CkVec< T >::push_back(), Set::remove(), and VectorMigrateInfo::to_pe.
| void CreateHybridBaseLB | ( | ) |
| CreateLBFunc_Def | ( | HybridLB | , | |
| "Hybrid load balancer" | ||||
| ) |
Definition at line 23 of file HybridLB.C.
References AllocateGreedyLB(), AllocateRefineLB(), and refine().
| void CreateHybridLB | ( | ) |
| CkpvDeclare | ( | int | , | |
| numLoadBalancers | ||||
| ) |
num of lb created
| CkpvDeclare | ( | int | , | |
| lbdatabaseInited | ||||
| ) |
true if lbdatabase is inited
| void LBDefaultCreate | ( | const char * | lbname | ) |
| void LBRegisterBalancer | ( | const char * | name, | |
| LBCreateFn | fn, | |||
| LBAllocFn | afn, | |||
| const char * | help, | |||
| int | shown | |||
| ) |
Definition at line 95 of file LBDatabase.C.
References LBDBRegistry::addEntry().
Referenced by lbinit().
| static void createLoadBalancer | ( | const char * | lbname | ) | [static] |
Definition at line 105 of file LBDatabase.C.
References CmiPrintf(), LBDBRegistry::displayLBs(), and LBDBRegistry::search().
Referenced by LBDBInit::LBDBInit().
| void _loadbalancerInit | ( | ) |
Definition at line 154 of file LBDatabase.C.
References _lbtopo, LBDBRegistry::addRuntimeBalancer(), CkLBArgs::alpha(), CkLBArgs::beeta(), CkLBArgs::central_pe(), CkExit(), CkGetArgv(), Converse::CkMyPe(), BGConverse::CkMyRank(), CmiArgGroup(), CmiGetArgDoubleDesc(), CmiGetArgFlagDesc(), CmiGetArgIntDesc(), CmiGetArgStringDesc(), CmiPrintf(), CkLBArgs::debug(), LBSimulation::doSimulation, LBSimulation::dumpFile, LBSimulation::dumpStep, LBSimulation::dumpStepSize, CkLBArgs::ignoreBgLoad(), CkLBArgs::lbperiod(), CkLBArgs::lbversion(), CkLBArgs::loop(), CkLBArgs::migObjOnly(), CkLBArgs::percentMovesAllowed(), CkLBArgs::printSummary(), CkLBArgs::samePeSpeed(), LBSimulation::showDecisionsOnly, LBSimulation::simProcs, LBSimulation::simStep, LBSimulation::simStepSize, CkLBArgs::statsOn(), CkLBArgs::syncResume(), CkLBArgs::teamSize(), CkLBArgs::testPeSpeed(), CkLBArgs::traceComm(), and CkLBArgs::useCpuTime().
Referenced by _initCharm().
| void TurnManualLBOn | ( | ) |
Definition at line 473 of file LBDatabase.C.
References LBDatabase::Object(), and LBDatabase::TurnManualLBOn().
| void TurnManualLBOff | ( | ) |
Definition at line 486 of file LBDatabase.C.
References LBDatabase::Object(), and LBDatabase::TurnManualLBOff().
| void LBTurnInstrumentOn | ( | ) |
Definition at line 499 of file LBDatabase.C.
References LBDatabase::CollectStatsOn(), LBDatabase::Object(), and CkLBArgs::statsOn().
Referenced by flbturninstrumenton(), and LV3D_PerfManager::startBalance().
| void LBTurnInstrumentOff | ( | ) |
Definition at line 508 of file LBDatabase.C.
References LBDatabase::CollectStatsOff(), LBDatabase::Object(), and CkLBArgs::statsOn().
Referenced by LV3D_PerfManager::doneBalance(), and flbturninstrumentoff().
| void LBClearLoads | ( | ) |
Definition at line 516 of file LBDatabase.C.
References LBDatabase::ClearLoads(), and LBDatabase::Object().
Referenced by LV3D_PerfManager::startBalance().
| void LBTurnPredictorOn | ( | LBPredictorFunction * | model | ) |
Definition at line 522 of file LBDatabase.C.
References LBDatabase::Object(), and LBDatabase::PredictorOn().
| void LBTurnPredictorOn | ( | LBPredictorFunction * | model, | |
| int | wind | |||
| ) |
Definition at line 528 of file LBDatabase.C.
References LBDatabase::Object(), and LBDatabase::PredictorOn().
| void LBTurnPredictorOff | ( | ) |
Definition at line 534 of file LBDatabase.C.
References LBDatabase::Object(), and LBDatabase::PredictorOff().
| void LBChangePredictor | ( | LBPredictorFunction * | model | ) |
Definition at line 540 of file LBDatabase.C.
References LBDatabase::ChangePredictor(), and LBDatabase::Object().
| void LBSetPeriod | ( | double | second | ) |
Definition at line 546 of file LBDatabase.C.
References CkLBArgs::lbperiod(), LBDatabase::Object(), and LBDatabase::SetLBPeriod().
| PUPbytes | ( | CkLBOptions | ) |
| CkpvExtern | ( | int | , | |
| numLoadBalancers | ||||
| ) |
| CkpvExtern | ( | int | , | |
| hasNullLB | ||||
| ) |
| CkpvExtern | ( | int | , | |
| lbdatabaseInited | ||||
| ) |
| void LBDefaultCreate | ( | LBCreateFn | f | ) |
| void _LBDBInit | ( | ) |
| LBDatabase* LBDatabaseObj | ( | ) | [inline] |
Definition at line 404 of file LBDatabase.h.
References LBDatabase::Object().
Referenced by CentralLB::BuildStatsMsg(), get_avail_vector(), controlPointManager::gotoNextPhase(), CentralLB::LoadBalance(), CentralLB::ProcessReceiveMigration(), BaseLB::pup(), CentralLB::ReceiveStats(), CkMulticastMgr::sendToSection(), set_avail_vector(), and SystemLoad::SystemLoad().
| void get_avail_vector | ( | char * | bitmap | ) | [inline] |
Definition at line 406 of file LBDatabase.h.
References LBDatabase::get_avail_vector(), and LBDatabaseObj().
Referenced by CkMemCheckPT::isMaster().
| void set_avail_vector | ( | char * | bitmap | ) | [inline] |
Definition at line 410 of file LBDatabase.h.
References LBDatabaseObj(), and LBDatabase::set_avail_vector().
Referenced by _ckAckEvac(), _ckEvacBcast(), handler(), CkMemCheckPT::isMaster(), and LV3D_PerfManager::LV3D_PerfManager().
| LDHandle LDCreate | ( | void | ) |
Definition at line 18 of file lbdb.C.
References LDHandle::handle.
Referenced by LBDatabase::init().
| LDOMHandle LDRegisterOM | ( | LDHandle | _db, | |
| LDOMid | _userID, | |||
| void * | _userptr, | |||
| LDCallbacks | _callbacks | |||
| ) |
Definition at line 25 of file lbdb.C.
References LBDB::AddOM(), and LDHandle::handle.
Referenced by LBDatabase::RegisterOM().
| void * LDOMUserData | ( | LDOMHandle & | _h | ) |
Definition at line 32 of file lbdb.C.
References LBOM::getUserData(), LDHandle::handle, LBDB::LbOM(), and LDOMHandle::ldb.
| void LDRegisteringObjects | ( | LDOMHandle | _h | ) |
Definition at line 38 of file lbdb.C.
References LDHandle::handle, LDOMHandle::ldb, and LBDB::RegisteringObjects().
Referenced by LBDatabase::RegisteringObjects().
| void LDDoneRegisteringObjects | ( | LDOMHandle | _h | ) |
Definition at line 44 of file lbdb.C.
References LBDB::DoneRegisteringObjects(), LDHandle::handle, and LDOMHandle::ldb.
Referenced by LBDatabase::DoneRegisteringObjects().
| LDObjHandle LDRegisterObj | ( | LDOMHandle | _h, | |
| LDObjid | _id, | |||
| void * | _userData, | |||
| int | _migratable | |||
| ) |
Definition at line 50 of file lbdb.C.
References LBDB::AddObj(), LDHandle::handle, and LDOMHandle::ldb.
Referenced by LBDatabase::RegisterObj().
| void LDUnregisterObj | ( | LDObjHandle | _h | ) |
Definition at line 57 of file lbdb.C.
References LDHandle::handle, LDOMHandle::ldb, LDObjHandle::omhandle, and LBDB::UnregisterObj().
Referenced by LBDatabase::UnregisterObj().
| const LDObjHandle & LDGetObjHandle | ( | LDHandle | h, | |
| int | oh | |||
| ) |
Definition at line 64 of file lbdb.C.
References LBObj::GetLDObjHandle(), LDHandle::handle, and LBDB::LbObjIdx().
Referenced by LBDatabase::GetObjHandle().
| void LDObjTime | ( | LDObjHandle & | _h, | |
| LBRealType | walltime, | |||
| LBRealType | cputime | |||
| ) |
Definition at line 71 of file lbdb.C.
References LDHandle::handle, LBObj::IncrementTime(), LBDB::LbObj(), LDOMHandle::ldb, and LDObjHandle::omhandle.
Referenced by LBDatabase::ObjTime().
| void LDGetObjLoad | ( | LDObjHandle & | _h, | |
| LBRealType * | wallT, | |||
| LBRealType * | cpuT | |||
| ) |
Definition at line 79 of file lbdb.C.
References LBObj::getTime(), LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, and LDObjHandle::omhandle.
Referenced by LBDatabase::GetObjLoad().
| void LDQueryKnownObjLoad | ( | LDObjHandle & | _h, | |
| LBRealType * | wallT, | |||
| LBRealType * | cpuT | |||
| ) |
Definition at line 86 of file lbdb.C.
References LDHandle::handle, LBObj::lastKnownLoad(), LBDB::LbObj(), LDOMHandle::ldb, and LDObjHandle::omhandle.
Referenced by LBDatabase::QueryKnownObjLoad().
| void * LDObjUserData | ( | LDObjHandle & | _h | ) |
Definition at line 93 of file lbdb.C.
References LBObj::getUserData(), LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, and LDObjHandle::omhandle.
Referenced by CkLocRec_local::staticMigrate().
| void LDDumpDatabase | ( | LDHandle | _db | ) |
Definition at line 100 of file lbdb.C.
References LBDB::DumpDatabase(), and LDHandle::handle.
Referenced by LBDatabase::DumpDatabase().
| void LDNotifyMigrated | ( | LDHandle | _db, | |
| LDMigratedFn | fn, | |||
| void * | data | |||
| ) |
Definition at line 106 of file lbdb.C.
References LDHandle::handle, and LBDB::NotifyMigrated().
Referenced by LBDatabase::NotifyMigrated().
| void LDAddStartLBFn | ( | LDHandle | _db, | |
| LDStartLBFn | fn, | |||
| void * | data | |||
| ) |
Definition at line 112 of file lbdb.C.
References LBDB::AddStartLBFn(), and LDHandle::handle.
Referenced by LBDatabase::AddStartLBFn().
| void LDRemoveStartLBFn | ( | LDHandle | _db, | |
| LDStartLBFn | fn | |||
| ) |
Definition at line 118 of file lbdb.C.
References LDHandle::handle, and LBDB::RemoveStartLBFn().
Referenced by LBDatabase::RemoveStartLBFn().
| void LDStartLB | ( | LDHandle | _db | ) |
Definition at line 124 of file lbdb.C.
References LDHandle::handle, and LBDB::StartLB().
Referenced by LBDatabase::StartLB().
| void LDTurnManualLBOn | ( | LDHandle | _db | ) |
Definition at line 130 of file lbdb.C.
References LDHandle::handle, and LBDB::TurnManualLBOn().
Referenced by LBDatabase::TurnManualLBOn().
| void LDTurnManualLBOff | ( | LDHandle | _db | ) |
Definition at line 136 of file lbdb.C.
References LDHandle::handle, and LBDB::TurnManualLBOff().
Referenced by LBDatabase::TurnManualLBOff().
| int LDAddMigrationDoneFn | ( | LDHandle | _db, | |
| LDMigrationDoneFn | fn, | |||
| void * | data | |||
| ) |
Definition at line 142 of file lbdb.C.
References LBDB::AddMigrationDoneFn(), and LDHandle::handle.
Referenced by LBDatabase::AddMigrationDoneFn().
| void LDRemoveMigrationDoneFn | ( | LDHandle | _db, | |
| LDMigrationDoneFn | fn | |||
| ) |
Definition at line 148 of file lbdb.C.
References LDHandle::handle, and LBDB::RemoveMigrationDoneFn().
Referenced by LBDatabase::RemoveMigrationDoneFn().
| void LDMigrationDone | ( | LDHandle | _db | ) |
Definition at line 154 of file lbdb.C.
References LDHandle::handle, and LBDB::MigrationDone().
Referenced by LBDatabase::MigrationDone().
| void LDTurnPredictorOn | ( | LDHandle | _db, | |
| void * | model | |||
| ) |
Definition at line 160 of file lbdb.C.
References LDHandle::handle, and LBDB::TurnPredictorOn().
Referenced by LBDatabase::ChangePredictor(), and LBDatabase::PredictorOn().
Definition at line 166 of file lbdb.C.
References LDHandle::handle, and LBDB::TurnPredictorOn().
Referenced by LBDatabase::PredictorOn().
| void LDTurnPredictorOff | ( | LDHandle | _db | ) |
Definition at line 172 of file lbdb.C.
References LDHandle::handle, and LBDB::TurnPredictorOff().
Referenced by LBDatabase::PredictorOff().
| void LDChangePredictor | ( | LDHandle | _db, | |
| void * | model | |||
| ) |
| void LDCollectStatsOn | ( | LDHandle | _db | ) |
Definition at line 185 of file lbdb.C.
References LDHandle::handle, LBDB::LbObj(), LBDB::ObjIsRunning(), LBDB::RunningObj(), LBObj::StartTimer(), LBDB::StatsOn(), and LBDB::TurnStatsOn().
Referenced by LBDatabase::CollectStatsOn().
| void LDCollectStatsOff | ( | LDHandle | _db | ) |
Definition at line 200 of file lbdb.C.
References LDHandle::handle, and LBDB::TurnStatsOff().
Referenced by LBDatabase::CollectStatsOff().
| int CLDRunningObject | ( | LDHandle | _h, | |
| LDObjHandle * | _o | |||
| ) |
| void LDObjectStart | ( | const LDObjHandle & | _h | ) |
Definition at line 219 of file lbdb.C.
References LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, LDObjectStop(), LBDB::ObjIsRunning(), LDObjHandle::omhandle, LBDB::RunningObj(), LBDB::SetRunningObj(), LBObj::StartTimer(), and LBDB::StatsOn().
Referenced by LBDatabase::ObjectStart().
| void LDObjectStop | ( | const LDObjHandle & | _h | ) |
Definition at line 233 of file lbdb.C.
References LDHandle::handle, LBObj::IncrementTime(), LBDB::LbObj(), LDOMHandle::ldb, LBDB::NoRunningObj(), LDObjHandle::omhandle, LBDB::StatsOn(), and LBObj::StopTimer().
Referenced by LDObjectStart(), and LBDatabase::ObjectStop().
| void LDSend | ( | const LDOMHandle & | destOM, | |
| const LDObjid & | destid, | |||
| unsigned int | bytes, | |||
| int | destObjProc, | |||
| int | force | |||
| ) |
Definition at line 246 of file lbdb.C.
References _lb_args, LDHandle::handle, LDOMHandle::ldb, LBDB::Send(), LBDB::StatsOn(), and CkLBArgs::traceComm().
Referenced by LBDatabase::Send().
| void LDMulticastSend | ( | const LDOMHandle & | destOM, | |
| LDObjid * | destids, | |||
| int | ndests, | |||
| unsigned int | bytes, | |||
| int | nMsgs | |||
| ) |
Definition at line 253 of file lbdb.C.
References _lb_args, LDHandle::handle, LDOMHandle::ldb, LBDB::MulticastSend(), LBDB::StatsOn(), and CkLBArgs::traceComm().
Referenced by LBDatabase::MulticastSend().
| void LDBackgroundLoad | ( | LDHandle | _db, | |
| LBRealType * | walltime, | |||
| LBRealType * | cputime | |||
| ) |
Definition at line 260 of file lbdb.C.
References LBDB::BackgroundLoad(), and LDHandle::handle.
Referenced by LBDatabase::BackgroundLoad().
| void LDIdleTime | ( | LDHandle | _db, | |
| LBRealType * | walltime | |||
| ) |
Definition at line 269 of file lbdb.C.
References LDHandle::handle, and LBDB::IdleTime().
Referenced by LBDatabase::IdleTime().
| void LDTotalTime | ( | LDHandle | _db, | |
| LBRealType * | walltime, | |||
| LBRealType * | cputime | |||
| ) |
Definition at line 277 of file lbdb.C.
References LDHandle::handle, and LBDB::TotalTime().
Referenced by LBDatabase::TotalTime().
| void LDGetTime | ( | LDHandle | _db, | |
| LBRealType * | total_walltime, | |||
| LBRealType * | total_cputime, | |||
| LBRealType * | idletime, | |||
| LBRealType * | bg_walltime, | |||
| LBRealType * | bg_cputime | |||
| ) |
Definition at line 285 of file lbdb.C.
References LBDB::GetTime(), and LDHandle::handle.
Referenced by LBDatabase::GetTime().
| void LDNonMigratable | ( | const LDObjHandle & | h | ) |
Definition at line 293 of file lbdb.C.
References CmiFalse, LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, LDObjHandle::omhandle, and LBObj::SetMigratable().
Referenced by LBDatabase::NonMigratable().
| void LDMigratable | ( | const LDObjHandle & | h | ) |
Definition at line 301 of file lbdb.C.
References CmiTrue, LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, LDObjHandle::omhandle, and LBObj::SetMigratable().
Referenced by LBDatabase::Migratable().
| void LDAsyncMigrate | ( | const LDObjHandle & | h, | |
| CmiBool | async | |||
| ) |
Definition at line 309 of file lbdb.C.
References LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, LDObjHandle::omhandle, and LBObj::UseAsyncMigrate().
Referenced by LBDatabase::UseAsyncMigrate().
| void LDClearLoads | ( | LDHandle | _db | ) |
Definition at line 317 of file lbdb.C.
References LBDB::ClearLoads(), and LDHandle::handle.
Referenced by LBDatabase::ClearLoads().
Definition at line 324 of file lbdb.C.
References LDHandle::handle, and LBDB::ObjDataCount().
Referenced by LBDatabase::GetObjDataSz().
Definition at line 331 of file lbdb.C.
References LBDB::GetObjData(), and LDHandle::handle.
Referenced by LBDatabase::GetObjData().
Definition at line 338 of file lbdb.C.
References LBDB::CommDataCount(), and LDHandle::handle.
Referenced by LBDatabase::GetCommDataSz().
| void LDGetCommData | ( | LDHandle | _db, | |
| LDCommData * | data | |||
| ) |
Definition at line 345 of file lbdb.C.
References LBDB::GetCommData(), and LDHandle::handle.
Referenced by LBDatabase::GetCommData().
| int LDMigrate | ( | LDObjHandle | _h, | |
| int | dest | |||
| ) |
Definition at line 353 of file lbdb.C.
References LDHandle::handle, LDOMHandle::ldb, LBDB::Migrate(), and LDObjHandle::omhandle.
Referenced by LBDatabase::Migrate().
| void LDMigrated | ( | LDObjHandle | _h, | |
| int | waitBarrier | |||
| ) |
Definition at line 360 of file lbdb.C.
References LDHandle::handle, LDOMHandle::ldb, LBDB::Migrated(), and LDObjHandle::omhandle.
Referenced by LBDatabase::Migrated().
| LDBarrierClient LDAddLocalBarrierClient | ( | LDHandle | _db, | |
| LDResumeFn | fn, | |||
| void * | data | |||
| ) |
Definition at line 368 of file lbdb.C.
References LBDB::AddLocalBarrierClient(), and LDHandle::handle.
Referenced by LBDatabase::AddLocalBarrierClient().
| void LDRemoveLocalBarrierClient | ( | LDHandle | _db, | |
| LDBarrierClient | h | |||
| ) |
Definition at line 375 of file lbdb.C.
References LDHandle::handle, and LBDB::RemoveLocalBarrierClient().
Referenced by LBDatabase::RemoveLocalBarrierClient().
| LDBarrierReceiver LDAddLocalBarrierReceiver | ( | LDHandle | _db, | |
| LDBarrierFn | fn, | |||
| void * | data | |||
| ) |
Definition at line 383 of file lbdb.C.
References LBDB::AddLocalBarrierReceiver(), and LDHandle::handle.
Referenced by LBDatabase::AddLocalBarrierReceiver().
| void LDRemoveLocalBarrierReceiver | ( | LDHandle | _db, | |
| LDBarrierReceiver | h | |||
| ) |
Definition at line 391 of file lbdb.C.
References LDHandle::handle, and LBDB::RemoveLocalBarrierReceiver().
Referenced by LBDatabase::RemoveLocalBarrierReceiver().
| void LDAtLocalBarrier | ( | LDHandle | _db, | |
| LDBarrierClient | h | |||
| ) |
Definition at line 398 of file lbdb.C.
References LBDB::AtLocalBarrier(), and LDHandle::handle.
Referenced by LBDatabase::AtLocalBarrier().
| void LDLocalBarrierOn | ( | LDHandle | _db | ) |
Definition at line 405 of file lbdb.C.
References LDHandle::handle, and LBDB::LocalBarrierOn().
Referenced by LBDatabase::LocalBarrierOff(), and LBDatabase::LocalBarrierOn().
| void LDLocalBarrierOff | ( | LDHandle | _db | ) |
| void LDResumeClients | ( | LDHandle | _db | ) |
Definition at line 420 of file lbdb.C.
References LDHandle::handle, and LBDB::ResumeClients().
Referenced by LBDatabase::ResumeClients().
| int LDProcessorSpeed | ( | ) |
Definition at line 436 of file lbdb.C.
References _lb_args, Converse::CkNumPes(), CmiCpuTimer(), end_time, CkLBArgs::samePeSpeed(), start_time, and work().
Referenced by _propMapInit(), and LBDatabase::ProcessorSpeed().
Definition at line 489 of file lbdb.C.
References LDHandle::handle, and LBDB::SetPeriod().
Referenced by LBDatabase::SetLBPeriod().
Definition at line 495 of file lbdb.C.
References LBDB::GetPeriod(), and LDHandle::handle.
Referenced by LBDatabase::GetLBPeriod().
| void LDQueryEstLoad | ( | LDHandle | bdb | ) |
Definition at line 513 of file lbdb.C.
References LDHandle::handle, and LBDB::useMem().
Referenced by LBDatabase::useMem().
Definition at line 523 of file lbdb.C.
References CmiFalse, CmiTrue, and _LDOMid::id.
Referenced by LBCommData::equal(), ObjGraph::find_node(), BaseLB::LDStats::getHash(), and LBDB::Send().
Definition at line 528 of file lbdb.C.
References _LDObjid::id.
Referenced by LBCommData::equal(), ObjGraph::find_node(), BaseLB::LDStats::getHash(), isMigratable(), and LBDB::Send().
| void _LDOMid::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| void LDOMHandle::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| void _LDObjid::pup | ( | PUP::er & | p | ) | [inline, inherited] |
Definition at line 91 of file lbdb.h.
References CmiFalse, CmiTrue, _LDObjKey::objId, and _LDObjKey::omId.
| LDOMid& _LDObjKey::omID | ( | ) | [inline, inherited] |
Definition at line 96 of file lbdb.h.
References _LDObjKey::omId.
Referenced by HybridBaseLB::collectCommData(), HbmLB::collectCommData(), LBCommData::compute_key(), ObjGraph::find_node(), LBCommTable::GetCommData(), BaseLB::LDStats::getHash(), HybridBaseLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), BaseLB::LDStats::removeObject(), and HybridBaseLB::StartCollectInfo().
| LDObjid& _LDObjKey::objID | ( | ) | [inline, inherited] |
Definition at line 97 of file lbdb.h.
References _LDObjKey::objId.
Referenced by HybridBaseLB::collectCommData(), HbmLB::collectCommData(), LBCommData::compute_key(), ObjGraph::find_node(), LBCommTable::GetCommData(), BaseLB::LDStats::getHash(), isMigratable(), HybridBaseLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), HybridBaseLB::PropagateInfo(), BaseLB::LDStats::removeObject(), and HybridBaseLB::StartCollectInfo().
| const LDOMid& _LDObjKey::omID | ( | ) | const [inline, inherited] |
| const LDObjid& _LDObjKey::objID | ( | ) | const [inline, inherited] |
| void _LDObjKey::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| const LDOMid& LDObjHandle::omID | ( | ) | const [inline, inherited] |
Definition at line 110 of file lbdb.h.
References LDOMHandle::id.
Referenced by LBCommData::compute_key(), LBCommData::equal(), getPredictedLoadWithMsg(), HbmLB::MigrationDone(), and HybridBaseLB::ReceiveMigration().
| const LDObjid& LDObjHandle::objID | ( | ) | const [inline, inherited] |
Definition at line 111 of file lbdb.h.
Referenced by HybridBaseLB::createMigrateMsg(), LBCommData::equal(), getPredictedLoadWithMsg(), HbmLB::MigrationDone(), and HybridBaseLB::ReceiveMigration().
| void LDObjHandle::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| const LDOMHandle& LDObjData::omHandle | ( | ) | const [inline, inherited] |
| const LDOMid& LDObjData::omID | ( | ) | const [inline, inherited] |
Definition at line 127 of file lbdb.h.
References LDOMHandle::id, and LDObjHandle::omhandle.
Referenced by HybridBaseLB::collectCommData(), HbmLB::collectCommData(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), BaseLB::LDStats::print(), and PhasebyArrayLB::work().
| const LDObjid& LDObjData::objID | ( | ) | const [inline, inherited] |
Definition at line 128 of file lbdb.h.
References LDObjHandle::id.
Referenced by HybridBaseLB::collectCommData(), HbmLB::collectCommData(), RefinerApprox::create(), Refiner::create(), ObjGraph::ObjGraph(), HybridBaseLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), BaseLB::LDStats::print(), OrbLB::work(), and BlockLB::work().
| const LDObjid& LDObjData::id | ( | ) | const [inline, inherited] |
| void LDObjData::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| void LDObjStats::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| char& _LDCommDesc::get_type | ( | ) | [inline, inherited] |
Definition at line 159 of file lbdb.h.
References _LDCommDesc::type.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), RefinerComm::commAffinity(), LBCommData::compute_key(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerComm::create(), HybridBaseLB::depositLBStatsMessage(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), TopoLB::getHopBytes(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), RefinerComm::objCommCost(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), LDCommData::recv_type(), CentralLB::removeNonMigratable(), TopologyAgent::TopologyAgent(), and TopoCentLB::work().
| char _LDCommDesc::get_type | ( | ) | const [inline, inherited] |
| int _LDCommDesc::proc | ( | ) | const [inline, inherited] |
Definition at line 161 of file lbdb.h.
References _LDCommDesc::dest, and _LDCommDesc::type.
Referenced by LBCommData::compute_key().
| void _LDCommDesc::setProc | ( | int | pe | ) | [inline, inherited] |
Definition at line 162 of file lbdb.h.
References _LDCommDesc::dest, and _LDCommDesc::type.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), and HybridBaseLB::depositLBStatsMessage().
| int _LDCommDesc::lastKnown | ( | ) | const [inline, inherited] |
| LDObjKey& _LDCommDesc::get_destObj | ( | ) | [inline, inherited] |
Definition at line 168 of file lbdb.h.
References _LDCommDesc::dest, and _LDCommDesc::type.
Referenced by LBCommData::compute_key(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), TopoLB::getHopBytes(), BaseLB::LDStats::getRecvHash(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), isMigratable(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), TopologyAgent::TopologyAgent(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
| LDObjKey const& _LDCommDesc::get_destObj | ( | ) | const [inline, inherited] |
Definition at line 172 of file lbdb.h.
References _LDCommDesc::dest, and _LDCommDesc::type.
Referenced by RefinerComm::commAffinity(), LBCommData::compute_key(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), TopoLB::getHopBytes(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), MulticastAgent::MulticastAgent(), RefinerComm::objCommCost(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), TopoCentLB::work(), and GreedyCommLB::work().
| void _LDCommDesc::init_objmsg | ( | LDOMid & | omid, | |
| LDObjid & | objid, | |||
| int | destObjProc | |||
| ) | [inline, inherited] |
Definition at line 174 of file lbdb.h.
References _LDCommDesc::dest, and _LDCommDesc::type.
Referenced by LBCommData::LBCommData().
Definition at line 180 of file lbdb.h.
References _LDCommDesc::dest, and _LDCommDesc::type.
Referenced by LBCommData::LBCommData().
| CmiBool _LDCommDesc::operator== | ( | const _LDCommDesc & | obj | ) | const [inline, inherited] |
| LDCommDesc & LDCommDesc::operator= | ( | const _LDCommDesc & | c | ) | [inline, inherited] |
Definition at line 433 of file lbdb.h.
References _LDCommDesc::dest, _LDCommDesc::destObj, _LDCommDesc::destObjs, _LDCommDesc::destProc, and _LDCommDesc::type.
| void LDCommDesc::pup | ( | PUP::er & | p | ) | [inline, inherited] |
Definition at line 446 of file lbdb.h.
References _LDCommDesc::dest, PUP::er::isUnpacking(), and _LDCommDesc::type.
| int LDCommData::from_proc | ( | ) | const [inline, inherited] |
Definition at line 201 of file lbdb.h.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), HybridBaseLB::collectCommData(), HbmLB::collectCommData(), RefinerComm::commAffinity(), BaseLB::LDStats::computeNonlocalComm(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerComm::create(), 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(), RefinerComm::objCommCost(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), RefinerComm::processorCommCost(), CentralLB::removeNonMigratable(), BaseLB::LDStats::removeObject(), TopologyAgent::TopologyAgent(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
| int LDCommData::recv_type | ( | ) | const [inline, inherited] |
Definition at line 202 of file lbdb.h.
References _LDCommDesc::get_type().
Referenced by GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), GridHybridSeedLB::Initialize_Communication_Matrix(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), TreeMatchLB::work(), GreedyCommLB::work(), and CommLB::work().
| void LDCommData::pup | ( | PUP::er & | p | ) | [inline, inherited] |
| void LDCommData::clearHash | ( | ) | [inline, inherited] |
| void LBBalance | ( | void * | param | ) |
| void LBCollectStatsOn | ( | void | ) |
| void LBCollectStatsOff | ( | void | ) |
| void LDMessage | ( | LDObjHandle | from, | |
| LDOMid | toOM, | |||
| LDObjid * | toID, | |||
| int | bytes | |||
| ) |
| void LDEstObjLoad | ( | LDObjHandle | h, | |
| double | load | |||
| ) |
| PUPmarshall | ( | LDObjStats | ) |
| PUPmarshall | ( | LDOMHandle | ) |
| PUPmarshall | ( | LDObjHandle | ) |
| PUPmarshall | ( | LDObjData | ) |
| PUPmarshall | ( | LDCommDesc | ) |
| static void handler | ( | char * | bit_map | ) | [static] |
Definition at line 18 of file manager.C.
References Converse::CkMyPe(), Converse::CkNumPes(), and set_avail_vector().
Referenced by CmiSignal(), KillOnAllSigs(), and manager_init().
| void manager_init | ( | ) |
Cluster Manager Code, Accpets external bit vectors and then feeds it into the loadbalancer so that programs can shrink and expand.
Definition at line 31 of file manager.C.
References CcsRegisterHandler(), and handler().
Referenced by CreateLBFunc_Def(), GridCommLB::GridCommLB(), GridCommRefineLB::GridCommRefineLB(), GridHybridLB::GridHybridLB(), GridHybridSeedLB::GridHybridSeedLB(), and GridMetisLB::GridMetisLB().
| void CreateMetisLB | ( | ) |
| BaseLB* AllocateMetisLB | ( | ) |
| void CreateNborBaseLB | ( | ) |
| CreateLBFunc_Def | ( | NeighborCommLB | , | |
| "The neighborhood load balancer with communication" | ||||
| ) |
| void CreateNeighborCommLB | ( | ) |
| CreateLBFunc_Def | ( | NeighborLB | , | |
| "The neighborhood load balancer" | ||||
| ) |
| void CreateNeighborLB | ( | ) |
| static void migrationDone | ( | envelope * | env, | |
| CkCoreState * | ck | |||
| ) | [static] |
Definition at line 27 of file NullLB.C.
References CkFreeSysMsg(), CkLocalBranch(), EnvToUsr(), NullLB::migrationsDone(), and CkCoreState::watcher.
Referenced by lbprocinit().
| static void lbinit | ( | void | ) | [static] |
| static void lbprocinit | ( | void | ) | [static] |
| static void staticStartLB | ( | void * | data | ) | [static] |
Definition at line 54 of file NullLB.C.
References Converse::CkMyPe(), and CmiPrintf().
Referenced by NullLB::init(), and NullLB::~NullLB().
| CreateLBFunc_Def | ( | OrbLB | , | |
| "partition objects based on coordinates" | ||||
| ) |
| void CreateOrbLB | ( | ) |
| BaseLB* AllocateOrbLB | ( | void | ) |
| CreateLBFunc_Def | ( | PhasebyArrayLB | , | |
| "Load balancer which balances many arrays | together, | |||
| specifically for CPAIMD" | ||||
| ) |
Definition at line 10 of file PhasebyArrayLB.C.
References Converse::CkMyPe(), CmiAbort(), getLBAllocFn(), CkLBOptions::getSeqNo(), and p.
| void CreatePhasebyArrayLB | ( | ) |
| CreateLBFunc_Def | ( | RandCentLB | , | |
| "Assign objects to processors randomly" | ||||
| ) |
Definition at line 28 of file RandCentLB.C.
References CrnDrand().
Referenced by RandCentLB::work().
| void CreateRandCentLB | ( | ) |
Definition at line 198 of file RecBipartLB.C.
References adjustqueues(), Vertex_helper::getLevel(), Vertex_helper::getMarked(), Vertex_helper::getPartition(), Vertex::getVertexId(), Vertex::getVertexLoad(), malloc(), n, ProcArray::procs, BQueue::push(), Vertex::recvFromList, RefineBoundary(), Vertex::sendToList, Vertex_helper::setMarked(), stats::swap(), ObjGraph::vertices, and vhelpers.
Referenced by RecBipartLB::work().
| void adjustqueues | ( | ObjGraph * | ogr, | |
| BQueue * | que1, | |||
| BQueue * | que2, | |||
| vector< Vertex * > & | partition1, | |||
| vector< Vertex * > & | partition2, | |||
| int * | initialedgecut, | |||
| int | parent | |||
| ) |
Definition at line 363 of file RecBipartLB.C.
References adjustgain(), BQueue::getMingain(), Edge::getNumBytes(), Vertex::getVertexId(), max(), BQueue::push(), BQueue::q, Vertex::recvFromList, Vertex::sendToList, BQueue::setMingain(), BQueue::setSwapid(), BQueue::setVertextoswap(), stats::swap(), ObjGraph::vertices, and vhelpers.
Referenced by RecursiveBiPart().
Definition at line 469 of file RecBipartLB.C.
References BQueue::getBoundary(), BQueue::getMingain(), Vertex::getVertexId(), max(), BQueue::q, BQueue::setMingain(), BQueue::setSwapid(), BQueue::setVertextoswap(), ObjGraph::vertices, and vhelpers.
Referenced by adjustqueues(), and modifypartitions().
| void RefineBoundary | ( | ObjGraph * | ogr, | |
| vector< Vertex * > & | partition1, | |||
| vector< Vertex * > & | partition2, | |||
| BQueue * | que1, | |||
| BQueue * | que2, | |||
| int | runs, | |||
| int | initialedgecut, | |||
| int | parent, | |||
| double | part1load, | |||
| double | part2load, | |||
| double | ratio | |||
| ) |
Definition at line 500 of file RecBipartLB.C.
References BQueue::getVertextoswap(), modifypartitions(), BQueue::q, and ObjGraph::vertices.
Referenced by RecursiveBiPart().
| int modifypartitions | ( | ObjGraph * | ogr, | |
| vector< Vertex * > & | partition1, | |||
| vector< Vertex * > & | partition2, | |||
| BQueue * | q1, | |||
| BQueue * | q2, | |||
| int | ec, | |||
| int | parent | |||
| ) |
Definition at line 538 of file RecBipartLB.C.
References adjustgain(), e1, BQueue::getBoundary(), BQueue::getVertextoswap(), ptr, removePtr(), swapQ1toQ2(), and vhelpers.
Referenced by RefineBoundary().
Definition at line 568 of file RecBipartLB.C.
References BQueue::push(), and removeinSwap().
Referenced by modifypartitions().
Definition at line 575 of file RecBipartLB.C.
References BQueue::getBoundary(), Edge::getNumBytes(), BQueue::getVertextoswap(), BQueue::push(), Vertex::recvFromList, BQueue::removeComplete(), Vertex::sendToList, stats::swap(), ObjGraph::vertices, and vhelpers.
Referenced by swapQ1toQ2().
| CreateLBFunc_Def | ( | RecBipartLB | , | |
| "Algorithm for load balacing based on recursive bipartitioning of object graph" | ||||
| ) |
Definition at line 109 of file RecBipartLB.C.
Status: does not support processor avail bitvector does not support nonmigratable attrib.
FIXME: need to remove outlier object load. Outlier object can cause failure of partitioning and often causes: "too few objects to paritition" error.
Definition at line 27 of file graph.c.
References Graph::currentEdge, Graph::currentVertex, Graph::E, Graph::edges, malloc(), Graph::V, and Graph::vertices.
Referenced by RecBisectBfLB::convertGraph().
| void g_freeGraph | ( | Graph * | g | ) |
Definition at line 41 of file graph.c.
References Graph::edges, free(), and Graph::vertices.
Referenced by RecBisectBfLB::work().
Definition at line 50 of file graph.c.
References Graph::currentEdge, Graph::currentVertex, VertexRecord::firstEdge, VertexRecord::index, VertexRecord::numEdges, printf(), Graph::V, Graph::vertices, and VertexRecord::weight.
Referenced by RecBisectBfLB::convertGraph().
| void g_finishVertex | ( | Graph * | g | ) |
Definition at line 93 of file graph.c.
References Graph::currentEdge, Graph::currentVertex, VertexRecord::firstEdge, VertexRecord::numEdges, printf(), and Graph::vertices.
Referenced by RecBisectBfLB::convertGraph().
Definition at line 67 of file graph.c.
References Graph::currentEdge, Graph::currentVertex, Graph::edges, VertexRecord::firstEdge, VertexRecord::numEdges, and Graph::vertices.
Referenced by RecBisectBfLB::convertGraph().
Definition at line 163 of file graph.c.
References Graph::vertices, and VertexRecord::weight.
Referenced by RecBisectBfLB::addToQ(), and RecBisectBfLB::partitionInTwo().
Definition at line 147 of file graph.c.
References VertexRecord::numEdges, and Graph::vertices.
Referenced by RecBisectBfLB::enqChildren().
Definition at line 152 of file graph.c.
References Graph::edges, VertexRecord::firstEdge, VertexRecord::numEdges, printf(), and Graph::vertices.
Referenced by RecBisectBfLB::enqChildren().
| void g_printGraph | ( | Graph * | g | ) |
Definition at line 136 of file graph.c.
References CmiPrintf(), Graph::E, Graph::edges, VertexRecord::firstEdge, VertexRecord::numEdges, printf(), Graph::V, and Graph::vertices.
| CreateLBFunc_Def | ( | RecBisectBfLB | , | |
| "Recursive partitioning with Breadth first enumeration" | ||||
| ) |
| void CreateRecBisectBfLB | ( | ) |
| BaseLB* AllocateRecBisectBfLB | ( | ) |
| CreateLBFunc_Def | ( | RefineCommLB | , | |
| "Average load among processors by moving objects away from overloaded | processor, | |||
| communication aware" | ||||
| ) |
| void CreateRefineCommLB | ( | ) |
| BaseLB* AllocateRefineCommLB | ( | ) |
| CreateLBFunc_Def | ( | RefineKLB | , | |
| "Move objects away from overloaded processor to reach average" | ||||
| ) |
| void CreateRefineKLB | ( | ) |
| BaseLB* AllocateRefineKLB | ( | ) |
| CreateLBFunc_Def | ( | RefineLB | , | |
| "Move objects away from overloaded processor to reach average" | ||||
| ) |
| void CreateRefineLB | ( | ) |
| BaseLB* AllocateRefineLB | ( | ) |
Referenced by CreateLBFunc_Def().
| CreateLBFunc_Def | ( | RefineSwapLB | , | |
| "always assign the heaviest obj onto lightest loaded processor." | ||||
| ) |
| void addObjToProc | ( | ProcArray * | parr, | |
| ObjGraph * | ogr, | |||
| std::vector< int > * | pe_obj, | |||
| int | pe_index, | |||
| int | obj_index | |||
| ) | [inline] |
Definition at line 66 of file RefineSwapLB.C.
References ProcArray::procs, and ObjGraph::vertices.
Referenced by IsSwapPossWithPe(), and refine().
| void removeObjFromProc | ( | ProcArray * | parr, | |
| ObjGraph * | ogr, | |||
| std::vector< int > * | pe_obj, | |||
| int | pe_index, | |||
| int | arr_index | |||
| ) | [inline] |
Definition at line 79 of file RefineSwapLB.C.
References ProcArray::procs, and ObjGraph::vertices.
Referenced by IsSwapPossWithPe(), and refine().
Definition at line 91 of file RefineSwapLB.C.
Referenced by bbox3d::print(), and RefineSwapLB::work().
| bool refine | ( | ProcArray * | parr, | |
| ObjGraph * | ogr, | |||
| std::vector< int > & | max_pe_heap, | |||
| std::vector< int > & | min_pe_heap, | |||
| std::vector< int > * | pe_obj, | |||
| int | max_pe, | |||
| double | avg_load, | |||
| double | threshold | |||
| ) |
Definition at line 99 of file RefineSwapLB.C.
References addObjToProc(), allocated(), ProcArray::procs, removeObjFromProc(), size, sort(), and ObjGraph::vertices.
Referenced by CreateLBFunc_Def(), and RefineSwapLB::work().
| bool IsSwapPossWithPe | ( | ProcArray * | parr, | |
| ObjGraph * | ogr, | |||
| std::vector< int > * | pe_obj, | |||
| std::vector< int > & | max_pe_heap, | |||
| std::vector< int > & | min_pe_heap, | |||
| int | max_pe, | |||
| int | pe_considered, | |||
| int | pe_cons_iter, | |||
| double | diff, | |||
| double | avg_load, | |||
| double | threshold | |||
| ) |
Definition at line 157 of file RefineSwapLB.C.
References addObjToProc(), ProcArray::procs, removeObjFromProc(), size, and ObjGraph::vertices.
Referenced by refineSwap().
| bool refineSwap | ( | ProcArray * | parr, | |
| ObjGraph * | ogr, | |||
| std::vector< int > & | max_pe_heap, | |||
| std::vector< int > & | min_pe_heap, | |||
| std::vector< int > * | pe_obj, | |||
| int | max_pe, | |||
| double | avg_load, | |||
| double | threshold | |||
| ) |
Definition at line 211 of file RefineSwapLB.C.
References diff, IsSwapPossWithPe(), ProcArray::procs, and sort().
Referenced by RefineSwapLB::work().
| void CreateRefineSwapLB | ( | ) |
| BaseLB* AllocateRefineSwapLB | ( | ) |
| void CreateScotchLB | ( | ) |
| CreateLBFunc_Def | ( | ScotchRefineLB | , | |
| "Load balancing using the Scotch graph partitioning library" | ||||
| ) |
| void CreateScotchRefineLB | ( | ) |
| CreateLBFunc_Def | ( | ScotchTopoLB | , | |
| "Load balancing using the Scotch graph partitioning library" | ||||
| ) |
| void CreateScotchTopoLB | ( | ) |
| CreateLBFunc_Def | ( | TeamLB | , | |
| "Use Metis(tm) to partition object graph at two levels: team level and processor level" | ||||
| ) |
Definition at line 15 of file TeamLB.C.
References _lb_args, Converse::CkMyPe(), Converse::CkNumPes(), CkLBArgs::teamSize(), and teamSize.
| void CreateTeamLB | ( | ) |
| BaseLB* AllocateTeamLB | ( | ) |
| CreateLBFunc_Def | ( | TempAwareGreedyLB | , | |
| "always assign the heaviest obj onto lightest loaded processor." | ||||
| ) |
| void CreateTempAwareGreedyLB | ( | ) |
| BaseLB* AllocateTempAwareGreedyLB | ( | ) |
| CreateLBFunc_Def | ( | TreeMatchLB | , | |
| "TreeMatch load | balancer, | |||
| like a normal one but with empty strategy" | ||||
| ) |
| tm_topology_t* build_abe_topology | ( | int | nb_procs | ) |
Definition at line 47 of file TreeMatchLB.C.
References build_synthetic_topology().
Referenced by TreeMatchLB::work().
| void CreateTreeMatchLB | ( | ) |
| CreateLBFunc_Def | ( | WSLB | , | |
| "Workstation load balancer" | ||||
| ) |
| void CreateWSLB | ( | ) |
Definition at line 269 of file ZoltanLB.C.
References HGRAPH_DATA::numMyVertices.
Referenced by ZoltanLB::work().
| static void get_vertex_list | ( | void * | data, | |
| int | sizeGID, | |||
| int | sizeLID, | |||
| ZOLTAN_ID_PTR | globalID, | |||
| ZOLTAN_ID_PTR | localID, | |||
| int | wgt_dim, | |||
| float * | obj_wgts, | |||
| int * | ierr | |||
| ) | [static] |
Definition at line 276 of file ZoltanLB.C.
References HGRAPH_DATA::numMyVertices, HGRAPH_DATA::vtxGID, and HGRAPH_DATA::vtxWgt.
Referenced by ZoltanLB::work().
| static void get_hypergraph_size | ( | void * | data, | |
| int * | num_lists, | |||
| int * | num_nonzeroes, | |||
| int * | format, | |||
| int * | ierr | |||
| ) | [static] |
Definition at line 296 of file ZoltanLB.C.
References HGRAPH_DATA::numAllNbors, and HGRAPH_DATA::numMyHEdges.
Referenced by ZoltanLB::work().
| static void get_hypergraph | ( | void * | data, | |
| int | sizeGID, | |||
| int | num_edges, | |||
| int | num_nonzeroes, | |||
| int | format, | |||
| ZOLTAN_ID_PTR | edgeGID, | |||
| int * | vtxPtr, | |||
| ZOLTAN_ID_PTR | vtxGID, | |||
| int * | ierr | |||
| ) | [static] |
Definition at line 314 of file ZoltanLB.C.
References HGRAPH_DATA::edgeGID, HGRAPH_DATA::nborGID, HGRAPH_DATA::nborIndex, HGRAPH_DATA::numAllNbors, and HGRAPH_DATA::numMyHEdges.
Referenced by ZoltanLB::work().
Definition at line 341 of file ZoltanLB.C.
References HGRAPH_DATA::numMyHEdges.
Referenced by ZoltanLB::work().
| static void get_hypergraph_edge_wgts | ( | void * | data, | |
| int | numGID, | |||
| int | numLID, | |||
| int | num_edges, | |||
| int | edge_weight_dim, | |||
| ZOLTAN_ID_PTR | edgeGID, | |||
| ZOLTAN_ID_PTR | edgeLID, | |||
| float * | edge_wgts, | |||
| int * | ierr | |||
| ) | [static] |
Definition at line 347 of file ZoltanLB.C.
References HGRAPH_DATA::edgeGID, and HGRAPH_DATA::edgWgt.
Referenced by ZoltanLB::work().
| void CreateZoltanLB | ( | ) |
| BaseLB* AllocateZoltanLB | ( | ) |
| virtual int LBTopo_smp_n< ppn >::max_neighbors | ( | ) | [inline, virtual, inherited] |
| virtual void LBTopo_smp_n< ppn >::neighbors | ( | int | mype, | |
| int * | _n, | |||
| int & | nb | |||
| ) | [inline, virtual, inherited] |
| int LBTopo_smp_n< ppn >::get_hop_count | ( | int | src, | |
| int | dest | |||
| ) | [inline, virtual, inherited] |
| LBTOPO_MACRO | ( | LBTopo_smp_n_1 | ) |
| LBTOPO_MACRO | ( | LBTopo_torus2d | ) |
Definition at line 237 of file topology.C.
Referenced by LBTopo_mesh3d::neighbors(), LBTopo_torus3d::neighbors(), and LBTopo_torus2d::neighbors().
| LBTOPO_MACRO | ( | LBTopo_torus3d | ) |
| LBTOPO_MACRO | ( | LBTopo_mesh3d | ) |
| int LBTopo_torus_nd< dimension >::GetNeighborID | ( | int | ProcessorID, | |
| int | number | |||
| ) | [inline, private, inherited] |
Definition at line 584 of file topology.C.
References LBTopology::get_processor_coordinates(), LBTopology::get_processor_id(), LBTopo_mesh3d::max_neighbors(), and LBTopology::npes.
| LBTopo_torus_nd< dimension >::LBTopo_torus_nd | ( | int | p | ) | [inline, inherited] |
Definition at line 598 of file topology.C.
| LBTopo_torus_nd< dimension >::~LBTopo_torus_nd | ( | ) | [inline, inherited] |
Definition at line 615 of file topology.C.
| virtual int LBTopo_torus_nd< dimension >::max_neighbors | ( | ) | [inline, virtual, inherited] |
| virtual void LBTopo_torus_nd< dimension >::neighbors | ( | int | mype, | |
| int * | _n, | |||
| int & | nb | |||
| ) | [inline, virtual, inherited] |
| virtual int LBTopo_torus_nd< dimension >::get_dimension | ( | ) | [inline, virtual, inherited] |
| virtual bool LBTopo_torus_nd< dimension >::get_processor_coordinates | ( | int | processor_id, | |
| int * | processor_coordinates | |||
| ) | [inline, virtual, inherited] |
| virtual bool LBTopo_torus_nd< dimension >::get_processor_id | ( | const int * | processor_coordinates, | |
| int * | processor_id | |||
| ) | [inline, virtual, inherited] |
| virtual bool LBTopo_torus_nd< dimension >::coordinate_difference | ( | const int * | my_coordinates, | |
| const int * | target_coordinates, | |||
| int * | difference | |||
| ) | [inline, virtual, inherited] |
| virtual bool LBTopo_torus_nd< dimension >::coordinate_difference | ( | int | my_processor_id, | |
| int | target_processor_id, | |||
| int * | difference | |||
| ) | [inline, virtual, inherited] |
Reimplemented from LBTopology.
Definition at line 673 of file topology.C.
References LBTopology::coordinate_difference(), and LBTopology::get_processor_coordinates().
| LBTOPO_MACRO | ( | LBTopo_torus_nd_1 | ) |
Definition at line 695 of file topology.C.
References abs(), CmiGetFirstPeOnPhysicalNode(), CmiGetPesOnPhysicalNode(), CmiNumPesOnPhysicalNode(), CmiNumPhysicalNodes(), CmiPhysicalNodeID(), CmiPhysicalRank(), CmiPrintf(), LBTopology::coordinate_difference(), LBTopology::get_dimension(), LBTopology::get_processor_coordinates(), LBTopology::LBTopology(), LBTopo_mesh3d::max_neighbors(), LBTopo_mesh3d::neighbors(), LBTopology::npes, and p.
| LBTOPO_MACRO | ( | LBTopo_torus_nd_smp_1 | ) |
Definition at line 869 of file topology.C.
References _lbtopo, CmiPrintf(), LBTopology::get_processor_coordinates(), LBTopology::get_processor_id(), LBTopology::LBTopology(), LBTopo_mesh3d::max_neighbors(), LBTopo_mesh3d::neighbors(), LBTopology::npes, p, and ptr.
| LBTOPO_MACRO | ( | LBTopo_itorus_nd_1 | ) |
Definition at line 979 of file topology.C.
References _lbtopo, CmiPrintf(), LBTopology::get_processor_coordinates(), LBTopology::get_processor_id(), LBTopology::LBTopology(), LBTopo_mesh3d::max_neighbors(), LBTopo_mesh3d::neighbors(), LBTopology::npes, p, and ptr.
| LBTOPO_MACRO | ( | LBTopo_imesh_nd_1 | ) |
Definition at line 1097 of file topology.C.
Definition at line 46 of file generate.c.
References AddEdges(), CmiMyPe(), CmiPrintf(), copyOut(), CrnRand(), diameter(), InitEdgeList(), initGraph(), printf(), and printOut().
| int LBTopo_graph_nc< dimension >::max_neighbors | ( | ) | [inline, virtual, inherited] |
| void LBTopo_graph_nc< dimension >::neighbors | ( | int | mype, | |
| int * | na, | |||
| int & | nb | |||
| ) | [inline, virtual, inherited] |
| LBTOPO_MACRO | ( | LBTopo_graph_nc_2 | ) |
Definition at line 1154 of file topology.C.
References LBTopology::LBTopology(), LBTopo_graph::max_neighbors(), LBTopo_graph::neighbors(), LBTopology::npes, and p.
| LBTOPO_MACRO | ( | LBTopo_complete | ) |
Definition at line 1184 of file topology.C.
References LBTopology::LBTopology(), LBTopo_graph::max_neighbors(), LBTopo_graph::neighbors(), LBTopology::npes, and p.
| LBTOPO_MACRO | ( | LBTopo_2_arytree | ) |
| LBTopoVec::LBTopoVec | ( | ) | [inline, inherited] |
Definition at line 1230 of file topology.C.
| LBTopoVec::~LBTopoVec | ( | ) | [inline, inherited] |
Definition at line 1298 of file topology.C.
| void LBTopoVec::push_back | ( | LBTopoMap * | map | ) | [inline, inherited] |
Definition at line 1302 of file topology.C.
| int LBTopoVec::length | ( | void | ) | [inline, inherited] |
| LBTopoMap* LBTopoVec::operator[] | ( | size_t | n | ) | [inline, inherited] |
Definition at line 1304 of file topology.C.
| void LBTopoVec::print | ( | ) | [inline, inherited] |
| LBtopoFn LBTopoLookup | ( | char * | name | ) |
Definition at line 1315 of file topology.C.
References LBTopoVec::length().
Referenced by CldComputeNeighborData(), NborBaseLB::NborBaseLB(), NeighborCommLB::Strategy(), TopologyAgent::TopologyAgent(), TopoLB::work(), TopoCentLB::work(), RefineTopoLB::work(), and WSLB::WSLB().
| int getTopoMaxNeighbors | ( | void * | topo | ) |
| void printoutTopo | ( | ) |
Definition at line 1334 of file topology.C.
References LBTopoVec::print().
Referenced by CldComputeNeighborData(), NeighborCommLB::Strategy(), TopologyAgent::TopologyAgent(), TopoLB::work(), TopoCentLB::work(), and RefineTopoLB::work().
| LBTopology::LBTopology | ( | int | p | ) | [inline, inherited] |
| virtual LBTopology::~LBTopology | ( | ) | [inline, virtual, inherited] |
Definition at line 20 of file topology.h.
| virtual int LBTopology::max_neighbors | ( | ) | [pure virtual, inherited] |
Implemented in LBTopo_smp_n< ppn >, LBTopo_torus_nd< dimension >, LBTopo_graph_nc< dimension >, LBTopo_ring, LBTopo_torus2d, LBTopo_torus3d, LBTopo_mesh3d, and LBTopo_graph.
Referenced by TopoCentLB::calculateMST(), WSLB::FindNeighbors(), NborBaseLB::FindNeighbors(), LBTopology::get_hop_count(), LBTopology::get_pairwise_hop_count(), TopologyAgent::my_preferred_procs(), and GreedyAgentLB::work().
Implemented in LBTopo_smp_n< ppn >, LBTopo_torus_nd< dimension >, LBTopo_graph_nc< dimension >, LBTopo_ring, LBTopo_torus2d, LBTopo_torus3d, LBTopo_mesh3d, and LBTopo_graph.
Referenced by WSLB::FindNeighbors(), NborBaseLB::FindNeighbors(), LBTopology::get_pairwise_hop_count(), TopologyAgent::my_preferred_procs(), and LBTopology::rec_hop_count().
| virtual int LBTopology::get_dimension | ( | ) | [inline, virtual, inherited] |
Reimplemented in LBTopo_torus_nd< dimension >.
Definition at line 24 of file topology.h.
Referenced by LBTOPO_MACRO(), and NeighborCommLB::Strategy().
| virtual bool LBTopology::get_processor_coordinates | ( | int | processor_id, | |
| int * | processor_coordinates | |||
| ) | [inline, virtual, inherited] |
Reimplemented in LBTopo_torus_nd< dimension >.
Definition at line 25 of file topology.h.
Referenced by LBTopo_torus_nd< dimension >::coordinate_difference(), LBTopo_torus_nd< dimension >::GetNeighborID(), LBTOPO_MACRO(), and NeighborCommLB::Strategy().
| virtual bool LBTopology::get_processor_id | ( | const int * | processor_coordinates, | |
| int * | processor_id | |||
| ) | [inline, virtual, inherited] |
Reimplemented in LBTopo_torus_nd< dimension >.
Definition at line 26 of file topology.h.
Referenced by LBTopo_torus_nd< dimension >::GetNeighborID(), and LBTOPO_MACRO().
| virtual bool LBTopology::coordinate_difference | ( | const int * | my_coordinates, | |
| const int * | target_coordinates, | |||
| int * | difference | |||
| ) | [inline, virtual, inherited] |
Reimplemented in LBTopo_torus_nd< dimension >.
Definition at line 27 of file topology.h.
Referenced by LBTopo_torus_nd< dimension >::coordinate_difference(), LBTOPO_MACRO(), and NeighborCommLB::Strategy().
Reimplemented in LBTopo_smp_n< ppn >, LBTopo_ring, and LBTopo_torus2d.
Definition at line 14 of file topology.C.
References LBTopology::max_neighbors(), LBTopology::npes, and LBTopology::rec_hop_count().
Referenced by TopologyAgent::my_preferred_procs().
| int LBTopology::rec_hop_count | ( | int | src, | |
| int | dest, | |||
| int | max_neigh, | |||
| int | count, | |||
| int * | visited_srcs, | |||
| int | min_hop_cnt | |||
| ) | [virtual, inherited] |
Definition at line 31 of file topology.C.
References LBTopology::neighbors().
Referenced by LBTopology::get_hop_count().
Definition at line 72 of file topology.C.
| void LBTopology::get_pairwise_hop_count | ( | double ** | dist | ) | [virtual, inherited] |
Definition at line 80 of file topology.C.
References LBTopology::max_neighbors(), LBTopology::neighbors(), and LBTopology::npes.
Referenced by TopoCentLB::calculateMST(), and TopoLB::initDataStructures().
| virtual int LBTopo_ring::max_neighbors | ( | ) | [virtual, inherited] |
Implements LBTopology.
Reimplemented from LBTopology.
Definition at line 202 of file topology.C.
References LBTopology::npes.
Definition at line 228 of file topology.C.
References LBTopo_torus2d::width.
Referenced by LBTopo_torus2d::neighbors().
| LBTopo_torus2d::LBTopo_torus2d | ( | int | p | ) | [inherited] |
| int LBTopo_torus2d::max_neighbors | ( | ) | [virtual, inherited] |
Implements LBTopology.
Definition at line 242 of file topology.C.
References checkuniq(), LBTopo_torus2d::goodcoor(), and LBTopo_torus2d::width.
Reimplemented from LBTopology.
Definition at line 271 of file topology.C.
References LBTopology::npes, and LBTopo_torus2d::width.
Definition at line 407 of file topology.C.
References LBTopo_torus3d::width.
Referenced by LBTopo_torus3d::neighbors().
| LBTopo_torus3d::LBTopo_torus3d | ( | int | p | ) | [inherited] |
| int LBTopo_torus3d::max_neighbors | ( | ) | [virtual, inherited] |
Implements LBTopology.
Definition at line 417 of file topology.C.
References checkuniq(), LBTopo_torus3d::goodcoor(), and LBTopo_torus3d::width.
Definition at line 511 of file topology.C.
References LBTopo_mesh3d::width.
Referenced by LBTopo_mesh3d::neighbors().
| LBTopo_mesh3d::LBTopo_mesh3d | ( | int | p | ) | [inherited] |
| int LBTopo_mesh3d::max_neighbors | ( | ) | [virtual, inherited] |
Implements LBTopology.
Definition at line 506 of file topology.C.
Referenced by LBTopo_torus_nd< dimension >::GetNeighborID(), and LBTOPO_MACRO().
Implements LBTopology.
Definition at line 521 of file topology.C.
References checkuniq(), LBTopo_mesh3d::goodcoor(), and LBTopo_mesh3d::width.
Referenced by LBTOPO_MACRO().
| virtual int LBTopo_graph::max_neighbors | ( | ) | [virtual, inherited] |
Implements LBTopology.
Definition at line 1117 of file topology.C.
References gengraph().
Referenced by LBTOPO_MACRO().
Definition at line 102 of file graph.c.
References Graph::E, Graph::edges, VertexRecord::firstEdge, VertexRecord::index, intSqrt(), malloc(), n, VertexRecord::numEdges, Graph::V, Graph::vertices, and VertexRecord::weight.
| void BaseLB::initLB | ( | const CkLBOptions & | opt | ) | [private, inherited] |
Reimplemented in CentralLB.
Definition at line 12 of file BaseLB.C.
References _lbdb, LBDatabase::addLoadbalancer(), CkLBOptions::getSeqNo(), BaseLB::lbname, BaseLB::seqno, and BaseLB::theLbdb.
Referenced by BaseLB::BaseLB(), and BaseLB::pup().
| void BaseLB::unregister | ( | ) | [inherited] |
Definition at line 29 of file BaseLB.C.
References LBDatabase::RemoveLocalBarrierReceiver(), and BaseLB::theLbdb.
| void BaseLB::pup | ( | PUP::er & | p | ) | [virtual, inherited] |
Reimplemented in BlockLB, CentralLB, GraphBFTLB, GraphPartLB, GreedyCommLB, GridCommLB, GridCommRefineLB, GridHybridLB, GridHybridSeedLB, GridMetisLB, NullLB, RandCentLB, RecBipartLB, RefineTopoLB, RotateLB, ScotchLB, ScotchRefineLB, ScotchTopoLB, TeamLB, TopoCentLB, and TopoLB.
Definition at line 34 of file BaseLB.C.
References Converse::CkMyPe(), LBDatabase::getLoadbalancerTicket(), BaseLB::initLB(), PUP::er::isUnpacking(), LBDatabaseObj(), and BaseLB::seqno.
Referenced by NullLB::pup(), and CentralLB::pup().
| void BaseLB::flushStates | ( | ) | [virtual, inherited] |
Definition at line 71 of file BaseLB.C.
References Converse::CkNumPes(), BaseLB::LDStats::count, and BaseLB::LDStats::procs.
| void BaseLB::LDStats::makeCommHash | ( | ) | [inherited] |
build hash table
Definition at line 151 of file BaseLB.C.
References BaseLB::LDStats::hashSize, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, BaseLB::LDStats::objHash, ObjKey(), and primeLargerThan().
Referenced by BaseLB::LDStats::computeNonlocalComm(), LBInfo::getInfo(), getPredictedLoadWithMsg(), TopoLB::initDataStructures(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), RefinerComm::Refine(), TreeMatchLB::work(), TopoCentLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyCommLB::work(), and CommLB::work().
| void BaseLB::LDStats::deleteCommHash | ( | ) | [inherited] |
Definition at line 172 of file BaseLB.C.
References BaseLB::LDStats::commData, BaseLB::LDStats::n_comm, and BaseLB::LDStats::objHash.
Referenced by BaseLB::LDStats::clear(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), and HybridBaseLB::ObjsMigrated().
Definition at line 180 of file BaseLB.C.
References BaseLB::LDStats::hashSize, LDObjIDEqual(), LDOMidEqual(), BaseLB::LDStats::objData, BaseLB::LDStats::objHash, and ObjKey().
given an LDObjKey, returns the index in the objData vector this index changes every time one does load balancing even within a run
Definition at line 198 of file BaseLB.C.
References _LDObjKey::objID(), and _LDObjKey::omID().
Referenced by BaseLB::LDStats::computeNonlocalComm(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), TopoLB::getHopBytes(), LBInfo::getInfo(), getPredictedLoadWithMsg(), BaseLB::LDStats::getRecvHash(), BaseLB::LDStats::getSendHash(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
| int BaseLB::LDStats::getSendHash | ( | LDCommData & | cData | ) | [inherited] |
Definition at line 205 of file BaseLB.C.
References BaseLB::LDStats::getHash(), LDCommData::sender, and LDCommData::sendHash.
| int BaseLB::LDStats::getRecvHash | ( | LDCommData & | cData | ) | [inherited] |
Definition at line 213 of file BaseLB.C.
References _LDCommDesc::get_destObj(), BaseLB::LDStats::getHash(), LDCommData::receiver, and LDCommData::recvHash.
| void BaseLB::LDStats::clearCommHash | ( | ) | [inherited] |
Definition at line 221 of file BaseLB.C.
References BaseLB::LDStats::commData, and BaseLB::LDStats::n_comm.
Definition at line 227 of file BaseLB.C.
References BaseLB::LDStats::commData, BaseLB::LDStats::complete_flag, LDCommData::from_proc(), BaseLB::LDStats::getHash(), idx, BaseLB::LDStats::makeCommHash(), BaseLB::LDStats::n_comm, BaseLB::LDStats::nprocs(), p, CkVec< T >::push_back(), LDCommData::sender, CkVec< T >::size(), LDCommData::src_proc, and BaseLB::LDStats::to_proc.
Referenced by CentralLB::LoadBalance(), HybridBaseLB::printSummary(), and HbmLB::ResumeClients().
| void BaseLB::LDStats::normalize_speed | ( | ) | [inherited] |
Definition at line 298 of file BaseLB.C.
References BaseLB::LDStats::nprocs(), BaseLB::ProcStats::pe_speed, and BaseLB::LDStats::procs.
Referenced by CentralLB::LoadBalance().
| void BaseLB::LDStats::print | ( | ) | [inherited] |
Definition at line 309 of file BaseLB.C.
References BaseLB::ProcStats::bg_cputime, BaseLB::ProcStats::bg_walltime, bytes, BaseLB::LDStats::commData, LDObjData::cpuTime, BaseLB::LDStats::from_proc, _LDOMid::id, _LDObjid::id, BaseLB::ProcStats::idletime, LDObjData::migratable, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_objs, BaseLB::ProcStats::n_objs, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, LDObjData::objID(), LDObjData::omID(), BaseLB::ProcStats::pe, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, BaseLB::ProcStats::total_cputime, BaseLB::ProcStats::total_walltime, and LDObjData::wallTime.
| double BaseLB::LDStats::computeAverageLoad | ( | ) | [inherited] |
Definition at line 368 of file BaseLB.C.
References BaseLB::ProcStats::bg_walltime, CmiTrue, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, and BaseLB::LDStats::procs.
| void BaseLB::LDStats::removeObject | ( | int | obj | ) | [inherited] |
Definition at line 385 of file BaseLB.C.
References BaseLB::LDStats::commData, LDCommData::from_proc(), BaseLB::LDStats::from_proc, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, _LDObjKey::objID(), _LDObjKey::omID(), CkVec< T >::remove(), LDCommData::sender, CkVec< T >::size(), and BaseLB::LDStats::to_proc.
Referenced by HybridBaseLB::ReceiveMigration(), HbmLB::ReceiveMigrationDelta(), and HybridBaseLB::ReceiveVectorMigration().
| void BaseLB::LDStats::pup | ( | PUP::er & | p | ) | [inherited] |
Definition at line 412 of file BaseLB.C.
References _lb_args, BaseLB::LDStats::commData, BaseLB::LDStats::count, BaseLB::LDStats::from_proc, PUP::er::isUnpacking(), CkLBArgs::lbversion(), BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, BaseLB::LDStats::objHash, p, BaseLB::LDStats::procs, LBSimulation::procsChanged, CkVec< T >::resize(), LBSimulation::simProcs, and BaseLB::LDStats::to_proc.
Referenced by CentralLB::readStatsMsgs(), and CentralLB::writeStatsMsgs().
| int BaseLB::LDStats::useMem | ( | ) | [inherited] |
Definition at line 453 of file BaseLB.C.
References BaseLB::LDStats::n_comm, BaseLB::LDStats::n_objs, and BaseLB::LDStats::nprocs().
Referenced by HybridBaseLB::LevelData::useMem(), and CentralLB::useMem().
| void CentralLB::staticMigrated | ( | void * | me, | |
| LDObjHandle | h, | |||
| int | waitBarrier = 1 | |||
| ) | [static, inherited] |
Definition at line 63 of file CentralLB.C.
References CentralLB::Migrated().
Referenced by CentralLB::initLB().
| void CentralLB::staticAtSync | ( | void * | data | ) | [static, inherited] |
Definition at line 69 of file CentralLB.C.
References CentralLB::AtSync().
Referenced by CentralLB::initLB().
| void CentralLB::initLB | ( | const CkLBOptions & | opt | ) | [private, inherited] |
Reimplemented from BaseLB.
Definition at line 75 of file CentralLB.C.
References _lb_args, _lb_predict, _lb_predict_window, CkLBArgs::central_pe(), LBDatabase::CollectStatsOn(), CentralLB::count_msgs, CentralLB::cur_ld_balancer, CentralLB::future_migrates_completed, CentralLB::future_migrates_expected, LBDatabase::getLBDB(), CkLBOptions::getSeqNo(), CentralLB::lbdone, BaseLB::lbname, CentralLB::migrates_completed, CentralLB::migrates_expected, CentralLB::myspeed, BaseLB::notifier, CentralLB::predicted_model, LBDatabase::ProcessorSpeed(), CentralLB::reduction_started, LBDB::SetupPredictor(), BaseLB::startLbFnHdl, CentralLB::staticAtSync(), CentralLB::staticChangePredictor(), CentralLB::staticMigrated(), CentralLB::staticPredictorOff(), CentralLB::staticPredictorOn(), CentralLB::staticPredictorOnWin(), CentralLB::staticStartLB(), CentralLB::stats_msg_count, CentralLB::statsData, CentralLB::statsMsg, CentralLB::statsMsgsList, CkLBArgs::statsOn(), CentralLB::storedMigrateMsg, BaseLB::theLbdb, CentralLB::thisProxy, and CentralLB::turnOff().
Referenced by CentralLB::CentralLB(), and CentralLB::pup().
| CentralLB::~CentralLB | ( | ) | [virtual, inherited] |
Definition at line 123 of file CentralLB.C.
References _lbdb, LBDatabase::getLBDB(), BaseLB::notifier, CentralLB::staticStartLB(), CentralLB::statsData, CentralLB::statsMsgsList, and BaseLB::theLbdb.
| void CentralLB::turnOn | ( | ) | [virtual, inherited] |
Reimplemented from BaseLB.
Definition at line 138 of file CentralLB.C.
References LBDatabase::getLBDB(), BaseLB::notifier, BaseLB::startLbFnHdl, and BaseLB::theLbdb.
| void CentralLB::turnOff | ( | ) | [virtual, inherited] |
Reimplemented from BaseLB.
Definition at line 150 of file CentralLB.C.
References LBDatabase::getLBDB(), BaseLB::notifier, BaseLB::startLbFnHdl, and BaseLB::theLbdb.
Referenced by CentralLB::initLB().
| void CentralLB::AtSync | ( | void | ) | [inherited] |
Definition at line 162 of file CentralLB.C.
References Converse::CkMyPe(), Converse::CkNumPes(), CentralLB::MigrationDone(), CentralLB::QueryBalanceNow(), BaseLB::step(), and CentralLB::thisProxy.
Referenced by CentralLB::staticAtSync().
| void CentralLB::ProcessAtSync | ( | void | ) | [inherited] |
Definition at line 184 of file CentralLB.C.
References CentralLB::BuildStatsMsg(), Converse::CkMyPe(), CentralLB::cur_ld_balancer, LBDatabase::GetCommDataSz(), LBDatabase::GetObjDataSz(), initMlogLBStep(), CentralLB::reduction_started, CentralLB::SendStats(), CentralLB::start_lb_time, CkReduction::sum_int, BaseLB::theLbdb, and CentralLB::thisProxy.
| void CentralLB::ReceiveCounts | ( | CkReductionMsg * | msg | ) | [inherited] |
Definition at line 220 of file CentralLB.C.
References Converse::CkMyPe(), BaseLB::LDStats::commData, BaseLB::LDStats::from_proc, BaseLB::LDStats::objData, CkVec< T >::resize(), CentralLB::statsData, CentralLB::thisProxy, and BaseLB::LDStats::to_proc.
| void CentralLB::BuildStatsMsg | ( | ) | [private, inherited] |
Definition at line 241 of file CentralLB.C.
References CLBStatsMsg::avail_vector, CLBStatsMsg::bg_cputime, CLBStatsMsg::bg_walltime, Converse::CkMyPe(), Converse::CkNumPes(), CLBStatsMsg::commData, CentralLB::cur_ld_balancer, CLBStatsMsg::from_pe, LBDatabase::get_avail_vector(), LBDatabase::GetCommData(), LBDatabase::GetCommDataSz(), LBDatabase::GetObjData(), LBDatabase::GetObjDataSz(), LBDatabase::GetTime(), CLBStatsMsg::idletime, LBDatabaseObj(), msg, CentralLB::myspeed, CLBStatsMsg::n_comm, CLBStatsMsg::n_objs, LBDatabase::new_lbbalancer(), CLBStatsMsg::next_lb, CLBStatsMsg::objData, CLBStatsMsg::pe_speed, CentralLB::statsMsg, BaseLB::step(), CLBStatsMsg::step, BaseLB::theLbdb, CLBStatsMsg::total_cputime, and CLBStatsMsg::total_walltime.
Referenced by CentralLB::ProcessAtSync().
| void CentralLB::SendStats | ( | ) | [inherited] |
Definition at line 292 of file CentralLB.C.
References Converse::CkMyPe(), Converse::CkNumPes(), CmiMyPe(), CentralLB::cur_ld_balancer, LBDatabase::getLBDB(), _LDOMid::id, LDOMHandle::id, _ckGroupID::idx, CentralLB::reduction_started, LBDB::RegisteringObjects(), CentralLB::statsMsg, BaseLB::step(), BaseLB::theLbdb, and CentralLB::thisProxy.
Referenced by CentralLB::ProcessAtSync().
| void CentralLB::Migrated | ( | LDObjHandle | h, | |
| int | waitBarrier = 1 | |||
| ) | [inherited] |
Definition at line 332 of file CentralLB.C.
References CentralLB::CheckMigrationComplete(), Converse::CkMyPe(), CentralLB::future_migrates_completed, CentralLB::future_migrates_expected, CentralLB::migrates_completed, CentralLB::migrates_expected, and CentralLB::MigrationDone().
Referenced by _dummyMigrationHandler(), CentralLB::MissMigrate(), and CentralLB::staticMigrated().
| void CentralLB::MissMigrate | ( | int | waitForBarrier | ) | [inherited] |
| void CentralLB::buildStats | ( | ) | [private, inherited] |
Definition at line 366 of file CentralLB.C.
References Converse::CkNumPes(), CLBStatsMsg::commData, BaseLB::LDStats::commData, BaseLB::LDStats::from_proc, LDObjData::migratable, msg, CLBStatsMsg::n_comm, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, CLBStatsMsg::n_objs, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), CLBStatsMsg::objData, BaseLB::LDStats::objData, CkVec< T >::resize(), CentralLB::stats_msg_count, CentralLB::statsData, CentralLB::statsMsgsList, and BaseLB::LDStats::to_proc.
Referenced by CentralLB::LoadBalance().
| void CentralLB::depositData | ( | CLBStatsMsg * | m | ) | [inherited] |
Definition at line 403 of file CentralLB.C.
References BaseLB::ProcStats::available, CLBStatsMsg::bg_cputime, BaseLB::ProcStats::bg_cputime, CLBStatsMsg::bg_walltime, BaseLB::ProcStats::bg_walltime, CmiTrue, CLBStatsMsg::commData, BaseLB::LDStats::commData, CLBStatsMsg::from_pe, BaseLB::LDStats::from_proc, CLBStatsMsg::idletime, BaseLB::ProcStats::idletime, LDObjData::migratable, CLBStatsMsg::n_comm, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, CLBStatsMsg::n_objs, BaseLB::ProcStats::n_objs, CLBStatsMsg::objData, BaseLB::LDStats::objData, BaseLB::ProcStats::pe, CLBStatsMsg::pe_speed, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, CentralLB::statsData, BaseLB::LDStats::to_proc, CLBStatsMsg::total_cputime, BaseLB::ProcStats::total_cputime, CLBStatsMsg::total_walltime, and BaseLB::ProcStats::total_walltime.
Referenced by CentralLB::ReceiveStats().
| void CentralLB::ReceiveStats | ( | CkMarshalledCLBStatsMessage & | msg | ) | [inherited] |
Definition at line 441 of file CentralLB.C.
References CLBStatsMsg::avail_vector, BaseLB::ProcStats::available, CLBStatsMsg::bg_cputime, BaseLB::ProcStats::bg_cputime, CLBStatsMsg::bg_walltime, BaseLB::ProcStats::bg_walltime, Converse::CkMyPe(), Converse::CkNumPes(), CkNumValidPes(), CmiMyPe(), CmiTrue, CentralLB::depositData(), CLBStatsMsg::from_pe, CkMarshalledCLBStatsMessage::getCount(), CkMarshalledCLBStatsMessage::getMessage(), CLBStatsMsg::idletime, BaseLB::ProcStats::idletime, LBDatabaseObj(), CLBStatsMsg::n_comm, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_objs, BaseLB::ProcStats::n_objs, CLBStatsMsg::n_objs, CLBStatsMsg::next_lb, BaseLB::LDStats::nprocs(), BaseLB::ProcStats::pe, CLBStatsMsg::pe_speed, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, LBDatabase::set_avail_vector(), CentralLB::stats_msg_count, CentralLB::statsData, CentralLB::statsMsgsList, BaseLB::step(), CentralLB::thisProxy, CLBStatsMsg::total_cputime, BaseLB::ProcStats::total_cputime, CLBStatsMsg::total_walltime, and BaseLB::ProcStats::total_walltime.
| void CentralLB::ReceiveStatsViaTree | ( | CkMarshalledCLBStatsMessage & | msg | ) | [inherited] |
added by Abhinav for receiving msgs via spanning tree
Definition at line 520 of file CentralLB.C.
References CkMarshalledCLBStatsMessage::add(), CentralLB::bufMsg, Converse::CkMyPe(), CentralLB::count_msgs, CkMarshalledCLBStatsMessage::free(), SpanningTree::numChildren, SpanningTree::parent, CentralLB::st, and CentralLB::thisProxy.
| void CentralLB::LoadBalance | ( | void | ) | [inherited] |
Definition at line 541 of file CentralLB.C.
References _lb_args, _replaySystem, LBMigrateMsg::avail_vector, BaseLB::ProcStats::available, LBDatabase::availVector(), CentralLB::buildStats(), Converse::CkMyPe(), Converse::CkNumPes(), BaseLB::LDStats::clear(), CmiMemoryUsage(), CmiPrintf(), BaseLB::LDStats::computeNonlocalComm(), CpdHandleLBMessage(), CentralLB::cur_ld_balancer, CkLBArgs::debug(), LBSimulation::doSimulation, LBMigrateMsg::expectedLoad, CentralLB::extractMigrateMsg(), free(), MigrateInfo::from_pe, BaseLB::LDStats::from_proc, LBDatabase::get_avail_vector(), LBInfo::getInfo(), getPredictedLoadWithMsg(), LBInfo::getSummary(), LBDatabaseObj(), LBMigrateMsg::lbDecisionCount, CentralLB::lbDecisionCount, BaseLB::lbname, LDOMHandle::ldb, malloc(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, BaseLB::LDStats::n_objs, LBDatabase::new_lbbalancer(), LBMigrateMsg::next_lb, BaseLB::LDStats::normalize_speed(), MigrateInfo::obj, BaseLB::LDStats::objData, LDObjHandle::omhandle, p, LBInfo::peLoads, CentralLB::preprocess(), CkLBArgs::printSummary(), BaseLB::LDStats::procs, CkLBArgs::samePeSpeed(), CentralLB::simulationRead(), CentralLB::simulationWrite(), CentralLB::start_lb_time, CentralLB::stats_msg_count, CentralLB::statsData, CentralLB::statsMsgsList, LBMigrateMsg::step, BaseLB::step(), CentralLB::Strategy(), CentralLB::thisProxy, CentralLB::useMem(), and UsrToEnv().
| void CentralLB::removeNonMigratable | ( | LDStats * | statsDataList, | |
| int | count | |||
| ) | [protected, inherited] |
Definition at line 672 of file CentralLB.C.
References CmiPrintf(), LDObjData::cpuTime, LDCommData::from_proc(), _LDCommDesc::get_type(), idx, LDObjData::migratable, LDCommData::receiver, CkVec< T >::resize(), and LDObjData::wallTime.
Referenced by TopoLB::work(), TopoCentLB::work(), and RefineTopoLB::work().
| void CentralLB::ReceiveMigration | ( | LBMigrateMsg * | m | ) | [inherited] |
Definition at line 764 of file CentralLB.C.
References CkReduction::max_int, CentralLB::ProcessReceiveMigration(), CentralLB::storedMigrateMsg, and CentralLB::thisProxy.
| void CentralLB::ProcessReceiveMigration | ( | CkReductionMsg * | msg | ) | [inherited] |
Definition at line 776 of file CentralLB.C.
References _lb_args, MigrateInfo::async_arrival, LBMigrateMsg::avail_vector, Converse::CkMyPe(), Converse::CkNumPes(), CmiMyPe(), CmiPrintf(), CmiWallTimer(), CentralLB::cur_ld_balancer, CkLBArgs::debug(), LBMigrateMsg::expectedLoad, MigrateInfo::from_pe, CentralLB::future_migrates_expected, LBDatabase::getLBDB(), LBDatabase::GetLBPeriod(), LBDatabase::lastLBInfo, LBDatabaseObj(), LBMigrateMsg::lbDecisionCount, CentralLB::lbDecisionCount, LBDatabase::Migrate(), CentralLB::migrates_completed, CentralLB::migrates_expected, CentralLB::MigrationDone(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, LBMigrateMsg::next_lb, MigrateInfo::obj, sendDummyMigrationCounts(), LBDatabase::set_avail_vector(), LBDatabase::SetLBPeriod(), LBMigrateMsg::step, BaseLB::step(), CentralLB::storedMigrateMsg, BaseLB::theLbdb, CentralLB::thisProxy, envelope::TN, MigrateInfo::to_pe, UsrToEnv(), and LBDB::validObjHandle().
Referenced by CentralLB::ReceiveMigration().
| void CentralLB::ReceiveDummyMigration | ( | int | _step | ) | [inherited] |
Definition at line 886 of file CentralLB.C.
References Converse::CkMyPe(), BaseLB::step(), and CentralLB::thisProxy.
Referenced by _recvRestartCheckpointHandler(), _sendDetsReplyHandler(), and _updateHomeAckHandler().
| void CentralLB::MigrationDone | ( | int | balancing | ) | [inherited] |
Definition at line 896 of file CentralLB.C.
References _lb_args, Converse::CkMyPe(), LBDatabase::ClearLoads(), CmiGridQueueDeregisterAll(), LBDatabase::incStep(), CentralLB::LoadbalanceDone(), CentralLB::migrates_completed, CentralLB::migrates_expected, LBDatabase::MigrationDone(), LBDatabase::Object(), resumeCentralLbAfterChkpt(), CentralLB::savedBalancing, startLoadBalancingMlog(), BaseLB::step(), CkReduction::sum_int, CkLBArgs::syncResume(), BaseLB::theLbdb, and CentralLB::thisProxy.
Referenced by CentralLB::AtSync(), CentralLB::Migrated(), and CentralLB::ProcessReceiveMigration().
| void CentralLB::endMigrationDone | ( | int | balancing | ) | [inherited] |
Definition at line 937 of file CentralLB.C.
References _lb_args, Converse::CkMyPe(), BaseLB::step(), CkReduction::sum_int, CkLBArgs::syncResume(), and CentralLB::thisProxy.
Referenced by resumeCentralLbAfterChkpt().
| void CentralLB::ResumeClients | ( | CkReductionMsg * | msg | ) | [inherited] |
| void CentralLB::ResumeClients | ( | int | balancing | ) | [inherited] |
Definition at line 971 of file CentralLB.C.
References _lb_args, CentralLB::CheckMigrationComplete(), Converse::CkMyPe(), ComlibNotifyMigrationDone(), CentralLB::cur_ld_balancer, CkLBArgs::debug(), CentralLB::future_migrates_completed, CentralLB::future_migrates_expected, LBDatabase::ResumeClients(), CentralLB::resumeCount, and BaseLB::theLbdb.
Referenced by CentralLB::ResumeClients().
| void CentralLB::CheckMigrationComplete | ( | ) | [inherited] |
Definition at line 1006 of file CentralLB.C.
References _lb_args, Converse::CkMyPe(), CentralLB::cur_ld_balancer, CkLBArgs::debug(), LBDB::DoneRegisteringObjects(), CentralLB::future_migrates_completed, CentralLB::future_migrates_expected, LBDatabase::getLBDB(), _LDOMid::id, LDOMHandle::id, _ckGroupID::idx, CentralLB::lbdone, BaseLB::lbname, LBDatabase::nextLoadbalancer(), BaseLB::seqno, CentralLB::start_lb_time, BaseLB::step(), and BaseLB::theLbdb.
Referenced by CentralLB::Migrated(), and CentralLB::ResumeClients().
| void CentralLB::preprocess | ( | LDStats * | stats | ) | [inherited] |
Definition at line 1032 of file CentralLB.C.
References _lb_args, _lb_predict, CentralLB::FuturePredictor(), CkLBArgs::ignoreBgLoad(), and CentralLB::statsData.
Referenced by CentralLB::LoadBalance(), and CentralLB::simulationRead().
| LBMigrateMsg * CentralLB::Strategy | ( | LDStats * | stats | ) | [virtual, inherited] |
Definition at line 1042 of file CentralLB.C.
References _lb_args, CentralLB::createMigrateMsg(), CentralLB::cur_ld_balancer, CkLBArgs::debug(), envelope::getTotalsize(), BaseLB::lbname, msg, LBMigrateMsg::n_moves, LBDatabase::Object(), CentralLB::useMem(), LBDatabase::useMem(), UsrToEnv(), and CentralLB::work().
Referenced by CentralLB::callStrategy(), CentralLB::LoadBalance(), CentralLB::simulationRead(), and CentralLB::Strategy().
| void CentralLB::work | ( | LDStats * | stats | ) | [virtual, inherited] |
Definition at line 1077 of file CentralLB.C.
Referenced by CentralLB::Strategy(), PhasebyArrayLB::work(), and HybridLB::work().
| LBMigrateMsg * CentralLB::createMigrateMsg | ( | LDStats * | stats | ) | [virtual, inherited] |
Definition at line 1084 of file CentralLB.C.
References MigrateInfo::async_arrival, LDObjData::asyncArrival, Converse::CkNumPes(), MigrateInfo::from_pe, LDObjData::handle, CkVec< T >::insertAtEnd(), CkVec< T >::length(), LBMigrateMsg::moves, msg, LBMigrateMsg::n_moves, MigrateInfo::obj, and MigrateInfo::to_pe.
Referenced by CentralLB::Strategy().
| LBMigrateMsg * CentralLB::extractMigrateMsg | ( | LBMigrateMsg * | m, | |
| int | p | |||
| ) | [virtual, inherited] |
Definition at line 1116 of file CentralLB.C.
References LBMigrateMsg::avail_vector, Converse::CkNumPes(), LBMigrateMsg::expectedLoad, MigrateInfo::from_pe, LBMigrateMsg::level, LBMigrateMsg::moves, msg, LBMigrateMsg::n_moves, LBMigrateMsg::next_lb, and MigrateInfo::to_pe.
Referenced by CentralLB::LoadBalance().
| void CentralLB::simulationWrite | ( | ) | [protected, inherited] |
Definition at line 1150 of file CentralLB.C.
References CkExit(), CmiPrintf(), LBSimulation::dumpFile, LBSimulation::dumpStep, LBSimulation::dumpStepSize, free(), malloc(), BaseLB::step(), and CentralLB::writeStatsMsgs().
Referenced by CentralLB::LoadBalance().
| void CentralLB::simulationRead | ( | ) | [protected, inherited] |
Definition at line 1174 of file CentralLB.C.
References CkExit(), CmiPrintf(), LBSimulation::dumpFile, CentralLB::findSimResults(), free(), BaseLB::LDStats::from_proc, BaseLB::lbname, malloc(), LBMigrateMsg::n_moves, BaseLB::LDStats::n_objs, CentralLB::preprocess(), LBSimulation::PrintDecisions(), LBSimulation::PrintDifferences(), LBSimulation::PrintSimulationResults(), LBSimulation::procsChanged, CentralLB::readStatsMsgs(), LBSimulation::reset(), LBSimulation::showDecisionsOnly, LBSimulation::simProcs, LBSimulation::simStep, LBSimulation::simStepSize, startT, CentralLB::statsData, CentralLB::Strategy(), BaseLB::LDStats::to_proc, and CentralLB::useMem().
Referenced by CentralLB::LoadBalance().
| void CentralLB::readStatsMsgs | ( | const char * | filename | ) | [inherited] |
Definition at line 1240 of file CentralLB.C.
References _lb_args, CmiAbort(), CmiPrintf(), CkLBArgs::lbversion(), BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, p, LBSimulation::procsChanged, BaseLB::LDStats::pup(), LBSimulation::simProcs, CentralLB::stats_msg_count, CentralLB::statsData, and CentralLB::statsMsgsList.
Referenced by CentralLB::simulationRead().
| void CentralLB::writeStatsMsgs | ( | const char * | filename | ) | [inherited] |
Definition at line 1288 of file CentralLB.C.
References _lb_args, CmiAbort(), CmiPrintf(), PUP::machineInfo::current(), CkLBArgs::lbversion(), p, BaseLB::LDStats::pup(), CentralLB::stats_msg_count, and CentralLB::statsData.
Referenced by CentralLB::simulationWrite().
| void CentralLB::findSimResults | ( | LDStats * | stats, | |
| int | count, | |||
| LBMigrateMsg * | msg, | |||
| LBSimulation * | simResults | |||
| ) | [protected, inherited] |
Definition at line 1333 of file CentralLB.C.
References CmiPrintf(), getPredictedLoadWithMsg(), LBSimulation::lbinfo, LBSimulation::numPes, and startT.
Referenced by CentralLB::simulationRead().
| void CentralLB::pup | ( | PUP::er & | p | ) | [virtual, inherited] |
Reimplemented from BaseLB.
Reimplemented in BlockLB, GraphBFTLB, GraphPartLB, GreedyCommLB, GridCommLB, GridCommRefineLB, GridHybridLB, GridHybridSeedLB, GridMetisLB, RandCentLB, RecBipartLB, RefineTopoLB, RotateLB, ScotchLB, ScotchRefineLB, ScotchTopoLB, TeamLB, TopoCentLB, and TopoLB.
Definition at line 1343 of file CentralLB.C.
References CentralLB::initLB(), PUP::er::isPacking(), PUP::er::isUnpacking(), CentralLB::lbDecisionCount, CLBStatsMsg::pup(), BaseLB::pup(), CentralLB::reduction_started, CentralLB::resumeCount, BaseLB::seqno, and CentralLB::statsMsg.
Referenced by TopoLB::pup(), TopoCentLB::pup(), TeamLB::pup(), ScotchTopoLB::pup(), ScotchRefineLB::pup(), ScotchLB::pup(), RotateLB::pup(), RecBipartLB::pup(), RandCentLB::pup(), GridMetisLB::pup(), GridHybridSeedLB::pup(), GridHybridLB::pup(), GridCommRefineLB::pup(), GridCommLB::pup(), GreedyCommLB::pup(), GraphPartLB::pup(), GraphBFTLB::pup(), and BlockLB::pup().
| int CentralLB::useMem | ( | ) | [virtual, inherited] |
Reimplemented from BaseLB.
Definition at line 1364 of file CentralLB.C.
References Converse::CkNumPes(), CentralLB::statsData, and BaseLB::LDStats::useMem().
Referenced by CentralLB::LoadBalance(), CentralLB::simulationRead(), and CentralLB::Strategy().
CLBStatsMsg is not a real message now.
CLBStatsMsg is used for all processors to fill in their local load and comm statistics and send to processor 0
Definition at line 1376 of file CentralLB.C.
References CLBStatsMsg::avail_vector, CLBStatsMsg::commData, CLBStatsMsg::n_comm, CLBStatsMsg::n_objs, and CLBStatsMsg::objData.
| CLBStatsMsg::~CLBStatsMsg | ( | ) | [inherited] |
Definition at line 1384 of file CentralLB.C.
References CLBStatsMsg::avail_vector, CLBStatsMsg::commData, and CLBStatsMsg::objData.
| void CLBStatsMsg::pup | ( | PUP::er & | p | ) | [inherited] |
Definition at line 1390 of file CentralLB.C.
References CLBStatsMsg::avail_vector, CLBStatsMsg::bg_cputime, CLBStatsMsg::bg_walltime, Converse::CkNumPes(), CLBStatsMsg::commData, CLBStatsMsg::from_pe, CLBStatsMsg::idletime, PUP::er::isUnpacking(), CLBStatsMsg::n_comm, CLBStatsMsg::n_objs, CLBStatsMsg::next_lb, CLBStatsMsg::objData, p, CLBStatsMsg::pe_speed, CLBStatsMsg::step, CLBStatsMsg::total_cputime, and CLBStatsMsg::total_walltime.
Referenced by CkMarshalledCLBStatsMessage::pup(), and CentralLB::pup().
| void CkMarshalledCLBStatsMessage::free | ( | ) | [inherited] |
Definition at line 1427 of file CentralLB.C.
References CkVec< T >::free(), CkMarshalledCLBStatsMessage::msgs, and CkVec< T >::size().
Referenced by CentralLB::ReceiveStatsViaTree(), and CkMarshalledCLBStatsMessage::~CkMarshalledCLBStatsMessage().
| void CkMarshalledCLBStatsMessage::add | ( | CkMarshalledCLBStatsMessage & | msg | ) | [inherited] |
Definition at line 1436 of file CentralLB.C.
References CkMarshalledCLBStatsMessage::getCount(), and CkMarshalledCLBStatsMessage::getMessage().
| void CkMarshalledCLBStatsMessage::pup | ( | PUP::er & | p | ) | [inherited] |
Definition at line 1442 of file CentralLB.C.
References PUP::er::isUnpacking(), msg, CkMarshalledCLBStatsMessage::msgs, CLBStatsMsg::pup(), and CkVec< T >::size().
| SpanningTree::SpanningTree | ( | ) | [inherited] |
Definition at line 1457 of file CentralLB.C.
References SpanningTree::arity, SpanningTree::calcNumChildren(), SpanningTree::calcParent(), Converse::CkMyPe(), and Converse::CkNumPes().
| void SpanningTree::calcParent | ( | int | n | ) | [inherited] |
Definition at line 1465 of file CentralLB.C.
References SpanningTree::arity, and SpanningTree::parent.
Referenced by SpanningTree::SpanningTree().
| void SpanningTree::calcNumChildren | ( | int | n | ) | [inherited] |
Definition at line 1472 of file CentralLB.C.
References SpanningTree::arity, Converse::CkNumPes(), and SpanningTree::numChildren.
Referenced by SpanningTree::SpanningTree().
| void CentralLB::staticPredictorOn | ( | void * | data, | |
| void * | model | |||
| ) | [static, inherited] |
Definition at line 10 of file CentralPredictor.C.
References CentralLB::predictorOn().
Referenced by CentralLB::initLB().
| void CentralLB::staticPredictorOnWin | ( | void * | data, | |
| void * | model, | |||
| int | wind | |||
| ) | [static, inherited] |
Definition at line 16 of file CentralPredictor.C.
References CentralLB::predictorOn().
Referenced by CentralLB::initLB().
| void CentralLB::staticPredictorOff | ( | void * | data | ) | [static, inherited] |
Definition at line 22 of file CentralPredictor.C.
References CentralLB::predictorOff().
Referenced by CentralLB::initLB().
| void CentralLB::staticChangePredictor | ( | void * | data, | |
| void * | model | |||
| ) | [static, inherited] |
Definition at line 28 of file CentralPredictor.C.
References CentralLB::changePredictor().
Referenced by CentralLB::initLB().
| ProcArray::ProcArray | ( | BaseLB::LDStats * | stats | ) | [inherited] |
Definition at line 16 of file ckgraph.C.
References ProcArray::avgLoad, BaseLB::LDStats::nprocs(), BaseLB::LDStats::procs, and ProcArray::procs.
| void ProcArray::resetTotalLoad | ( | ) | [inherited] |
Definition at line 35 of file ckgraph.C.
References ProcArray::procs.
Referenced by TreeMatchLB::work(), TempAwareGreedyLB::work(), RecBipartLB::work(), and GraphBFTLB::work().
| ObjGraph::ObjGraph | ( | BaseLB::LDStats * | stats | ) | [inherited] |
Definition at line 40 of file ckgraph.C.
References LDCommData::bytes, BaseLB::LDStats::commData, McastSrc::destList, LDCommData::from_proc(), BaseLB::LDStats::from_proc, _LDCommDesc::get_destObj(), _LDCommDesc::get_destObjs(), BaseLB::LDStats::getHash(), idx, BaseLB::LDStats::makeCommHash(), LDCommData::messages, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, LDCommData::receiver, LDCommData::recv_type(), LDCommData::sender, and ObjGraph::vertices.
| void ObjGraph::convertDecisions | ( | BaseLB::LDStats * | stats | ) | [inherited] |
Definition at line 89 of file ckgraph.C.
References BaseLB::LDStats::n_objs, BaseLB::LDStats::to_proc, and ObjGraph::vertices.
Referenced by ZoltanLB::work(), TreeMatchLB::work(), TempAwareGreedyLB::work(), TeamLB::work(), ScotchTopoLB::work(), ScotchRefineLB::work(), ScotchLB::work(), RefineSwapLB::work(), RecBipartLB::work(), MetisLB::work(), GraphPartLB::work(), GraphBFTLB::work(), and CommAwareRefineLB::work().
| minHeap::minHeap | ( | int | size | ) | [inherited] |
| minHeap::~minHeap | ( | ) | [inherited] |
| int minHeap::insert | ( | InfoRecord * | x | ) | [inherited] |
Definition at line 26 of file ckheap.C.
References minHeap::count, heapRecord::deleted, minHeap::h, heapRecord::info, InfoRecord::load, printf(), minHeap::size, and minHeap::swap().
Referenced by RefineKLB::performGreedyMoves(), RefinerApprox::refine(), NeighborLB::Strategy(), and GreedyCommLB::work().
| InfoRecord * minHeap::deleteMin | ( | ) | [inherited] |
Definition at line 55 of file ckheap.C.
References minHeap::count, minHeap::h, heapRecord::info, InfoRecord::load, and minHeap::swap().
Referenced by RefineKLB::performGreedyMoves(), RefinerApprox::refine(), NeighborLB::Strategy(), and GreedyCommLB::work().
| InfoRecord * minHeap::iterator | ( | heapIterator * | iter | ) | [inherited] |
Definition at line 92 of file ckheap.C.
References minHeap::count, minHeap::h, heapRecord::info, and heapIterator::next.
| InfoRecord * minHeap::next | ( | heapIterator * | iter | ) | [inherited] |
Definition at line 98 of file ckheap.C.
References minHeap::count, minHeap::h, heapRecord::info, and heapIterator::next.
Definition at line 105 of file ckheap.C.
References minHeap::h, heapRecord::info, and InfoRecord::load.
Referenced by minHeap::update().
| void minHeap::update | ( | InfoRecord * | x | ) | [inherited] |
Definition at line 119 of file ckheap.C.
References CmiAbort(), minHeap::h, and minHeap::numElements().
Referenced by minHeap::update(), and GreedyCommLB::work().
| void minHeap::update | ( | int | index | ) | [private, inherited] |
Definition at line 131 of file ckheap.C.
References minHeap::h, heapRecord::info, minHeap::least(), InfoRecord::load, minHeap::numElements(), minHeap::swap(), and minHeap::update().
| maxHeap::maxHeap | ( | int | size | ) | [inherited] |
| maxHeap::~maxHeap | ( | ) | [inherited] |
| int maxHeap::numElements | ( | ) | [inherited] |
Definition at line 172 of file ckheap.C.
References maxHeap::count.
Referenced by NeighborCommLB::Strategy().
| int maxHeap::insert | ( | InfoRecord * | x | ) | [inherited] |
Definition at line 177 of file ckheap.C.
References maxHeap::count, heapRecord::deleted, maxHeap::h, heapRecord::info, InfoRecord::load, printf(), maxHeap::size, and maxHeap::swap().
Referenced by RefinerApprox::computeA(), RefinerApprox::computeB(), RefineKLB::performGreedyMoves(), RefinerComm::refine(), Refiner::refine(), RefinerApprox::removeBigComputes(), RefinerApprox::removeBiggestSmallComputes(), NeighborLB::Strategy(), NeighborCommLB::Strategy(), and VectorStrategy().
| InfoRecord * maxHeap::deleteMax | ( | ) | [inherited] |
Definition at line 206 of file ckheap.C.
References maxHeap::count, maxHeap::h, heapRecord::info, InfoRecord::load, and maxHeap::swap().
Referenced by RefinerApprox::computeA(), RefinerApprox::computeB(), RefineKLB::performGreedyMoves(), RefinerComm::refine(), Refiner::refine(), RefinerApprox::removeBigComputes(), RefinerApprox::removeBiggestSmallComputes(), NeighborLB::Strategy(), NeighborCommLB::Strategy(), and VectorStrategy().
| InfoRecord * maxHeap::iterator | ( | heapIterator * | iter | ) | [inherited] |
Definition at line 243 of file ckheap.C.
References maxHeap::count, maxHeap::h, heapRecord::info, and heapIterator::next.
| InfoRecord * maxHeap::next | ( | heapIterator * | iter | ) | [inherited] |
Definition at line 250 of file ckheap.C.
References maxHeap::count, maxHeap::h, heapRecord::info, and heapIterator::next.
| Set::~Set | ( | ) | [inherited] |
| void Set::insert | ( | InfoRecord * | info | ) | [inherited] |
Definition at line 23 of file ckset.C.
References Set::find(), Set::head, listNode::info, and listNode::next.
Referenced by RefinerComm::assign(), Refiner::assign(), RefinerComm::refine(), RefinerApprox::refine(), Refiner::refine(), RefinerApprox::removeBigComputes(), RefinerApprox::removeBiggestSmallComputes(), and VectorStrategy().
| void Set::myRemove | ( | listNode ** | n, | |
| InfoRecord * | r | |||
| ) | [inherited] |
| void Set::remove | ( | InfoRecord * | r | ) | [inherited] |
Definition at line 44 of file ckset.C.
References Set::head, listNode::info, listNode::next, and p.
Referenced by RefinerComm::deAssign(), Refiner::deAssign(), RefinerApprox::refine(), Refiner::refine(), and VectorStrategy().
| int Set::find | ( | InfoRecord * | r | ) | [inherited] |
Definition at line 70 of file ckset.C.
References Set::head, listNode::info, listNode::next, and p.
Referenced by Set::insert().
| InfoRecord * Set::iterator | ( | Iterator * | iter | ) | [inherited] |
Definition at line 80 of file ckset.C.
References Set::head, listNode::info, listNode::next, and Iterator::next.
Referenced by RefinerApprox::computeA(), RefinerApprox::computeB(), RefinerComm::refine(), RefinerApprox::refine(), Refiner::refine(), RefinerApprox::removeBigComputes(), RefinerApprox::removeBiggestSmallComputes(), and VectorStrategy().
| InfoRecord * Set::next | ( | Iterator * | iter | ) | [inherited] |
Definition at line 89 of file ckset.C.
References listNode::info, listNode::next, and Iterator::next.
Referenced by RefinerApprox::computeA(), RefinerApprox::computeB(), RefinerComm::refine(), RefinerApprox::refine(), Refiner::refine(), RefinerApprox::removeBigComputes(), RefinerApprox::removeBiggestSmallComputes(), and VectorStrategy().
| int Set::numElements | ( | ) | [inherited] |
Definition at line 102 of file ckset.C.
References Set::head, n, listNode::next, and p.
Referenced by RefinerApprox::computeA(), RefinerApprox::computeB(), Refiner::isHeavy(), RefinerApprox::removeBigComputes(), and RefinerApprox::removeBiggestSmallComputes().
| void Set::print | ( | ) | [inherited] |
Definition at line 114 of file ckset.C.
References Set::head, InfoRecord::Id, listNode::info, listNode::next, p, and printf().
| void ComboCentLB::work | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Definition at line 41 of file ComboCentLB.C.
References ComboCentLB::clbs, BaseLB::LDStats::from_proc, CkVec< T >::length(), BaseLB::LDStats::n_objs, and BaseLB::LDStats::to_proc.
Reimplemented from CentralLB.
Definition at line 58 of file CommAwareRefineLB.C.
References CmiTrue.
| void CommAwareRefineLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
Definition at line 150 of file CommAwareRefineLB.C.
References _lb_args, Converse::CkMyPe(), ObjGraph::convertDecisions(), CkLBArgs::debug(), ProcArray::getAverageLoad(), getPossiblePes(), ProcInfo::getProcId(), handleTransfer(), p, popFromProcHeap(), ProcArray::procs, stats::time(), updateLoadInfo(), and ObjGraph::vertices.
Definition at line 41 of file CommLB.C.
References CommLB::alloc_array, alloc_struct::load, alloc_struct::nbyte, alloc_struct::nmsg, CommLB::nobj, and CommLB::npe.
Referenced by CommLB::work().
| double CommLB::compute_cost | ( | int | id, | |
| int | pe, | |||
| int | n_alloc, | |||
| int & | out_msg, | |||
| int & | out_byte | |||
| ) | [private, inherited] |
Definition at line 51 of file CommLB.C.
References CommLB::alloc_array, alpha, alloc_struct::load, graph::next, alloc_struct::nmsg, CommLB::nobj, CommLB::npe, CommLB::object_graph, and ptr.
Referenced by CommLB::work().
Definition at line 86 of file CommLB.C.
References graph::data, graph::id, graph::next, graph::nmsg, CommLB::object_graph, and ptr.
Referenced by CommLB::work().
| void CommLB::work | ( | LDStats * | stats | ) | [private, inherited] |
Definition at line 133 of file CommLB.C.
References _lb_args, CommLB::add_graph(), CommLB::alloc(), CommLB::alloc_array, BaseLB::ProcStats::available, LDCommData::bytes, CmiAbort(), BaseLB::LDStats::commData, CommLB::compute_cost(), ObjectHeap::deleteMax(), LDCommData::from_proc(), BaseLB::LDStats::from_proc, _LDCommDesc::get_destObj(), BaseLB::LDStats::getHash(), ObjectRecord::id, CkLBArgs::ignoreBgLoad(), init(), ObjectHeap::insert(), BaseLB::LDStats::makeCommHash(), LDCommData::messages, LDObjData::migratable, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_objs, CommLB::nobj, CommLB::npe, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, CommLB::object_graph, ObjectRecord::pe, ObjectRecord::pos, BaseLB::LDStats::procs, LDCommData::receiver, LDCommData::recv_type(), LDCommData::sender, BaseLB::LDStats::to_proc, ObjectRecord::val, and LDObjData::wallTime.
| ObjectHeap::ObjectHeap | ( | int | size | ) | [inherited] |
Definition at line 9 of file CommLBHeap.C.
References ObjectHeap::count, ObjectHeap::h, and ObjectHeap::size.
| int ObjectHeap::numElements | ( | ) | [inherited] |
| int ObjectHeap::insert | ( | ObjectRecord * | x | ) | [inherited] |
Definition at line 19 of file CommLBHeap.C.
References ObjectHeap::count, hRecord::deleted, ObjectHeap::h, hRecord::info, ObjectHeap::size, ObjectHeap::swap(), and ObjectRecord::val.
Referenced by GreedyCommLB::work(), and CommLB::work().
| ObjectRecord * ObjectHeap::deleteMax | ( | ) | [inherited] |
Definition at line 44 of file CommLBHeap.C.
References ObjectHeap::count, ObjectHeap::h, hRecord::info, ObjectHeap::swap(), and ObjectRecord::val.
Referenced by GreedyCommLB::work(), and CommLB::work().
| ObjectRecord * ObjectHeap::iterator | ( | hIterator * | iter | ) | [inherited] |
Definition at line 79 of file CommLBHeap.C.
References ObjectHeap::count, ObjectHeap::h, hRecord::info, and hIterator::next.
| ObjectRecord * ObjectHeap::next | ( | hIterator * | iter | ) | [inherited] |
Definition at line 86 of file CommLBHeap.C.
References ObjectHeap::count, ObjectHeap::h, hRecord::info, and hIterator::next.
| void GraphBFTLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
Definition at line 30 of file GraphBFTLB.C.
References ObjGraph::convertDecisions(), ProcArray::getAverageLoad(), ProcArray::procs, ProcArray::resetTotalLoad(), and ObjGraph::vertices.
| void GraphPartLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
Definition at line 29 of file GraphPartLB.C.
References ObjGraph::convertDecisions().
Definition at line 41 of file GreedyAgentLB.C.
References CmiFalse, CmiTrue, and GreedyAgentLB::GT.
Referenced by GreedyAgentLB::Heapify().
| void GreedyAgentLB::Heapify | ( | HeapData * | heap, | |
| int | node, | |||
| int | heapSize, | |||
| HeapCmp | cmp | |||
| ) | [private, inherited] |
Definition at line 50 of file GreedyAgentLB.C.
References GreedyAgentLB::Compare(), and left().
Referenced by GreedyAgentLB::BuildHeap(), GreedyAgentLB::HeapSort(), and GreedyAgentLB::work().
Definition at line 73 of file GreedyAgentLB.C.
References GreedyAgentLB::Heapify().
Referenced by GreedyAgentLB::BuildCpuArray(), and GreedyAgentLB::HeapSort().
Definition at line 80 of file GreedyAgentLB.C.
References GreedyAgentLB::BuildHeap(), and GreedyAgentLB::Heapify().
Referenced by GreedyAgentLB::BuildObjectArray().
| GreedyAgentLB::HeapData * GreedyAgentLB::BuildObjectArray | ( | CentralLB::LDStats * | stats, | |
| int | count, | |||
| int * | objCount | |||
| ) | [private, inherited] |
Definition at line 103 of file GreedyAgentLB.C.
References BaseLB::ProcStats::available, CmiAbort(), BaseLB::LDStats::from_proc, GreedyAgentLB::GT, GreedyAgentLB::HeapSort(), GreedyAgentLB::HeapData::id, GreedyAgentLB::HeapData::load, LDObjData::migratable, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, GreedyAgentLB::HeapData::pe, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, and LDObjData::wallTime.
Referenced by GreedyAgentLB::work().
| GreedyAgentLB::HeapData * GreedyAgentLB::BuildCpuArray | ( | CentralLB::LDStats * | stats, | |
| int | count, | |||
| int * | peCount | |||
| ) | [private, inherited] |
Definition at line 138 of file GreedyAgentLB.C.
References BaseLB::ProcStats::available, BaseLB::ProcStats::bg_walltime, GreedyAgentLB::BuildHeap(), CmiAbort(), data, BaseLB::LDStats::from_proc, GreedyAgentLB::HeapData::id, GreedyAgentLB::HeapData::load, GreedyAgentLB::LT, LDObjData::migratable, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, GreedyAgentLB::HeapData::pe, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, and LDObjData::wallTime.
Referenced by GreedyAgentLB::work().
| void GreedyAgentLB::work | ( | LDStats * | stats | ) | [inherited] |
Definition at line 186 of file GreedyAgentLB.C.
References _lb_args, GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), Converse::CkMyPe(), CkLBArgs::debug(), dest, GreedyAgentLB::Heapify(), GreedyAgentLB::HeapData::id, GreedyAgentLB::HeapData::load, GreedyAgentLB::LT, LBTopology::max_neighbors(), TopologyAgent::my_preferred_procs(), BaseLB::LDStats::nprocs(), Agent::_Elem::pe, GreedyAgentLB::HeapData::pe, BaseLB::LDStats::to_proc, TopologyAgent::topo, and GreedyAgentLB::topologyAgent.
| GreedyCommLB::GreedyCommLB | ( | const CkLBOptions & | opt | ) | [inherited] |
Definition at line 32 of file GreedyCommLB.C.
References Converse::CkMyPe(), and GreedyCommLB::init().
| GreedyCommLB::GreedyCommLB | ( | CkMigrateMessage * | m | ) | [inherited] |
Definition at line 50 of file GreedyCommLB.C.
References GreedyCommLB::assigned_array, InfoRecord::load, and GreedyCommLB::processors.
Referenced by GreedyCommLB::work().
Definition at line 57 of file GreedyCommLB.C.
References GreedyCommLB::alpha, GreedyCommLB::assigned_array, GreedyCommLB::beeta, graph::id, graph::next, GreedyCommLB::nobj, GreedyCommLB::object_graph, ptr, and BaseLB::LDStats::to_proc.
Referenced by GreedyCommLB::work().
Definition at line 79 of file GreedyCommLB.C.
References GreedyCommLB::alpha, GreedyCommLB::assigned_array, GreedyCommLB::beeta, graph::id, InfoRecord::load, graph::next, GreedyCommLB::nobj, GreedyCommLB::object_graph, GreedyCommLB::processors, ptr, and BaseLB::LDStats::to_proc.
Referenced by GreedyCommLB::work().
Definition at line 98 of file GreedyCommLB.C.
References graph::data, graph::id, graph::next, graph::nmsg, GreedyCommLB::object_graph, and ptr.
Referenced by GreedyCommLB::work().
| void GreedyCommLB::work | ( | LDStats * | stats | ) | [inherited] |
Definition at line 135 of file GreedyCommLB.C.
References _lb_args, GreedyCommLB::add_graph(), GreedyCommLB::alloc(), GreedyCommLB::alpha, BaseLB::LDStats::assign(), GreedyCommLB::assigned_array, BaseLB::ProcStats::available, processorInfo::backgroundLoad, GreedyCommLB::beeta, BaseLB::ProcStats::bg_walltime, LDCommData::bytes, Converse::CkMyPe(), CmiAbort(), BaseLB::LDStats::commData, BaseLB::LDStats::complete_flag, GreedyCommLB::compute_com(), processorInfo::computeLoad, CkLBArgs::debug(), ObjectHeap::deleteMax(), minHeap::deleteMin(), BaseLB::LDStats::from_proc, LDCommData::from_proc(), _LDCommDesc::get_destObj(), _LDCommDesc::get_destObjs(), BaseLB::LDStats::getHash(), graph::id, ObjectRecord::id, InfoRecord::Id, CkLBArgs::ignoreBgLoad(), init_data(), minHeap::insert(), ObjectHeap::insert(), InfoRecord::load, BaseLB::LDStats::makeCommHash(), LDCommData::messages, CkLBArgs::migObjOnly(), LDObjData::migratable, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, graph::next, GreedyCommLB::nmigobj, GreedyCommLB::nobj, GreedyCommLB::npe, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, GreedyCommLB::object_graph, p, ObjectRecord::pe, BaseLB::ProcStats::pe_speed, processorInfo::pe_speed, ObjectRecord::pos, GreedyCommLB::processors, BaseLB::LDStats::procs, ptr, CkVec< T >::push_back(), LDCommData::receiver, LDCommData::recv_type(), LDCommData::sender, CkVec< T >::size(), BaseLB::LDStats::to_proc, minHeap::update(), GreedyCommLB::update(), ObjectRecord::val, and LDObjData::wallTime.
| void GreedyLB::work | ( | LDStats * | stats | ) | [inherited] |
Definition at line 54 of file GreedyLB.C.
References _lb_args, BaseLB::ProcStats::available, BaseLB::ProcStats::bg_walltime, Converse::CkMyPe(), CmiAbort(), CkLBArgs::debug(), dest, BaseLB::LDStats::from_proc, ProcInfo::getProcId(), LDObjData::migratable, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, p, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, sort(), BaseLB::LDStats::to_proc, ProcInfo::totalLoad(), and LDObjData::wallTime.
| void HbmLB::staticAtSync | ( | void * | data | ) | [static, inherited] |
| HbmLB::HbmLB | ( | const CkLBOptions & | opt | ) | [inherited] |
Definition at line 32 of file HbmLB.C.
References _lb_args, LBDatabase::CollectStatsOn(), HbmLB::currentLevel, HbmLB::foundNeighbors, LBDatabase::getLBDB(), BaseLB::lbname, HbmLB::maxCommBytes, HbmLB::maxCommCount, HbmLB::maxCpuLoad, HbmLB::maxLoad, BaseLB::notifier, HbmLB::staticAtSync(), HbmLB::staticMigrated(), CkLBArgs::statsOn(), BaseLB::theLbdb, HbmLB::thisProxy, HbmLB::totalLoad, HbmLB::tree, and HbmLB::vector_n_moves.
| HbmLB::~HbmLB | ( | ) | [inherited] |
Definition at line 61 of file HbmLB.C.
References _lbdb, LBDatabase::getLBDB(), BaseLB::notifier, BaseLB::theLbdb, and HbmLB::tree.
| void HbmLB::FindNeighbors | ( | ) | [private, inherited] |
Definition at line 76 of file HbmLB.C.
References BaseLB::ProcStats::available, HbmLB::LevelData::children, Converse::CkMyPe(), CmiFalse, data, HbmLB::foundNeighbors, MyHmbHierarchyTree::getChildren(), MyHmbHierarchyTree::isroot(), level, HbmLB::levelData, HbmLB::LevelData::nChildren, MyHmbHierarchyTree::numChildren(), MyHmbHierarchyTree::numLevels(), MyHmbHierarchyTree::parent(), HbmLB::LevelData::parent, BaseLB::LDStats::procs, HbmLB::LevelData::statsData, and HbmLB::tree.
Referenced by HbmLB::AtSync(), and HbmLB::ReceiveStats().
| void HbmLB::AtSync | ( | void | ) | [inherited] |
Definition at line 105 of file HbmLB.C.
References Converse::CkMyPe(), Converse::CkNumPes(), HbmLB::FindNeighbors(), HbmLB::MigrationDone(), HbmLB::QueryBalanceNow(), BaseLB::step(), and HbmLB::thisProxy.
Referenced by HbmLB::staticAtSync().
| void HbmLB::ProcessAtSync | ( | void | ) | [inherited] |
Definition at line 122 of file HbmLB.C.
References _lb_args, LBDatabase::BackgroundLoad(), Converse::CkMyPe(), BaseLB::LDStats::commData, BaseLB::LDStats::complete_flag, CkLBArgs::debug(), BaseLB::LDStats::from_proc, LBDatabase::GetCommData(), LBDatabase::GetCommDataSz(), LBDatabase::GetObjData(), LBDatabase::GetObjDataSz(), CkVec< T >::getVec(), LBDatabase::IdleTime(), BaseLB::lbName(), HbmLB::levelData, HbmLB::myStats, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, CkVec< T >::resize(), HbmLB::start_lb_time, BaseLB::step(), BaseLB::theLbdb, HbmLB::thisProxy, BaseLB::LDStats::to_proc, and LBDatabase::TotalTime().
Definition at line 163 of file HbmLB.C.
References Converse::CkMyPe(), HbmLB::FindNeighbors(), MyHmbHierarchyTree::isroot(), HbmLB::levelData, HbmLB::NeighborIndex(), HbmLB::LevelData::statsList, HbmLB::thisProxy, and HbmLB::tree.
| void HbmLB::Loadbalancing | ( | int | level | ) | [virtual, inherited] |
Definition at line 199 of file HbmLB.C.
References _lb_args, HbmLB::LevelData::children, Converse::CkMyPe(), BaseLB::LDStats::clearBgLoad(), HbmLB::currentLevel, diff, CkLBArgs::ignoreBgLoad(), HbmLB::levelData, HbmLB::LoadbalancingDone(), myabs(), mymax(), HbmLB::start_lb_time, HbmLB::LevelData::statsData, HbmLB::LevelData::statsList, and HbmLB::thisProxy.
| void HbmLB::LoadbalancingDone | ( | int | level | ) | [inherited] |
Definition at line 243 of file HbmLB.C.
References Converse::CkMyPe(), HbmLB::levelData, MyHmbHierarchyTree::numLevels(), HbmLB::LevelData::parent, HbmLB::LevelData::statsList, HbmLB::thisProxy, HbmLB::totalLoad, and HbmLB::tree.
Referenced by HbmLB::Loadbalancing(), and HbmLB::NotifyObjectMigrationDone().
Definition at line 261 of file HbmLB.C.
References HbmLB::LevelData::children, HbmLB::levelData, HbmLB::LevelData::nChildren, HbmLB::ResumeClients(), and HbmLB::thisProxy.
Definition at line 286 of file HbmLB.C.
References HbmLB::LevelData::children, Converse::CkMyPe(), HbmLB::collectCommData(), CkVec< T >::getVec(), LDObjData::handle, idx, HbmLB::levelData, LBDatabase::Migrate(), HbmLB::myStats, BaseLB::LDStats::n_objs, HbmLB::LevelData::nChildren, BaseLB::LDStats::objData, CkVec< T >::push_back(), BaseLB::LDStats::removeObject(), CkVec< T >::size(), BaseLB::theLbdb, HbmLB::thisProxy, and LDObjData::wallTime.
| void HbmLB::collectCommData | ( | int | objIdx, | |
| CkVec< LDCommData > & | comms | |||
| ) | [inherited] |
Definition at line 333 of file HbmLB.C.
References BaseLB::LDStats::commData, LDCommData::from_proc(), HbmLB::levelData, HbmLB::myStats, BaseLB::LDStats::n_comm, BaseLB::LDStats::objData, LDObjData::objID(), _LDObjKey::objID(), LDObjData::omID(), _LDObjKey::omID(), CkVec< T >::push_back(), and LDCommData::sender.
Referenced by HbmLB::ReceiveMigrationDelta().
| void HbmLB::ObjMigrated | ( | LDObjData | data, | |
| LDCommData * | cdata, | |||
| int | n | |||
| ) | [inherited] |
Definition at line 351 of file HbmLB.C.
References BaseLB::LDStats::commData, BaseLB::LDStats::deleteCommHash(), BaseLB::LDStats::from_proc, LDObjHandle::handle, LDObjData::handle, HbmLB::levelData, LDObjData::migratable, HbmLB::MigrationDone(), HbmLB::LevelData::migrationDone(), HbmLB::myStats, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, HbmLB::LevelData::obj_completed, BaseLB::LDStats::objData, CkVec< T >::push_back(), and BaseLB::LDStats::to_proc.
Definition at line 381 of file HbmLB.C.
References HbmLB::lbLevel, HbmLB::levelData, HbmLB::LevelData::migrates_expected, HbmLB::MigrationDone(), and HbmLB::LevelData::migrationDone().
| void HbmLB::Migrated | ( | LDObjHandle | h, | |
| int | waitBarrier | |||
| ) | [inherited] |
Definition at line 393 of file HbmLB.C.
References Converse::CkMyPe(), HbmLB::levelData, HbmLB::LevelData::migrates_completed, HbmLB::LevelData::migrates_expected, HbmLB::MigrationDone(), HbmLB::LevelData::migrationDone(), HbmLB::newObjs, and CkVec< T >::push_back().
Referenced by CreateLBFunc_Def().
Definition at line 406 of file HbmLB.C.
References Converse::CkMyPe(), HbmLB::lbLevel, HbmLB::levelData, HbmLB::LoadbalancingDone(), HbmLB::LevelData::mig_reported, HbmLB::LevelData::nChildren, HbmLB::LevelData::parent, and HbmLB::thisProxy.
| void HbmLB::MigrationDone | ( | int | balancing | ) | [inherited] |
Definition at line 430 of file HbmLB.C.
References Converse::CkMyPe(), HbmLB::LevelData::clear(), CkVec< T >::free(), LBDatabase::incStep(), HbmLB::lbLevel, HbmLB::levelData, HbmLB::LevelData::migrates_completed, HbmLB::LevelData::migrates_expected, HbmLB::myStats, HbmLB::newObjs, MyHmbHierarchyTree::numLevels(), HbmLB::LevelData::obj_completed, BaseLB::LDStats::objData, LDObjHandle::objID(), LDObjHandle::omID(), HbmLB::LevelData::parent, CkVec< T >::size(), BaseLB::theLbdb, HbmLB::thisProxy, and HbmLB::tree.
Referenced by HbmLB::AtSync(), HbmLB::Migrated(), HbmLB::ObjMigrated(), and HbmLB::ReceiveMigrationCount().
| void HbmLB::ResumeClients | ( | CkReductionMsg * | msg | ) | [inherited] |
Definition at line 484 of file HbmLB.C.
References _lb_args, Converse::CkMyPe(), CkLBArgs::printSummary(), and BaseLB::step().
Referenced by HbmLB::ReceiveResumeClients().
| void HbmLB::ResumeClients | ( | int | balancing | ) | [inherited] |
Definition at line 494 of file HbmLB.C.
References _lb_args, Converse::CkMyPe(), HbmLB::LevelData::clear(), LBDatabase::ClearLoads(), BaseLB::LDStats::computeNonlocalComm(), CkLBArgs::debug(), LBInfo::getInfo(), LBInfo::getSummary(), LBDatabase::incStep(), BaseLB::lbName(), HbmLB::levelData, HbmLB::myStats, BaseLB::LDStats::n_objs, CkLBArgs::printSummary(), LBDatabase::ResumeClients(), HbmLB::start_lb_time, BaseLB::step(), BaseLB::theLbdb, HbmLB::thisProxy, HbmLB::totalLoad, and HbmLB::useMem().
| void HbmLB::reportLBQulity | ( | double | mload, | |
| double | mCpuLoad, | |||
| double | totalload, | |||
| int | nmsgs, | |||
| double | bytesentry | |||
| ) | [inherited] |
Definition at line 531 of file HbmLB.C.
References Converse::CkMyPe(), Converse::CkNumPes(), HbmLB::maxCommBytes, HbmLB::maxCommCount, HbmLB::maxCpuLoad, HbmLB::maxLoad, BaseLB::step(), and HbmLB::totalLoad.
| void HbmLB::work | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Definition at line 559 of file HbmLB.C.
References HbmLB::levelData.
Referenced by HbmLB::ReceiveStats().
| int HbmLB::useMem | ( | ) | [protected, virtual, inherited] |
Reimplemented from BaseLB.
Definition at line 571 of file HbmLB.C.
References HbmLB::levelData.
Referenced by HbmLB::ResumeClients().
| void HybridBaseLB::staticMigrated | ( | void * | me, | |
| LDObjHandle | h, | |||
| int | waitBarrier | |||
| ) | [static, inherited] |
Definition at line 21 of file HybridBaseLB.C.
References HybridBaseLB::Migrated().
Referenced by HybridBaseLB::HybridBaseLB().
| void HybridBaseLB::staticAtSync | ( | void * | data | ) | [static, inherited] |
Definition at line 28 of file HybridBaseLB.C.
References HybridBaseLB::AtSync().
Referenced by HybridBaseLB::HybridBaseLB().
| HybridBaseLB::HybridBaseLB | ( | const CkLBOptions & | opt | ) | [inherited] |
Definition at line 35 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), Converse::CkNumPes(), LBDatabase::CollectStatsOn(), HybridBaseLB::currentLevel, HybridBaseLB::foundNeighbors, HybridBaseLB::FULL, HybridBaseLB::future_migrates_expected, LBDatabase::getLBDB(), HybridBaseLB::group1_created, BaseLB::lbname, HybridBaseLB::maxCommBytes, HybridBaseLB::maxCommCount, HybridBaseLB::maxCpuLoad, HybridBaseLB::maxLoad, HybridBaseLB::maxMem, MyHierarchyTree::name(), BaseLB::notifier, HybridBaseLB::SHRINK, HybridBaseLB::staticAtSync(), HybridBaseLB::staticMigrated(), CkLBArgs::statsOn(), HybridBaseLB::statsStrategy, BaseLB::theLbdb, HybridBaseLB::thisProxy, HybridBaseLB::totalLoad, HybridBaseLB::tree, and HybridBaseLB::vector_n_moves.
| void HybridBaseLB::initTree | ( | ) | [protected, inherited] |
Definition at line 85 of file HybridBaseLB.C.
References Converse::CkMyPe(), CmiEstablishGroup(), MyHierarchyTree::getChildren(), HybridBaseLB::group1, HybridBaseLB::group1_created, MyHierarchyTree::isroot(), MyHierarchyTree::numChildren(), and HybridBaseLB::tree.
| HybridBaseLB::~HybridBaseLB | ( | ) | [inherited] |
Definition at line 104 of file HybridBaseLB.C.
References _lbdb, LBDatabase::getLBDB(), BaseLB::notifier, BaseLB::theLbdb, and HybridBaseLB::tree.
| void HybridBaseLB::FindNeighbors | ( | ) | [private, inherited] |
Definition at line 119 of file HybridBaseLB.C.
References BaseLB::ProcStats::available, HybridBaseLB::LevelData::children, Converse::CkMyPe(), CmiFalse, data, HybridBaseLB::foundNeighbors, MyHierarchyTree::getChildren(), MyHierarchyTree::isroot(), level, HybridBaseLB::levelData, HybridBaseLB::LevelData::nChildren, MyHierarchyTree::numChildren(), MyHierarchyTree::numLevels(), MyHierarchyTree::parent(), HybridBaseLB::LevelData::parent, BaseLB::LDStats::procs, HybridBaseLB::LevelData::statsData, HybridBaseLB::LevelData::statsMsgsList, and HybridBaseLB::tree.
Referenced by HybridBaseLB::AtSync(), HybridBaseLB::ReceiveMigration(), HybridBaseLB::ReceiveStats(), and HybridBaseLB::ReceiveVectorMigration().
| void HybridBaseLB::AtSync | ( | void | ) | [inherited] |
Definition at line 151 of file HybridBaseLB.C.
References Converse::CkMyPe(), Converse::CkNumPes(), HybridBaseLB::FindNeighbors(), HybridBaseLB::MigrationDone(), HybridBaseLB::QueryBalanceNow(), BaseLB::step(), and HybridBaseLB::thisProxy.
Referenced by HybridBaseLB::staticAtSync().
| void HybridBaseLB::ProcessAtSync | ( | void | ) | [inherited] |
Definition at line 168 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::AssembleStats(), Converse::CkMyPe(), CkLBArgs::debug(), BaseLB::lbName(), HybridBaseLB::levelData, msg, HybridBaseLB::start_lb_time, BaseLB::step(), and HybridBaseLB::thisProxy.
| CLBStatsMsg * HybridBaseLB::AssembleStats | ( | ) | [private, inherited] |
Definition at line 192 of file HybridBaseLB.C.
References CLBStatsMsg::bg_cputime, CLBStatsMsg::bg_walltime, Converse::CkMyPe(), CLBStatsMsg::commData, CLBStatsMsg::from_pe, LBDatabase::GetCommData(), LBDatabase::GetCommDataSz(), LBDatabase::GetObjData(), LBDatabase::GetObjDataSz(), LBDatabase::GetTime(), CLBStatsMsg::idletime, msg, CLBStatsMsg::n_comm, CLBStatsMsg::n_objs, CLBStatsMsg::objData, CLBStatsMsg::pe_speed, BaseLB::theLbdb, CLBStatsMsg::total_cputime, and CLBStatsMsg::total_walltime.
Referenced by HybridBaseLB::ProcessAtSync().
| void HybridBaseLB::ReceiveStats | ( | CkMarshalledCLBStatsMessage & | m, | |
| int | fromlevel | |||
| ) | [inherited] |
Definition at line 225 of file HybridBaseLB.C.
References HybridBaseLB::buildCombinedLBStatsMessage(), HybridBaseLB::buildStats(), Converse::CkMyPe(), HybridBaseLB::depositLBStatsMessage(), HybridBaseLB::FindNeighbors(), CkMarshalledCLBStatsMessage::getMessage(), MyHierarchyTree::isroot(), HybridBaseLB::levelData, HybridBaseLB::thisProxy, and HybridBaseLB::tree.
| void HybridBaseLB::depositLBStatsMessage | ( | CLBStatsMsg * | msg, | |
| int | atlevel | |||
| ) | [private, inherited] |
Definition at line 266 of file HybridBaseLB.C.
References BaseLB::ProcStats::available, CLBStatsMsg::bg_cputime, BaseLB::ProcStats::bg_cputime, CLBStatsMsg::bg_walltime, BaseLB::ProcStats::bg_walltime, CmiTrue, CLBStatsMsg::commData, CLBStatsMsg::from_pe, LDCommData::from_proc(), _LDCommDesc::get_type(), CLBStatsMsg::idletime, BaseLB::ProcStats::idletime, HybridBaseLB::levelData, BaseLB::LDStats::n_comm, CLBStatsMsg::n_comm, BaseLB::LDStats::n_objs, CLBStatsMsg::n_objs, BaseLB::ProcStats::n_objs, HybridBaseLB::NeighborIndex(), BaseLB::ProcStats::pe, CLBStatsMsg::pe_speed, BaseLB::ProcStats::pe_speed, BaseLB::LDStats::procs, LDCommData::receiver, _LDCommDesc::setProc(), LDCommData::src_proc, CLBStatsMsg::total_cputime, BaseLB::ProcStats::total_cputime, CLBStatsMsg::total_walltime, and BaseLB::ProcStats::total_walltime.
Referenced by HybridBaseLB::ReceiveStats().
| void HybridBaseLB::buildStats | ( | int | level | ) | [private, inherited] |
Definition at line 308 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), CmiPrintf(), CLBStatsMsg::commData, BaseLB::LDStats::commData, CkLBArgs::debug(), CLBStatsMsg::from_pe, BaseLB::LDStats::from_proc, HybridBaseLB::levelData, LDObjData::migratable, msg, n, CLBStatsMsg::n_comm, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, CLBStatsMsg::n_objs, BaseLB::LDStats::n_objs, HybridBaseLB::NeighborIndex(), BaseLB::LDStats::nprocs(), CLBStatsMsg::objData, BaseLB::LDStats::objData, CkVec< T >::resize(), HybridBaseLB::LevelData::stats_msg_count, HybridBaseLB::LevelData::statsData, HybridBaseLB::LevelData::statsMsgsList, and BaseLB::LDStats::to_proc.
Referenced by HybridBaseLB::ReceiveStats().
| CLBStatsMsg * HybridBaseLB::buildCombinedLBStatsMessage | ( | int | atlevel | ) | [private, inherited] |
Definition at line 357 of file HybridBaseLB.C.
References BaseLB::ProcStats::bg_cputime, CLBStatsMsg::bg_cputime, BaseLB::ProcStats::bg_walltime, CLBStatsMsg::bg_walltime, Converse::CkMyPe(), CLBStatsMsg::commData, BaseLB::LDStats::commData, CLBStatsMsg::from_pe, LDCommData::from_proc(), _LDCommDesc::get_type(), BaseLB::ProcStats::idletime, CLBStatsMsg::idletime, HybridBaseLB::levelData, CLBStatsMsg::n_comm, BaseLB::LDStats::n_comm, CLBStatsMsg::n_objs, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), MyHierarchyTree::numLevels(), CLBStatsMsg::objData, BaseLB::LDStats::objData, BaseLB::ProcStats::pe_speed, CLBStatsMsg::pe_speed, BaseLB::LDStats::procs, LDCommData::receiver, _LDCommDesc::setProc(), HybridBaseLB::SHRINK, HybridBaseLB::SHRINK_NULL, LDCommData::src_proc, HybridBaseLB::statsStrategy, BaseLB::ProcStats::total_cputime, CLBStatsMsg::total_cputime, BaseLB::ProcStats::total_walltime, CLBStatsMsg::total_walltime, and HybridBaseLB::tree.
Referenced by HybridBaseLB::ReceiveStats().
| void HybridBaseLB::Loadbalancing | ( | int | level | ) | [virtual, inherited] |
Definition at line 463 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), BaseLB::LDStats::clearBgLoad(), HybridBaseLB::currentLevel, CkLBArgs::debug(), BaseLB::LDStats::from_proc, CkVec< T >::getVec(), HybridBaseLB::group1, HybridBaseLB::group1_created, CkLBArgs::ignoreBgLoad(), MyHierarchyTree::isroot(), BaseLB::lbName(), HybridBaseLB::levelData, BaseLB::LDStats::n_objs, MyHierarchyTree::numLevels(), BaseLB::LDStats::objData, HybridBaseLB::SHRINK, HybridBaseLB::SHRINK_NULL, CkVec< T >::size(), HybridBaseLB::start_lb_time, HybridBaseLB::statsStrategy, HybridBaseLB::Strategy(), HybridBaseLB::thisProxy, BaseLB::LDStats::to_proc, HybridBaseLB::tree, HybridBaseLB::useMem(), and HybridBaseLB::VectorStrategy().
| LBMigrateMsg * HybridBaseLB::Strategy | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Definition at line 534 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::createMigrateMsg(), CkLBArgs::debug(), BaseLB::LDStats::n_objs, BaseLB::LDStats::to_proc, and HybridBaseLB::work().
Referenced by HybridBaseLB::Loadbalancing(), and HybridBaseLB::Strategy().
| void HybridBaseLB::ReceiveMigration | ( | LBMigrateMsg * | msg | ) | [inherited] |
Definition at line 553 of file HybridBaseLB.C.
References HybridBaseLB::LevelData::children, Converse::CkMyPe(), HybridBaseLB::collectCommData(), HybridBaseLB::FindNeighbors(), MigrateInfo::from_pe, BaseLB::LDStats::from_proc, CkVec< T >::getVec(), LBMigrateMsg::level, HybridBaseLB::levelData, LBDatabase::Migrate(), HybridBaseLB::LevelData::migrates_expected, HybridBaseLB::LevelData::migrationDone(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, BaseLB::LDStats::n_objs, MigrateInfo::obj, BaseLB::LDStats::objData, LDObjHandle::objID(), LDObjHandle::omID(), HybridBaseLB::LevelData::outObjs, BaseLB::LDStats::removeObject(), CkVec< T >::size(), HybridBaseLB::LevelData::statsData, HybridBaseLB::StatsDone(), BaseLB::theLbdb, HybridBaseLB::thisProxy, and MigrateInfo::to_pe.
| LBVectorMigrateMsg * HybridBaseLB::VectorStrategy | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Definition at line 623 of file HybridBaseLB.C.
References HybridBaseLB::LevelData::children, HybridBaseLB::currentLevel, VectorMigrateInfo::from_pe, LBVectorMigrateMsg::level, HybridBaseLB::levelData, LBVectorMigrateMsg::moves, msg, LBVectorMigrateMsg::n_moves, HybridBaseLB::SHRINK_NULL, HybridBaseLB::statsStrategy, and VectorMigrateInfo::to_pe.
Referenced by HybridBaseLB::Loadbalancing().
| void HybridBaseLB::ReceiveVectorMigration | ( | LBVectorMigrateMsg * | msg | ) | [inherited] |
Definition at line 650 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::LevelData::children, Converse::CkMyPe(), HybridBaseLB::collectCommData(), CkLBArgs::debug(), HybridBaseLB::FindNeighbors(), VectorMigrateInfo::from_pe, BaseLB::LDStats::from_proc, CkVec< T >::getVec(), LDObjData::handle, LBVectorMigrateMsg::level, HybridBaseLB::levelData, VectorMigrateInfo::load, LDObjData::migratable, HybridBaseLB::LevelData::migrationDone(), LBVectorMigrateMsg::moves, LBVectorMigrateMsg::n_moves, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, HybridBaseLB::ObjsMigrated(), HybridBaseLB::LevelData::outObjs, CkVec< T >::push_back(), BaseLB::LDStats::removeObject(), CkVec< T >::size(), HybridBaseLB::LevelData::statsData, HybridBaseLB::StatsDone(), HybridBaseLB::thisProxy, VectorMigrateInfo::to_pe, HybridBaseLB::LevelData::vector_expected, HybridBaseLB::VectorDone(), HybridBaseLB::LevelData::vectorReceived(), and LDObjData::wallTime.
| void HybridBaseLB::ObjsMigrated | ( | LDObjData * | data, | |
| int | m, | |||
| LDCommData * | cdata, | |||
| int | n, | |||
| int | level | |||
| ) | [inherited] |
Definition at line 714 of file HybridBaseLB.C.
References BaseLB::LDStats::commData, data, BaseLB::LDStats::deleteCommHash(), BaseLB::LDStats::from_proc, HybridBaseLB::levelData, LDObjData::migratable, HybridBaseLB::LevelData::migrationDone(), BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, HybridBaseLB::LevelData::nChildren, HybridBaseLB::newObjs, HybridBaseLB::LevelData::obj_completed, BaseLB::LDStats::objData, LDObjData::objID(), _LDObjKey::objID(), LDObjData::omID(), _LDObjKey::omID(), CkVec< T >::push_back(), HybridBaseLB::LevelData::statsData, HybridBaseLB::StatsDone(), and BaseLB::LDStats::to_proc.
Referenced by HybridBaseLB::ReceiveVectorMigration().
| void HybridBaseLB::VectorDone | ( | int | atlevel | ) | [inherited] |
Definition at line 761 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), CkLBArgs::debug(), HybridBaseLB::levelData, HybridBaseLB::LevelData::migrates_expected, HybridBaseLB::LevelData::vector_completed, HybridBaseLB::LevelData::vector_expected, and HybridBaseLB::vector_n_moves.
Referenced by HybridBaseLB::ReceiveVectorMigration(), and HybridBaseLB::TotalObjMigrated().
Definition at line 774 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), CkLBArgs::debug(), HybridBaseLB::levelData, HybridBaseLB::LevelData::migrationDone(), HybridBaseLB::StatsDone(), HybridBaseLB::LevelData::vector_completed, HybridBaseLB::vector_n_moves, HybridBaseLB::VectorDone(), and HybridBaseLB::LevelData::vectorReceived().
| void HybridBaseLB::Migrated | ( | LDObjHandle | h, | |
| int | waitBarrier | |||
| ) | [inherited] |
Definition at line 788 of file HybridBaseLB.C.
References Converse::CkMyPe(), HybridBaseLB::levelData, HybridBaseLB::LevelData::migrates_completed, HybridBaseLB::LevelData::migrates_expected, HybridBaseLB::MigrationDone(), HybridBaseLB::LevelData::migrationDone(), HybridBaseLB::LevelData::resumeAfterMigration, and HybridBaseLB::StatsDone().
Referenced by HybridBaseLB::staticMigrated().
| void HybridBaseLB::collectCommData | ( | int | objIdx, | |
| CkVec< LDCommData > & | comm, | |||
| int | atlevel | |||
| ) | [private, inherited] |
Definition at line 806 of file HybridBaseLB.C.
References BaseLB::LDStats::commData, LDCommData::from_proc(), HybridBaseLB::levelData, BaseLB::LDStats::n_comm, BaseLB::LDStats::objData, LDObjData::objID(), _LDObjKey::objID(), LDObjData::omID(), _LDObjKey::omID(), CkVec< T >::push_back(), LDCommData::sender, and HybridBaseLB::LevelData::statsData.
Referenced by HybridBaseLB::ReceiveMigration(), and HybridBaseLB::ReceiveVectorMigration().
| void HybridBaseLB::ObjMigrated | ( | LDObjData | data, | |
| LDCommData * | cdata, | |||
| int | n, | |||
| int | level | |||
| ) | [inherited] |
Definition at line 822 of file HybridBaseLB.C.
References BaseLB::LDStats::commData, BaseLB::LDStats::deleteCommHash(), BaseLB::LDStats::from_proc, HybridBaseLB::levelData, LDObjData::migratable, HybridBaseLB::LevelData::migrationDone(), BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, HybridBaseLB::LevelData::nChildren, HybridBaseLB::newObjs, HybridBaseLB::LevelData::obj_completed, BaseLB::LDStats::objData, LDObjData::objID(), _LDObjKey::objID(), LDObjData::omID(), _LDObjKey::omID(), CkVec< T >::push_back(), HybridBaseLB::LevelData::statsData, HybridBaseLB::StatsDone(), and BaseLB::LDStats::to_proc.
| void HybridBaseLB::StatsDone | ( | int | level | ) | [inherited] |
Definition at line 862 of file HybridBaseLB.C.
References HybridBaseLB::levelData, HybridBaseLB::LevelData::migrates_completed, HybridBaseLB::LevelData::migrates_expected, HybridBaseLB::LevelData::obj_completed, HybridBaseLB::LevelData::obj_expected, HybridBaseLB::LevelData::parent, and HybridBaseLB::thisProxy.
Referenced by HybridBaseLB::Migrated(), HybridBaseLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), HybridBaseLB::ReceiveMigration(), HybridBaseLB::ReceiveVectorMigration(), and HybridBaseLB::TotalObjMigrated().
| void HybridBaseLB::NotifyObjectMigrationDone | ( | int | level | ) | [inherited] |
Definition at line 877 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::LevelData::children, Converse::CkMyPe(), CkPriorityPtr(), CkSetQueueing(), CkLBArgs::debug(), HybridBaseLB::levelData, HybridBaseLB::LevelData::mig_reported, HybridBaseLB::LevelData::nChildren, and HybridBaseLB::thisProxy.
| void HybridBaseLB::StartCollectInfo | ( | DummyMsg * | m | ) | [inherited] |
Definition at line 905 of file HybridBaseLB.C.
References Converse::CkMyPe(), Location::key, HybridBaseLB::levelData, Location::loc, HybridBaseLB::newObjs, _LDObjKey::objID(), _LDObjKey::omID(), HybridBaseLB::LevelData::outObjs, HybridBaseLB::LevelData::parent, HybridBaseLB::LevelData::resumeAfterMigration, CkVec< T >::size(), and HybridBaseLB::thisProxy.
Definition at line 938 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::LevelData::children, Converse::CkMyPe(), BaseLB::LDStats::clear(), CkLBArgs::debug(), CkVec< T >::getVec(), HybridBaseLB::LevelData::info_recved, Location::key, HybridBaseLB::levelData, Location::loc, HybridBaseLB::LevelData::matchedObjs, HybridBaseLB::LevelData::nChildren, HybridBaseLB::LevelData::parent, CkVec< T >::push_back(), CkVec< T >::size(), HybridBaseLB::LevelData::statsData, HybridBaseLB::thisProxy, and HybridBaseLB::LevelData::unmatchedObjs.
Definition at line 1007 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::LevelData::children, Converse::CkMyPe(), BaseLB::LDStats::clear(), CkLBArgs::debug(), CkVec< T >::free(), HybridBaseLB::future_migrates_expected, CkVec< T >::getVec(), Location::key, HybridBaseLB::levelData, Location::loc, HybridBaseLB::LevelData::matchedObjs, LBDatabase::Migrate(), HybridBaseLB::LevelData::migrates_expected, HybridBaseLB::MigrationDone(), HybridBaseLB::LevelData::migrationDone(), HybridBaseLB::LevelData::nChildren, HybridBaseLB::newObjs, _LDObjKey::objID(), HybridBaseLB::LevelData::outObjs, CkVec< T >::push_back(), CkVec< T >::size(), HybridBaseLB::LevelData::statsData, BaseLB::theLbdb, HybridBaseLB::thisProxy, and HybridBaseLB::LevelData::unmatchedObjs.
| void HybridBaseLB::MigrationDone | ( | int | balancing | ) | [inherited] |
Definition at line 1103 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), CkVec< T >::free(), LBDatabase::incStep(), HybridBaseLB::levelData, CkReduction::max_double, HybridBaseLB::maxLoad, HybridBaseLB::newObjs, MyHierarchyTree::numLevels(), CkLBArgs::syncResume(), BaseLB::theLbdb, HybridBaseLB::thisProxy, and HybridBaseLB::tree.
Referenced by HybridBaseLB::AtSync(), HybridBaseLB::Migrated(), and HybridBaseLB::PropagateInfo().
| void HybridBaseLB::ResumeClients | ( | CkReductionMsg * | msg | ) | [inherited] |
Definition at line 1131 of file HybridBaseLB.C.
| void HybridBaseLB::ResumeClients | ( | int | balancing | ) | [inherited] |
Definition at line 1143 of file HybridBaseLB.C.
References _lb_args, Converse::CkMyPe(), LBDatabase::ClearLoads(), CkLBArgs::debug(), BaseLB::lbName(), LBDatabase::ResumeClients(), HybridBaseLB::start_lb_time, BaseLB::step(), and BaseLB::theLbdb.
| void HybridBaseLB::work | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Reimplemented in HybridLB.
Definition at line 1162 of file HybridBaseLB.C.
References Converse::CkMyPe().
Referenced by HybridBaseLB::Strategy().
| LBMigrateMsg * HybridBaseLB::createMigrateMsg | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Definition at line 1169 of file HybridBaseLB.C.
References _lb_args, MigrateInfo::async_arrival, LDObjData::asyncArrival, HybridBaseLB::LevelData::children, Converse::CkMyPe(), HybridBaseLB::currentLevel, MigrateInfo::from_pe, BaseLB::LDStats::from_proc, LDObjData::handle, _LDObjid::id, CkVec< T >::insertAtEnd(), CkVec< T >::length(), LBMigrateMsg::level, HybridBaseLB::levelData, LBMigrateMsg::moves, msg, LBMigrateMsg::n_moves, BaseLB::LDStats::n_objs, HybridBaseLB::LevelData::nChildren, BaseLB::LDStats::nprocs(), MigrateInfo::obj, BaseLB::LDStats::objData, LDObjHandle::objID(), HybridBaseLB::LevelData::outObjs, HybridBaseLB::printSummary(), CkLBArgs::printSummary(), CkVec< T >::size(), MigrateInfo::to_pe, and BaseLB::LDStats::to_proc.
Referenced by HybridBaseLB::Strategy().
| LBMigrateMsg * HybridBaseLB::createMigrateMsg | ( | CkVec< MigrateInfo * > & | migrateInfo, | |
| int | count | |||
| ) | [protected, inherited] |
Definition at line 1264 of file HybridBaseLB.C.
References _lb_args, HybridBaseLB::currentLevel, MigrateInfo::from_pe, CkVec< T >::insertAtEnd(), CkVec< T >::length(), LBMigrateMsg::level, HybridBaseLB::levelData, LBMigrateMsg::moves, msg, LBMigrateMsg::n_moves, MigrateInfo::obj, HybridBaseLB::LevelData::outObjs, HybridBaseLB::printSummary(), CkLBArgs::printSummary(), CkVec< T >::size(), and MigrateInfo::to_pe.
Definition at line 1296 of file HybridBaseLB.C.
References HybridBaseLB::levelData.
Referenced by HybridBaseLB::buildStats(), and HybridBaseLB::depositLBStatsMessage().
Definition at line 1308 of file HybridBaseLB.C.
References Converse::CkMyPe(), BaseLB::LDStats::computeNonlocalComm(), HybridBaseLB::currentLevel, LBInfo::getInfo(), LBInfo::getSummary(), mem, MyHierarchyTree::numLevels(), HybridBaseLB::thisProxy, HybridBaseLB::totalLoad, HybridBaseLB::tree, and HybridBaseLB::useMem().
Referenced by HybridBaseLB::createMigrateMsg().
| void HybridBaseLB::reportLBQulity | ( | double | mload, | |
| double | mCpuLoad, | |||
| double | totalload, | |||
| int | nmsgs, | |||
| double | bytesentry | |||
| ) | [inherited] |
Definition at line 1332 of file HybridBaseLB.C.
References Converse::CkMyPe(), HybridBaseLB::maxCommBytes, HybridBaseLB::maxCommCount, HybridBaseLB::maxCpuLoad, HybridBaseLB::maxLoad, MyHierarchyTree::numNodes(), BaseLB::step(), HybridBaseLB::totalLoad, and HybridBaseLB::tree.
| void HybridBaseLB::reportLBMem | ( | double | mem | ) | [inherited] |
Definition at line 1354 of file HybridBaseLB.C.
References Converse::CkMyPe(), HybridBaseLB::maxMem, MyHierarchyTree::numLevels(), MyHierarchyTree::numNodes(), BaseLB::step(), and HybridBaseLB::tree.
| int HybridBaseLB::useMem | ( | ) | [protected, virtual, inherited] |
Reimplemented from BaseLB.
Definition at line 1367 of file HybridBaseLB.C.
References HybridBaseLB::levelData, HybridBaseLB::newObjs, and CkVec< T >::size().
Referenced by HybridBaseLB::Loadbalancing(), and HybridBaseLB::printSummary().
| HybridLB::~HybridLB | ( | ) | [inherited] |
| void HybridLB::work | ( | LDStats * | stats | ) | [protected, virtual, inherited] |
Reimplemented from HybridBaseLB.
Definition at line 50 of file HybridLB.C.
References HybridBaseLB::currentLevel, HybridLB::greedy, HybridBaseLB::levelData, HybridLB::refine, and CentralLB::work().
| LBCommData * LBCommTable::HashInsert | ( | const LBCommData & | data | ) | [inherited] |
Definition at line 25 of file LBComm.C.
References CmiPrintf(), LBCommTable::cur_sz, LBCommData::hash(), LBCommTable::in_use, LBCommTable::InUse, LBCommTable::nil, LBCommTable::Resize(), and LBCommTable::state.
Referenced by LBCommTable::HashInsertUnique(), and LBCommTable::Resize().
| LBCommData * LBCommTable::HashSearch | ( | const LBCommData & | data | ) | [inherited] |
Definition at line 48 of file LBComm.C.
References LBCommTable::cur_sz, LBCommData::hash(), LBCommTable::nil, and LBCommTable::state.
Referenced by LBCommTable::HashInsertUnique().
| LBCommData * LBCommTable::HashInsertUnique | ( | const LBCommData & | data | ) | [inherited] |
Definition at line 62 of file LBComm.C.
References LBCommTable::HashInsert(), and LBCommTable::HashSearch().
Referenced by LBDB::MulticastSend(), and LBDB::Send().
| void LBCommTable::Resize | ( | ) | [private, inherited] |
Definition at line 71 of file LBComm.C.
References LBCommTable::cur_sz, LBCommTable::HashInsert(), LBCommTable::InUse, LBCommTable::NewTable(), and LBCommTable::state.
Referenced by LBCommTable::HashInsert().
| CmiBool LBCommData::equal | ( | const LBCommData & | _d2 | ) | const [inherited] |
Definition at line 86 of file LBComm.C.
References CmiFalse, LBCommData::destObj, LBCommData::from_proc(), LDObjIDEqual(), LDOMidEqual(), LDObjHandle::objID(), LDObjHandle::omID(), LBCommData::src_proc, and LBCommData::srcObj.
| int LBCommData::compute_key | ( | ) | [private, inherited] |
Definition at line 99 of file LBComm.C.
References LBCommData::destObj, LBCommData::from_proc(), _LDCommDesc::get_destObj(), _LDCommDesc::get_destObjs(), _LDCommDesc::get_type(), _LDObjid::id, LDObjHandle::id, _LDOMid::id, idx, _ckGroupID::idx, _LDObjKey::objID(), _LDObjKey::omID(), LDObjHandle::omID(), _LDCommDesc::proc(), LBCommData::src_proc, and LBCommData::srcObj.
Referenced by LBCommData::LBCommData().
Definition at line 149 of file LBComm.C.
References LBCommData::key().
Referenced by LBCommTable::HashInsert(), and LBCommTable::HashSearch().
| void LBCommTable::GetCommData | ( | LDCommData * | data | ) | [inherited] |
Definition at line 163 of file LBComm.C.
References LDCommData::bytes, LDCommData::clearHash(), LBCommTable::cur_sz, _LDCommDesc::destObj, LBCommTable::InUse, LDCommData::messages, _LDObjKey::objID(), _LDObjKey::omID(), LDCommData::receiver, LDCommData::sender, LDCommData::src_proc, and LBCommTable::state.
Referenced by LBDB::GetCommData().
| LBDBInit::LBDBInit | ( | CkArgMsg * | m | ) | [inherited] |
Definition at line 118 of file LBDatabase.C.
References CmiPrintf(), LBDBRegistry::compile_lbs, createLoadBalancer(), LBSimulation::doSimulation, LBDBRegistry::runtime_lbs, and CkVec< T >::size().
| void LBDatabase::initnodeFn | ( | void | ) | [static, inherited] |
Definition at line 317 of file LBDatabase.C.
References _expectedLoad, LBDatabase::avail_vector, Converse::CkNumPes(), and CmiCreateLock().
| void LBDatabase::init | ( | void | ) | [private, inherited] |
Definition at line 331 of file LBDatabase.C.
References LDCreate(), LBDatabase::manualOn, LBDatabase::myLDHandle, LBDatabase::mystep, LBDatabase::new_ld_balancer, LBDatabase::nloadbalancers, and LBDatabase::TurnManualLBOn().
Referenced by LBDatabase::LBDatabase().
| LBDatabase::LastLBInfo::LastLBInfo | ( | ) | [inherited] |
Definition at line 344 of file LBDatabase.C.
References _expectedLoad, and LBDatabase::LastLBInfo::expectedLoad.
| void LBDatabase::get_avail_vector | ( | char * | bitmap | ) | [inherited] |
Definition at line 349 of file LBDatabase.C.
References LBDatabase::avail_vector, and Converse::CkNumPes().
Referenced by CentralLB::BuildStatsMsg(), get_avail_vector(), and CentralLB::LoadBalance().
| void LBDatabase::set_avail_vector | ( | char * | bitmap, | |
| int | new_ld = -1 | |||
| ) | [inherited] |
Definition at line 360 of file LBDatabase.C.
References LBDatabase::avail_vector, Converse::CkNumPes(), and LBDatabase::new_ld_balancer.
Referenced by CentralLB::ProcessReceiveMigration(), CentralLB::ReceiveStats(), and set_avail_vector().
| int LBDatabase::getLoadbalancerTicket | ( | ) | [inherited] |
Definition at line 382 of file LBDatabase.C.
References LBDatabase::loadbalancers, LBDatabase::nloadbalancers, and CkVec< T >::resize().
Referenced by BaseLB::pup().
Definition at line 390 of file LBDatabase.C.
References Converse::CkMyPe(), CmiAbort(), CmiPrintf(), LBDatabase::loadbalancers, LBDatabase::nloadbalancers, and CkVec< T >::resize().
Referenced by BaseLB::initLB().
| void LBDatabase::nextLoadbalancer | ( | int | seq | ) | [inherited] |
Definition at line 407 of file LBDatabase.C.
References LBDatabase::loadbalancers, CkLBArgs::loop(), and LBDatabase::nloadbalancers.
Referenced by CentralLB::CheckMigrationComplete().
| const char * LBDatabase::loadbalancer | ( | int | seq | ) | [inherited] |
Definition at line 426 of file LBDatabase.C.
References LBDBRegistry::compile_lbs, CkVec< T >::length(), and LBDBRegistry::runtime_lbs.
| void LBDatabase::pup | ( | PUP::er & | p | ) | [virtual, inherited] |
Reimplemented from IrrGroup.
Definition at line 437 of file LBDatabase.C.
References LBDatabase::avail_vector, Converse::CkNumPes(), CmiLock(), CmiUnlock(), PUP::er::isUnpacking(), LBDatabase::mystep, LBDatabase::nloadbalancers, p, and IrrGroup::pup().
| void LBDatabase::EstObjLoad | ( | const LDObjHandle & | h, | |
| double | cpuload | |||
| ) | [inherited] |
Definition at line 459 of file LBDatabase.C.
References LDHandle::handle, LBDB::LbObj(), LDOMHandle::ldb, LDObjHandle::omhandle, and LBObj::setTiming().
Referenced by CkLocRec_local::setObjTime().
| void LBDB::batsyncer::gotoSync | ( | void * | bs | ) | [static, private, inherited] |
Definition at line 21 of file LBDBManager.C.
References LBDB::AtLocalBarrier(), LBDB::batsyncer::BH, LBDB::batsyncer::db, and s.
Referenced by LBDB::batsyncer::resumeFromSync().
| void LBDB::batsyncer::resumeFromSync | ( | void * | bs | ) | [static, private, inherited] |
Definition at line 27 of file LBDBManager.C.
References CcdCallFnAfterOnPE(), Converse::CkMyPe(), CmiWallTimer(), LBDB::batsyncer::gotoSync(), LBDB::batsyncer::nextT, LBDB::batsyncer::period, and s.
Referenced by LBDB::batsyncer::init().
Definition at line 42 of file LBDBManager.C.
References LBDB::AddLocalBarrierClient(), LBDB::batsyncer::BH, CmiWallTimer(), LBDB::batsyncer::db, LBDB::batsyncer::nextT, LBDB::batsyncer::period, and LBDB::batsyncer::resumeFromSync().
Referenced by LBDB::LBDB().
| LBDB::LBDB | ( | ) | [inherited] |
Definition at line 57 of file LBDBManager.C.
References _lb_args, LBDB::batsync, CmiFalse, LBDB::commTable, LBDB::batsyncer::init(), CkLBArgs::lbperiod(), LBDB::obj_cputime, LBDB::obj_running, LBDB::obj_walltime, LBDB::objCount, LBDB::omCount, LBDB::oms_registering, LBDB::predictCBFn, LBDB::startLBFn_count, and LBDB::statsAreOn.
| LDOMHandle LBDB::AddOM | ( | LDOMid | _userID, | |
| void * | _userData, | |||
| LDCallbacks | _callbacks | |||
| ) | [inherited] |
Definition at line 72 of file LBDBManager.C.
References LBOM::DepositHandle(), LDOMHandle::handle, LDHandle::handle, LDOMHandle::id, CkVec< T >::insertAtEnd(), LDOMHandle::ldb, CkVec< T >::length(), LBDB::omCount, and LBDB::oms.
Referenced by LDRegisterOM().
| LDObjHandle LBDB::AddObj | ( | LDOMHandle | _h, | |
| LDObjid | _id, | |||
| void * | _userData, | |||
| CmiBool | _migratable | |||
| ) | [inherited] |
Definition at line 95 of file LBDBManager.C.
References _BgOutOfCoreFlag, LBObj::DepositHandle(), LDObjHandle::handle, LDObjHandle::id, CkVec< T >::insert(), CkVec< T >::insertAtEnd(), CkVec< T >::length(), LBDB::objCount, LBDB::objs, and LDObjHandle::omhandle.
Referenced by LDRegisterObj().
| void LBDB::UnregisterObj | ( | LDObjHandle | _h | ) | [inherited] |
Definition at line 148 of file LBDBManager.C.
References _BgOutOfCoreFlag, LDObjHandle::handle, and LBDB::objs.
Referenced by LDUnregisterObj().
| void LBDB::RegisteringObjects | ( | LDOMHandle | _h | ) | [inherited] |
Definition at line 168 of file LBDBManager.C.
References CmiTrue, LDOMHandle::handle, _LDOMid::id, LDOMHandle::id, _ckGroupID::idx, LBDB::localBarrier, LBDB::oms, LBDB::oms_registering, LBOM::RegisteringObjs(), LBOM::SetRegisteringObjs(), and LocalBarrier::TurnOff().
Referenced by LDRegisteringObjects(), and CentralLB::SendStats().
| void LBDB::DoneRegisteringObjects | ( | LDOMHandle | _h | ) | [inherited] |
Definition at line 187 of file LBDBManager.C.
References CmiFalse, LDOMHandle::handle, _LDOMid::id, LDOMHandle::id, _ckGroupID::idx, LBDB::localBarrier, LBDB::oms, LBDB::oms_registering, LBOM::RegisteringObjs(), LBOM::SetRegisteringObjs(), and LocalBarrier::TurnOn().
Referenced by CentralLB::CheckMigrationComplete(), and LDDoneRegisteringObjects().
| void LBDB::Send | ( | const LDOMHandle & | destOM, | |
| const LDObjid & | destid, | |||
| unsigned int | bytes, | |||
| int | destObjProc | |||
| ) | [inherited] |
Definition at line 207 of file LBDBManager.C.
References LBCommData::addMessage(), Converse::CkMyPe(), LBDB::commTable, LBCommTable::HashInsertUnique(), LDObjHandle::id, LDOMHandle::id, LDObjIDEqual(), LDOMidEqual(), LBDB::obj_running, LDObjHandle::omhandle, and LBDB::RunningObj().
Referenced by LDSend().
| void LBDB::MulticastSend | ( | const LDOMHandle & | destOM, | |
| LDObjid * | destids, | |||
| int | ndests, | |||
| unsigned int | bytes, | |||
| int | nMsgs | |||
| ) | [inherited] |
Definition at line 231 of file LBDBManager.C.
References LBCommData::addMessage(), LBDB::commTable, LBCommTable::HashInsertUnique(), LDOMHandle::id, LBDB::obj_running, and LBDB::RunningObj().
Referenced by LDMulticastSend().
| void LBDB::ClearLoads | ( | void | ) | [inherited] |
Definition at line 245 of file LBDBManager.C.
References LBMachineUtil::Clear(), LBDB::commTable, LDObjData::cpuTime, LBObj::data, LBObj::lastCpuTime, LBObj::lastWallTime, LBDB::machineUtil, LBDB::obj_cputime, LBDB::obj_walltime, LBDB::objCount, LBDB::objs, and LDObjData::wallTime.
Referenced by controlPointManager::gotoNextPhase(), and LDClearLoads().
| int LBDB::ObjDataCount | ( | ) | [inherited] |
Definition at line 273 of file LBDBManager.C.
References _lb_args, CkLBArgs::migObjOnly(), LBDB::objCount, and LBDB::objs.
Referenced by LDGetObjDataSz(), and LBDB::useMem().
| void LBDB::GetObjData | ( | LDObjData * | data | ) | [inherited] |
Definition at line 290 of file LBDBManager.C.
References _lb_args, LBObj::data, CkVec< T >::length(), CkLBArgs::migObjOnly(), LDObjData::migratable, LBObj::ObjData(), and LBDB::objs.
Referenced by LDGetObjData().
| int LBDB::Migrate | ( | LDObjHandle | h, | |
| int | dest | |||
| ) | [inherited] |
Definition at line 308 of file LBDBManager.C.
References Converse::CkMyPe(), CmiPrintf(), LDObjHandle::handle, LBOM::Migrate(), LBDB::objCount, LBDB::objs, and LBDB::oms.
Referenced by LDMigrate().
| void LBDB::Migrated | ( | LDObjHandle | h, | |
| int | waitBarrier = 1 | |||
| ) | [inherited] |
Definition at line 327 of file LBDBManager.C.
References LBDB::MigrateCB::data, LBDB::MigrateCB::fn, LBDB::migrateCBList, and LBDB::MigrateCB::on.
Referenced by LDMigrated().
| int LBDB::NotifyMigrated | ( | LDMigratedFn | fn, | |
| void * | data | |||
| ) | [inherited] |
Definition at line 341 of file LBDBManager.C.
References LBDB::MigrateCB::data, LBDB::MigrateCB::fn, LBDB::migrateCBList, and LBDB::MigrateCB::on.
Referenced by LDNotifyMigrated().
| void LBDB::RemoveNotifyMigrated | ( | int | handle | ) | [inherited] |
| int LBDB::AddStartLBFn | ( | LDStartLBFn | fn, | |
| void * | data | |||
| ) | [inherited] |
Definition at line 360 of file LBDBManager.C.
References LBDB::StartLBCB::data, LBDB::StartLBCB::fn, LBDB::StartLBCB::on, LBDB::startLBFn_count, and LBDB::startLBFnList.
Referenced by LDAddStartLBFn().
| void LBDB::RemoveStartLBFn | ( | LDStartLBFn | fn | ) | [inherited] |
Definition at line 373 of file LBDBManager.C.
References LBDB::StartLBCB::fn, LBDB::startLBFn_count, and LBDB::startLBFnList.
Referenced by LDRemoveStartLBFn().
| void LBDB::StartLB | ( | ) | [inherited] |
Definition at line 386 of file LBDBManager.C.
References CmiAbort(), LBDB::StartLBCB::data, LBDB::StartLBCB::fn, LBDB::StartLBCB::on, LBDB::startLBFn_count, and LBDB::startLBFnList.
Referenced by LDStartLB().
| int LBDB::AddMigrationDoneFn | ( | LDMigrationDoneFn | fn, | |
| void * | data | |||
| ) | [inherited] |
Definition at line 397 of file LBDBManager.C.
References LBDB::MigrationDoneCB::data, LBDB::MigrationDoneCB::fn, and LBDB::migrationDoneCBList.
Referenced by LDAddMigrationDoneFn().
| void LBDB::RemoveMigrationDoneFn | ( | LDMigrationDoneFn | fn | ) | [inherited] |
Definition at line 407 of file LBDBManager.C.
References LBDB::MigrationDoneCB::fn, and LBDB::migrationDoneCBList.
Referenced by LDRemoveMigrationDoneFn().
| void LBDB::MigrationDone | ( | void | ) | [inherited] |
Definition at line 418 of file LBDBManager.C.
References LBDB::MigrationDoneCB::data, LBDB::MigrationDoneCB::fn, and LBDB::migrationDoneCBList.
Referenced by LDMigrationDone().
| void LBDB::SetupPredictor | ( | LDPredictModelFn | on, | |
| LDPredictWindowFn | onWin, | |||
| LDPredictFn | off, | |||
| LDPredictModelFn | change, | |||
| void * | data | |||
| ) | [inherited] |
Definition at line 425 of file LBDBManager.C.
References LBDB::PredictCB::change, LBDB::PredictCB::data, LBDB::PredictCB::off, LBDB::PredictCB::on, LBDB::PredictCB::onWin, and LBDB::predictCBFn.
Referenced by CentralLB::initLB().
| void LBDB::BackgroundLoad | ( | LBRealType * | walltime, | |
| LBRealType * | cputime | |||
| ) | [inherited] |
Definition at line 435 of file LBDBManager.C.
References LBDB::IdleTime(), LBDB::obj_cputime, LBDB::obj_walltime, and LBDB::TotalTime().
Referenced by LDBackgroundLoad().
| void LBDB::GetTime | ( | LBRealType * | total_walltime, | |
| LBRealType * | total_cputime, | |||
| LBRealType * | idletime, | |||
| LBRealType * | bg_walltime, | |||
| LBRealType * | bg_cputime | |||
| ) | [inherited] |
Definition at line 453 of file LBDBManager.C.
References LBDB::IdleTime(), LBDB::obj_cputime, LBDB::obj_walltime, and LBDB::TotalTime().
Referenced by LDGetTime().
| void LBDB::DumpDatabase | ( | void | ) | [inherited] |
Definition at line 470 of file LBDBManager.C.
References CmiPrintf(), LBDB::objCount, and LBDB::omCount.
Referenced by LDDumpDatabase().
| int LBDB::useMem | ( | ) | [inherited] |
Definition at line 478 of file LBDBManager.C.
References LBDB::commTable, CkVec< T >::length(), LBDB::migrateCBList, LBDB::ObjDataCount(), LBDB::oms, size, LBDB::startLBFnList, and LBCommTable::useMem().
Referenced by LDMemusage().
| LDBarrierClient LocalBarrier::AddClient | ( | LDResumeFn | fn, | |
| void * | data | |||
| ) | [inherited] |
Definition at line 488 of file LBDBManager.C.
References _BgOutOfCoreFlag, LocalBarrier::client_count, LocalBarrier::clients, LocalBarrier::cur_refcount, LocalBarrier::client::data, LocalBarrier::first_free_client_slot, LocalBarrier::client::fn, LocalBarrier::client::refcount, and LDBarrierClient::serial.
Referenced by LBDB::AddLocalBarrierClient().
| void LocalBarrier::RemoveClient | ( | LDBarrierClient | h | ) | [inherited] |
Definition at line 524 of file LBDBManager.C.
References _BgOutOfCoreFlag, LocalBarrier::client_count, LocalBarrier::clients, LocalBarrier::first_free_client_slot, and LDBarrierClient::serial.
Referenced by LBDB::RemoveLocalBarrierClient().
| LDBarrierReceiver LocalBarrier::AddReceiver | ( | LDBarrierFn | fn, | |
| void * | data | |||
| ) | [inherited] |
Definition at line 550 of file LBDBManager.C.
References LocalBarrier::receiver::data, LocalBarrier::receiver::fn, LocalBarrier::receiver::on, LocalBarrier::receivers, and LDBarrierReceiver::serial.
Referenced by LBDB::AddLocalBarrierReceiver().
| void LocalBarrier::RemoveReceiver | ( | LDBarrierReceiver | h | ) | [inherited] |
Definition at line 566 of file LBDBManager.C.
References LocalBarrier::receivers, and LDBarrierReceiver::serial.
Referenced by LBDB::RemoveLocalBarrierReceiver().
| void LocalBarrier::TurnOnReceiver | ( | LDBarrierReceiver | h | ) | [inherited] |
Definition at line 576 of file LBDBManager.C.
References LocalBarrier::receivers, and LDBarrierReceiver::serial.
Referenced by LBDB::TurnOnBarrierReceiver().
| void LocalBarrier::TurnOffReceiver | ( | LDBarrierReceiver | h | ) | [inherited] |
Definition at line 585 of file LBDBManager.C.
References LocalBarrier::receivers, and LDBarrierReceiver::serial.
Referenced by LBDB::TurnOffBarrierReceiver().
| void LocalBarrier::AtBarrier | ( | LDBarrierClient | h | ) | [inherited] |
Definition at line 594 of file LBDBManager.C.
References LocalBarrier::at_count, LocalBarrier::CheckBarrier(), LocalBarrier::clients, refcount, and LDBarrierClient::serial.
Referenced by LBDB::AtLocalBarrier().
| void LocalBarrier::CheckBarrier | ( | ) | [private, inherited] |
Definition at line 601 of file LBDBManager.C.
References LocalBarrier::at_count, LocalBarrier::CallReceivers(), LocalBarrier::client_count, LocalBarrier::clients, CmiFalse, CmiTrue, LocalBarrier::cur_refcount, and LocalBarrier::on.
Referenced by LocalBarrier::AtBarrier(), and LocalBarrier::TurnOn().
| void LocalBarrier::CallReceivers | ( | void | ) | [private, inherited] |
Definition at line 627 of file LBDBManager.C.
References CmiFalse, CmiTrue, LocalBarrier::receiver::data, LocalBarrier::receiver::fn, LocalBarrier::receiver::on, LocalBarrier::receivers, and LocalBarrier::ResumeClients().
Referenced by LocalBarrier::CheckBarrier().
| void LocalBarrier::ResumeClients | ( | void | ) | [private, inherited] |
Definition at line 646 of file LBDBManager.C.
References LocalBarrier::clients, and data.
Referenced by LocalBarrier::CallReceivers(), and LBDB::ResumeClients().
| void LBMachineUtil::IdleStart | ( | double | curWallTime | ) | [inline, private, inherited] |
Definition at line 10 of file LBMachineUtil.C.
References LBMachineUtil::start_idle.
Referenced by LBMachineUtil::staticIdleStart().
| void LBMachineUtil::IdleEnd | ( | double | curWallTime | ) | [inline, private, inherited] |
Definition at line 15 of file LBMachineUtil.C.
References LBMachineUtil::on, LBMachineUtil::start_idle, LBMachineUtil::state, and LBMachineUtil::total_idletime.
Referenced by LBMachineUtil::staticIdleEnd().
| void LBMachineUtil::staticIdleStart | ( | LBMachineUtil * | util, | |
| double | curWallTime | |||
| ) | [static, private, inherited] |
Definition at line 24 of file LBMachineUtil.C.
References LBMachineUtil::IdleStart().
Referenced by LBMachineUtil::StatsOn().
| void LBMachineUtil::staticIdleEnd | ( | LBMachineUtil * | util, | |
| double | curWallTime | |||
| ) | [static, private, inherited] |
Definition at line 28 of file LBMachineUtil.C.
References LBMachineUtil::IdleEnd().
Referenced by LBMachineUtil::StatsOn().
| LBMachineUtil::LBMachineUtil | ( | ) | [inherited] |
Definition at line 33 of file LBMachineUtil.C.
References LBMachineUtil::off, LBMachineUtil::start_idle, LBMachineUtil::start_totalcpu, LBMachineUtil::start_totalwall, LBMachineUtil::state, LBMachineUtil::total_cputime, LBMachineUtil::total_idletime, and LBMachineUtil::total_walltime.
| void LBMachineUtil::StatsOn | ( | void | ) | [inherited] |
Definition at line 46 of file LBMachineUtil.C.
References LBMachineUtil::cancel_idleEnd, LBMachineUtil::cancel_idleStart, CcdCallOnConditionKeep(), LBMachineUtil::off, LBMachineUtil::on, LBMachineUtil::start_totalcpu, LBMachineUtil::start_totalwall, LBMachineUtil::state, LBMachineUtil::staticIdleEnd(), LBMachineUtil::staticIdleStart(), LBMachineUtil::total_cputime, and LBMachineUtil::total_walltime.
Referenced by LBDB::TurnStatsOn().
| void LBMachineUtil::StatsOff | ( | ) | [inherited] |
Definition at line 75 of file LBMachineUtil.C.
References LBMachineUtil::cancel_idleEnd, LBMachineUtil::cancel_idleStart, CcdCancelCallOnConditionKeep(), LBMachineUtil::off, LBMachineUtil::on, LBMachineUtil::start_totalcpu, LBMachineUtil::start_totalwall, LBMachineUtil::state, LBMachineUtil::total_cputime, and LBMachineUtil::total_walltime.
Referenced by LBDB::TurnStatsOff().
| void LBMachineUtil::Clear | ( | void | ) | [inherited] |
Definition at line 99 of file LBMachineUtil.C.
References LBMachineUtil::off, LBMachineUtil::start_idle, LBMachineUtil::start_totalcpu, LBMachineUtil::start_totalwall, LBMachineUtil::state, LBMachineUtil::total_cputime, LBMachineUtil::total_idletime, and LBMachineUtil::total_walltime.
Referenced by LBDB::ClearLoads().
| void LBMachineUtil::TotalTime | ( | LBRealType * | walltime, | |
| LBRealType * | cputime | |||
| ) | [inherited] |
Definition at line 126 of file LBMachineUtil.C.
References LBMachineUtil::on, LBMachineUtil::start_totalcpu, LBMachineUtil::start_totalwall, LBMachineUtil::state, LBMachineUtil::total_cputime, and LBMachineUtil::total_walltime.
Referenced by LBDB::TotalTime().
| void LBObj::Clear | ( | void | ) | [inherited] |
Definition at line 18 of file LBObj.C.
References LDObjData::cpuTime, LBObj::data, LDObjData::maxWall, LDObjData::minWall, and LDObjData::wallTime.
Referenced by LBObj::LBObj().
| void LBObj::IncrementTime | ( | LBRealType | walltime, | |
| LBRealType | cputime | |||
| ) | [inherited] |
Definition at line 34 of file LBObj.C.
References LDObjData::cpuTime, LBObj::data, LDObjData::maxWall, LBDB::MeasuredObjTime(), LDObjData::minWall, LBObj::parentDB, and LDObjData::wallTime.
Referenced by LDObjectStop(), and LDObjTime().
| int LBProfit::profitable | ( | BaseLB::ProcStats * | procArray, | |
| int | np | |||
| ) | [virtual, inherited] |
Definition at line 12 of file LBProfit.C.
References BaseLB::ProcStats::bg_walltime, BaseLB::ProcStats::idletime, p, and BaseLB::ProcStats::total_walltime.
| void MetisLB::work | ( | LDStats * | stats | ) | [private, inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
remove duplicate edges from recvFrom
the object load is normalized to an integer between 0 and 256
I intended to follow the instruction in the Metis 4.0 manual which said that METIS_PartGraphKway is preferable to METIS_PartGraphRecursive, when nparts > 8. However, it turned out that there is a bug in METIS_PartGraphKway, and the function seg faulted when nparts = 4 or 9. So right now I just comment that function out and always use the other one.
============================== CLEANUP ================================
Definition at line 45 of file MetisLB.C.
References _lb_args, Converse::CkMyPe(), ObjGraph::convertDecisions(), CkLBArgs::debug(), METIS_PartGraphRecursive(), METIS_WPartGraphKway(), METIS_WPartGraphRecursive(), ProcArray::procs, and ObjGraph::vertices.
| void NborBaseLB::staticMigrated | ( | void * | me, | |
| LDObjHandle | h, | |||
| int | waitBarrier | |||
| ) | [static, inherited] |
Definition at line 15 of file NborBaseLB.C.
References NborBaseLB::Migrated().
Referenced by NborBaseLB::NborBaseLB().
| void NborBaseLB::staticAtSync | ( | void * | data | ) | [static, inherited] |
Definition at line 22 of file NborBaseLB.C.
References NborBaseLB::AtSync().
Referenced by NborBaseLB::NborBaseLB().
| NborBaseLB::NborBaseLB | ( | const CkLBOptions & | opt | ) | [inherited] |
Definition at line 29 of file NborBaseLB.C.
References _lb_args, _lbtopo, Converse::CkMyPe(), Converse::CkNumPes(), CmiAbort(), CmiPrintf(), LBDatabase::CollectStatsOn(), NborBaseLB::LDStats::commData, NborBaseLB::LDStats::from_pe, LBDatabase::getLBDB(), BaseLB::lbname, LBTopoLookup(), NborBaseLB::mig_msgs, NborBaseLB::mig_msgs_expected, NborBaseLB::mig_msgs_received, NborBaseLB::migrates_completed, NborBaseLB::migrates_expected, NborBaseLB::myStats, NborBaseLB::LDStats::n_comm, NborBaseLB::LDStats::n_objs, NborBaseLB::neighbor_pes, BaseLB::notifier, NborBaseLB::LDStats::objData, NborBaseLB::LDStats::pe_speed, LBDatabase::ProcessorSpeed(), NborBaseLB::receive_stats_ready, NborBaseLB::staticAtSync(), NborBaseLB::staticMigrated(), NborBaseLB::stats_msg_count, NborBaseLB::statsDataList, NborBaseLB::statsMsgsList, CkLBArgs::statsOn(), BaseLB::theLbdb, NborBaseLB::thisProxy, and NborBaseLB::topo.
| NborBaseLB::~NborBaseLB | ( | ) | [inherited] |
Definition at line 77 of file NborBaseLB.C.
References _lbdb, LBDatabase::getLBDB(), NborBaseLB::mig_msgs, NborBaseLB::neighbor_pes, BaseLB::notifier, NborBaseLB::statsDataList, NborBaseLB::statsMsgsList, and BaseLB::theLbdb.
| void NborBaseLB::FindNeighbors | ( | ) | [private, inherited] |
Definition at line 94 of file NborBaseLB.C.
References Converse::CkMyPe(), LBTopology::max_neighbors(), NborBaseLB::mig_msgs, NborBaseLB::mig_msgs_expected, NborBaseLB::neighbor_pes, LBTopology::neighbors(), NborBaseLB::statsDataList, NborBaseLB::statsMsgsList, and NborBaseLB::topo.
Referenced by NborBaseLB::AtSync(), NborBaseLB::ReceiveMigration(), and NborBaseLB::ReceiveStats().
| void NborBaseLB::AtSync | ( | void | ) | [inherited] |
Definition at line 112 of file NborBaseLB.C.
References _lb_args, NborBaseLB::AssembleStats(), Converse::CkMyPe(), CkLBArgs::debug(), NborBaseLB::FindNeighbors(), BaseLB::lbName(), NborBaseLB::mig_msgs_expected, NborBaseLB::MigrationDone(), msg, NborBaseLB::neighbor_pes, NborBaseLB::QueryBalanceNow(), NborBaseLB::start_lb_time, BaseLB::step(), and NborBaseLB::thisProxy.
Referenced by NborBaseLB::staticAtSync().
| NLBStatsMsg * NborBaseLB::AssembleStats | ( | ) | [private, inherited] |
Definition at line 145 of file NborBaseLB.C.
References LBDatabase::BackgroundLoad(), NLBStatsMsg::bg_cputime, NborBaseLB::LDStats::bg_cputime, NLBStatsMsg::bg_walltime, NborBaseLB::LDStats::bg_walltime, Converse::CkMyPe(), NLBStatsMsg::commData, NborBaseLB::LDStats::commData, LDObjData::cpuTime, CrnRand(), NLBStatsMsg::from_pe, LBDatabase::GetCommData(), LBDatabase::GetCommDataSz(), LBDatabase::GetObjData(), LBDatabase::GetObjDataSz(), NLBStatsMsg::idletime, NborBaseLB::LDStats::idletime, LBDatabase::IdleTime(), NborBaseLB::LDStats::move, msg, NborBaseLB::myStats, NLBStatsMsg::n_comm, NborBaseLB::LDStats::n_comm, NLBStatsMsg::n_objs, NborBaseLB::LDStats::n_objs, NLBStatsMsg::obj_cputime, NborBaseLB::LDStats::obj_cputime, NLBStatsMsg::obj_walltime, NborBaseLB::LDStats::obj_walltime, NLBStatsMsg::objData, NborBaseLB::LDStats::objData, NborBaseLB::LDStats::pe_speed, NLBStatsMsg::pe_speed, NborBaseLB::QueryMigrateStep(), NLBStatsMsg::serial, BaseLB::step(), BaseLB::theLbdb, NLBStatsMsg::total_cputime, NborBaseLB::LDStats::total_cputime, NLBStatsMsg::total_walltime, NborBaseLB::LDStats::total_walltime, LBDatabase::TotalTime(), and LDObjData::wallTime.
Referenced by NborBaseLB::AtSync().
| void NborBaseLB::Migrated | ( | LDObjHandle | h, | |
| int | waitBarrier | |||
| ) | [inherited] |
Definition at line 225 of file NborBaseLB.C.
References NborBaseLB::migrates_completed, NborBaseLB::migrates_expected, and NborBaseLB::MigrationDone().
Referenced by NborBaseLB::staticMigrated().
| void NborBaseLB::ReceiveStats | ( | CkMarshalledNLBStatsMessage & | m | ) | [inherited] |
Definition at line 235 of file NborBaseLB.C.
References _lb_args, NLBStatsMsg::bg_cputime, NborBaseLB::LDStats::bg_cputime, NLBStatsMsg::bg_walltime, NborBaseLB::LDStats::bg_walltime, Converse::CkMyPe(), NLBStatsMsg::commData, NborBaseLB::LDStats::commData, CkLBArgs::debug(), NborBaseLB::FindNeighbors(), MigrateInfo::from_pe, NborBaseLB::LDStats::from_pe, NLBStatsMsg::from_pe, CkMarshalledNLBStatsMessage::getMessage(), NLBStatsMsg::idletime, NborBaseLB::LDStats::idletime, CkLBArgs::ignoreBgLoad(), BaseLB::lbName(), NborBaseLB::mig_msgs_expected, LBDatabase::Migrate(), LBMigrateMsg::moves, NLBStatsMsg::n_comm, NborBaseLB::LDStats::n_comm, LBMigrateMsg::n_moves, NLBStatsMsg::n_objs, NborBaseLB::LDStats::n_objs, NborBaseLB::neighbor_pes, NborBaseLB::NeighborIndex(), MigrateInfo::obj, NLBStatsMsg::obj_cputime, NborBaseLB::LDStats::obj_cputime, NLBStatsMsg::obj_walltime, NborBaseLB::LDStats::obj_walltime, NLBStatsMsg::objData, NborBaseLB::LDStats::objData, NLBStatsMsg::pe_speed, NborBaseLB::LDStats::pe_speed, NborBaseLB::receive_stats_ready, NborBaseLB::stats_msg_count, NborBaseLB::statsDataList, NborBaseLB::statsMsgsList, NborBaseLB::Strategy(), BaseLB::theLbdb, NborBaseLB::thisProxy, MigrateInfo::to_pe, NLBStatsMsg::total_cputime, NborBaseLB::LDStats::total_cputime, NLBStatsMsg::total_walltime, and NborBaseLB::LDStats::total_walltime.
| void NborBaseLB::ReceiveMigration | ( | LBMigrateMsg * | msg | ) | [inherited] |
Definition at line 318 of file NborBaseLB.C.
References Converse::CkMyPe(), NborBaseLB::FindNeighbors(), MigrateInfo::from_pe, NborBaseLB::mig_msgs, NborBaseLB::mig_msgs_expected, NborBaseLB::mig_msgs_received, NborBaseLB::migrates_completed, NborBaseLB::migrates_expected, NborBaseLB::MigrationDone(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, NborBaseLB::neighbor_pes, and MigrateInfo::to_pe.
| void NborBaseLB::MigrationDone | ( | int | balancing | ) | [inherited] |
Definition at line 361 of file NborBaseLB.C.
References _lb_args, Converse::CkMyPe(), LBDatabase::ClearLoads(), LBDatabase::incStep(), NborBaseLB::migrates_completed, NborBaseLB::migrates_expected, CkReduction::sum_int, CkLBArgs::syncResume(), BaseLB::theLbdb, and NborBaseLB::thisProxy.
Referenced by NborBaseLB::AtSync(), NborBaseLB::Migrated(), and NborBaseLB::ReceiveMigration().
| void NborBaseLB::ResumeClients | ( | CkReductionMsg * | msg | ) | [inherited] |
Definition at line 383 of file NborBaseLB.C.
| void NborBaseLB::ResumeClients | ( | int | balancing | ) | [inherited] |
Definition at line 389 of file NborBaseLB.C.
References _lb_args, Converse::CkMyPe(), CkLBArgs::debug(), BaseLB::lbName(), LBDatabase::ResumeClients(), NborBaseLB::start_lb_time, BaseLB::step(), and BaseLB::theLbdb.
| LBMigrateMsg * NborBaseLB::Strategy | ( | LDStats * | stats, | |
| int | n_nbrs | |||
| ) | [protected, virtual, inherited] |
Reimplemented in NeighborCommLB, and NeighborLB.
Definition at line 405 of file NborBaseLB.C.
References Converse::CkMyPe(), Converse::CkNumPes(), msg, LBMigrateMsg::n_moves, and sizes.
Referenced by NborBaseLB::ReceiveStats().
Definition at line 425 of file NborBaseLB.C.
References NborBaseLB::mig_msgs_expected, and NborBaseLB::neighbor_pes.
Referenced by NborBaseLB::ReceiveStats().
Definition at line 437 of file NborBaseLB.C.
References NLBStatsMsg::commData, and NLBStatsMsg::objData.
| NLBStatsMsg::NLBStatsMsg | ( | NLBStatsMsg * | s | ) | [inherited] |
Definition at line 442 of file NborBaseLB.C.
References p, NLBStatsMsg::pup(), PUP::sizer::size(), and size.
| NLBStatsMsg::~NLBStatsMsg | ( | ) | [inherited] |
Definition at line 462 of file NborBaseLB.C.
References NLBStatsMsg::commData, and NLBStatsMsg::objData.
| void NLBStatsMsg::pup | ( | PUP::er & | p | ) | [inherited] |
Definition at line 467 of file NborBaseLB.C.
References NLBStatsMsg::bg_cputime, NLBStatsMsg::bg_walltime, NLBStatsMsg::commData, NLBStatsMsg::from_pe, NLBStatsMsg::idletime, PUP::er::isUnpacking(), NLBStatsMsg::n_comm, NLBStatsMsg::n_objs, NLBStatsMsg::objData, NLBStatsMsg::pe_speed, NLBStatsMsg::serial, NLBStatsMsg::total_cputime, and NLBStatsMsg::total_walltime.
Referenced by NLBStatsMsg::NLBStatsMsg(), and CkMarshalledNLBStatsMessage::pup().
| CkMarshalledNLBStatsMessage::~CkMarshalledNLBStatsMessage | ( | ) | [inherited] |
| void CkMarshalledNLBStatsMessage::pup | ( | PUP::er & | p | ) | [inherited] |
Definition at line 495 of file NborBaseLB.C.
References PUP::er::isPacking(), PUP::er::isUnpacking(), CkMarshalledNLBStatsMessage::msg, and NLBStatsMsg::pup().
| LBMigrateMsg * NeighborCommLB::Strategy | ( | NborBaseLB::LDStats * | stats, | |
| int | n_nbrs | |||
| ) | [private, virtual, inherited] |
Reimplemented from NborBaseLB.
Definition at line 25 of file NeighborCommLB.C.
References _lb_debug, _lbtopo, Converse::CkMyPe(), Converse::CkNumPes(), CmiAbort(), CmiPrintf(), BaseLB::LDStats::commData, LBTopology::coordinate_difference(), maxHeap::deleteMax(), diff, MigrateInfo::from_pe, NborBaseLB::LDStats::from_pe, LBTopology::get_dimension(), LBTopology::get_processor_coordinates(), InfoRecord::Id, NborBaseLB::LDStats::idletime, maxHeap::insert(), CkVec< T >::insertAtEnd(), LBTopoLookup(), CkVec< T >::length(), InfoRecord::load, LBMigrateMsg::moves, msg, NborBaseLB::myStats, BaseLB::LDStats::n_comm, LBMigrateMsg::n_moves, BaseLB::LDStats::n_objs, NeighborCommLB::neighbors(), maxHeap::numElements(), MigrateInfo::obj, BaseLB::LDStats::objData, NborBaseLB::LDStats::pe_speed, printoutTopo(), MigrateInfo::to_pe, NborBaseLB::topo, and NborBaseLB::LDStats::total_walltime.
| LBMigrateMsg * NeighborLB::Strategy | ( | NborBaseLB::LDStats * | stats, | |
| int | n_nbrs | |||
| ) | [private, virtual, inherited] |
Reimplemented from NborBaseLB.
Definition at line 19 of file NeighborLB.C.
References _lb_args, Converse::CkMyPe(), Converse::CkNumPes(), CmiFalse, CmiTrue, CkLBArgs::debug(), maxHeap::deleteMax(), minHeap::deleteMin(), MigrateInfo::from_pe, NborBaseLB::LDStats::from_pe, InfoRecord::Id, NborBaseLB::LDStats::idletime, maxHeap::insert(), minHeap::insert(), CkVec< T >::insertAtEnd(), CkVec< T >::length(), InfoRecord::load, LBMigrateMsg::moves, msg, NborBaseLB::myStats, LBMigrateMsg::n_moves, BaseLB::LDStats::n_objs, MigrateInfo::obj, BaseLB::LDStats::objData, p, NborBaseLB::LDStats::pe_speed, MigrateInfo::to_pe, and NborBaseLB::LDStats::total_walltime.
| void NullLB::init | ( | void | ) | [private, inherited] |
Definition at line 59 of file NullLB.C.
References NullLB::staticAtSync(), staticStartLB(), BaseLB::theLbdb, and NullLB::thisProxy.
Referenced by NullLB::NullLB(), and NullLB::pup().
| NullLB::~NullLB | ( | ) | [inherited] |
Definition at line 73 of file NullLB.C.
References _lbdb, LBDatabase::RemoveLocalBarrierReceiver(), LBDatabase::RemoveStartLBFn(), staticStartLB(), and BaseLB::theLbdb.
| void NullLB::staticAtSync | ( | void * | data | ) | [static, inherited] |
if there is other LBs, just ignore return
Definition at line 83 of file NullLB.C.
References NullLB::AtSync().
Referenced by NullLB::init().
| void NullLB::AtSync | ( | void | ) | [inherited] |
Definition at line 93 of file NullLB.C.
References CkAllocSysMsg(), Converse::CkMyPe(), Converse::CmiSyncSendAndFree(), envelope::getTotalsize(), NullLB::thisProxy, and UsrToEnv().
Referenced by NullLB::staticAtSync().
| void NullLB::migrationsDone | ( | void | ) | [inherited] |
Definition at line 116 of file NullLB.C.
References LBDatabase::ResumeClients(), and BaseLB::theLbdb.
Referenced by migrationDone().
| ObjGraph::ObjGraph | ( | int | count, | |
| BaseLB::LDStats * | stats | |||
| ) | [inherited] |
Definition at line 21 of file ObjGraph.C.
References _lb_args, ObjGraph::calc_hashval(), BaseLB::LDStats::complete_flag, ObjGraph::Edge::edge_index, ObjGraph::edgelist, ObjGraph::find_node(), ObjGraph::Edge::from_node, LDCommData::from_proc(), _LDCommDesc::get_destObj(), ObjGraph::hash_max, CkLBArgs::ignoreBgLoad(), ObjGraph::Edge::index, ObjGraph::Node::index, ObjGraph::Node::inEdge, CkLBArgs::migObjOnly(), ObjGraph::n_edges, ObjGraph::Node::n_in, ObjGraph::n_objs, ObjGraph::Node::n_out, ObjGraph::Node::node_index, ObjGraph::node_table, ObjGraph::nodelist, ObjGraph::Node::nxt_hash, ObjGraph::Edge::nxt_in, ObjGraph::Edge::nxt_out, LDObjData::objID(), LDObjData::omID(), ObjGraph::Node::outEdge, ObjGraph::Node::proc, LDCommData::receiver, LDCommData::recv_type(), LDCommData::sender, and ObjGraph::Edge::to_node.
Definition at line 136 of file ObjGraph.C.
References LDCommData::bytes, ObjGraph::Edge::index, and LDCommData::messages.
Definition at line 141 of file ObjGraph.C.
References ObjGraph::hash_max, _LDOMid::id, and _ckGroupID::idx.
Referenced by ObjGraph::find_node(), and ObjGraph::ObjGraph().
| ObjGraph::Node * ObjGraph::find_node | ( | const LDObjKey & | edge_key | ) | [private, inherited] |
Definition at line 150 of file ObjGraph.C.
References ObjGraph::calc_hashval(), ObjGraph::Node::index, LDObjIDEqual(), LDOMidEqual(), ObjGraph::node_table, ObjGraph::Node::nxt_hash, _LDObjKey::objID(), and _LDObjKey::omID().
Referenced by ObjGraph::ObjGraph().
Definition at line 32 of file OrbLB.C.
References _lb_args, BaseLB::ProcStats::bg_walltime, OrbLB::Partition::bkpes, CmiPrintf(), OrbLB::computeLoad, OrbLB::Partition::corner, OrbLB::Partition::count, OrbLB::currentp, CkLBArgs::debug(), OrbLB::VecArray::id, CkLBArgs::ignoreBgLoad(), OrbLB::ComputeLoad::load, OrbLB::Partition::load, n1, n2, OrbLB::nObjs, OrbLB::Partition::origin, OrbLB::partitions, BaseLB::LDStats::procs, CkVec< T >::push_back(), OrbLB::ComputeLoad::refno, OrbLB::refno, OrbLB::Partition::refno, CkVec< T >::resize(), CkVec< T >::size(), OrbLB::statsData, OrbLB::ComputeLoad::v, OrbLB::vArray, OrbLB::XDIR, and OrbLB::ZDIR.
Referenced by OrbLB::work().
Definition at line 153 of file OrbLB.C.
References CmiPrintf(), OrbLB::computeLoad, OrbLB::nObjs, OrbLB::ComputeLoad::tv, and OrbLB::ComputeLoad::v.
Referenced by OrbLB::quicksort().
Definition at line 169 of file OrbLB.C.
References CmiAbort(), OrbLB::computeLoad, OrbLB::VecArray::id, OrbLB::ComputeLoad::tv, and OrbLB::vArray.
Referenced by OrbLB::qsort().
Definition at line 194 of file OrbLB.C.
References OrbLB::sort_partition().
Referenced by OrbLB::quicksort().
| void OrbLB::quicksort | ( | int | x | ) | [private, inherited] |
Definition at line 204 of file OrbLB.C.
References CmiPrintf(), OrbLB::computeLoad, OrbLB::nObjs, OrbLB::qsort(), OrbLB::setVal(), and OrbLB::vArray.
Referenced by OrbLB::work().
| void OrbLB::mapPartitionsToNodes | ( | ) | [private, inherited] |
Definition at line 219 of file OrbLB.C.
References _lb_args, BaseLB::ProcStats::available, BaseLB::ProcStats::bg_walltime, OrbLB::Partition::bkpes, CmiPrintf(), OrbLB::computeLoad, CkLBArgs::debug(), CkLBArgs::ignoreBgLoad(), OrbLB::Partition::mapped, n, OrbLB::Partition::node, OrbLB::npartition, OrbLB::P, OrbLB::partitions, BaseLB::LDStats::procs, OrbLB::refno, and OrbLB::statsData.
Referenced by OrbLB::work().
| void OrbLB::work | ( | LDStats * | stats | ) | [inherited] |
Definition at line 302 of file OrbLB.C.
References _lb_args, BaseLB::ProcStats::available, BaseLB::ProcStats::bg_walltime, OrbLB::Partition::bkpes, Converse::CkMyPe(), CmiAbort(), CmiPrintf(), CmiTrue, OrbLB::computeLoad, OrbLB::Partition::corner, OrbLB::Partition::count, LDObjData::cpuTime, OrbLB::currentp, CkLBArgs::debug(), BaseLB::LDStats::from_proc, OrbLB::VecArray::id, _LDObjid::id, OrbLB::ComputeLoad::id, CkLBArgs::ignoreBgLoad(), OrbLB::Partition::load, OrbLB::ComputeLoad::load, OrbLB::mapPartitionsToNodes(), LDObjData::migratable, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, OrbLB::nObjs, OrbLB::Partition::node, OrbLB::npartition, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, LDObjData::objID(), OrbLB::Partition::origin, OrbLB::P, OrbLB::ComputeLoad::partition, OrbLB::partitions, BaseLB::LDStats::procs, CkVec< T >::push_back(), OrbLB::quicksort(), OrbLB::rec_divide(), OrbLB::refno, OrbLB::Partition::refno, OrbLB::ComputeLoad::refno, CkVec< T >::resize(), CkVec< T >::size(), OrbLB::statsData, BaseLB::LDStats::to_proc, OrbLB::top_partition, CkLBArgs::useCpuTime(), OrbLB::VecArray::v, OrbLB::ComputeLoad::v, OrbLB::vArray, LDObjData::wallTime, OrbLB::XDIR, OrbLB::YDIR, and OrbLB::ZDIR.
| void PhasebyArrayLB::copyStats | ( | BaseLB::LDStats * | stats, | |
| BaseLB::LDStats * | tempStats | |||
| ) | [private, inherited] |
Definition at line 39 of file PhasebyArrayLB.C.
References BaseLB::LDStats::commData, BaseLB::LDStats::from_proc, BaseLB::LDStats::hashSize, BaseLB::LDStats::n_comm, BaseLB::LDStats::n_migrateobjs, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, BaseLB::LDStats::objHash, BaseLB::LDStats::procs, CkVec< T >::resize(), and BaseLB::LDStats::to_proc.
Referenced by PhasebyArrayLB::work().
| void PhasebyArrayLB::updateStats | ( | BaseLB::LDStats * | stats, | |
| BaseLB::LDStats * | tempStats | |||
| ) | [private, inherited] |
Definition at line 70 of file PhasebyArrayLB.C.
References BaseLB::LDStats::hashSize, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, and BaseLB::LDStats::objHash.
Referenced by PhasebyArrayLB::work().
| void PhasebyArrayLB::work | ( | LDStats * | stats | ) | [private, inherited] |
Definition at line 85 of file PhasebyArrayLB.C.
References BaseLB::LDStats::clear(), CmiFalse, CmiTrue, PhasebyArrayLB::copyStats(), CkVec< T >::free(), BaseLB::LDStats::from_proc, PhasebyArrayLB::lb, LDObjData::migratable, PhasebyArrayLB::migratableOMs, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, LDObjData::omID(), PhasebyArrayLB::omids, CkVec< T >::push_back(), PhasebyArrayLB::tempStats, BaseLB::LDStats::to_proc, PhasebyArrayLB::updateStats(), and CentralLB::work().
| void RandCentLB::work | ( | LDStats * | stats | ) | [inherited] |
Definition at line 33 of file RandCentLB.C.
References _lb_args, BaseLB::ProcStats::available, chooseProc(), Converse::CkMyPe(), CmiAbort(), CkLBArgs::debug(), dest, BaseLB::LDStats::from_proc, LDObjData::migratable, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), BaseLB::LDStats::objData, BaseLB::LDStats::procs, and BaseLB::LDStats::to_proc.
| void BQueue::removeComplete | ( | Vertex * | vert | ) | [inherited] |
Definition at line 129 of file RecBipartLB.C.
References Vertex::getVertexId(), BQueue::q, and vhelpers.
Referenced by removeinSwap().
| void BQueue::push | ( | Vertex * | vert | ) | [inherited] |
Definition at line 147 of file RecBipartLB.C.
References Vertex::getVertexId(), BQueue::q, and vhelpers.
Referenced by adjustqueues(), RecursiveBiPart(), removeinSwap(), and swapQ1toQ2().
| RecBipartLB::RecBipartLB | ( | const CkLBOptions & | opt | ) | [inherited] |
| void RecBipartLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
Definition at line 165 of file RecBipartLB.C.
References Converse::CkNumPes(), ObjGraph::convertDecisions(), ProcArray::getAverageLoad(), ProcArray::procs, RecursiveBiPart(), ProcArray::resetTotalLoad(), ObjGraph::vertices, and vhelpers.
| void RecBisectBfLB::work | ( | LDStats * | stats | ) | [private, inherited] |
Definition at line 57 of file RecBisectBfLB.C.
References Converse::CkMyPe(), CmiPrintf(), RecBisectBfLB::convertGraph(), free(), BaseLB::LDStats::from_proc, g_freeGraph(), ObjGraph::GraphNode(), ObjGraph::Node::index, malloc(), PartitionList::max, n, PartitionList::next, PartitionRecord::nodeArray, nodes, PartitionList::partitions, ObjGraph::Node::proc, RecBisectBfLB::recursivePartition(), PartitionRecord::size, BaseLB::LDStats::to_proc, and Graph::V.
Definition at line 116 of file RecBisectBfLB.C.
References E, ObjGraph::EdgeCount(), ObjGraph::Edge::from_node, g_addEdge(), g_finishVertex(), g_initGraph(), g_nextVertex(), ObjGraph::GraphNode(), ObjGraph::LoadOf(), n, ObjGraph::Edge::next_from(), ObjGraph::Edge::next_to(), ObjGraph::NodeCount(), ObjGraph::Edge::to_node, and V.
Referenced by RecBisectBfLB::work().
| void RecBisectBfLB::partitionInTwo | ( | Graph * | g, | |
| int | nodes[], | |||
| int | numNodes, | |||
| int ** | pp1, | |||
| int * | numP1, | |||
| int ** | pp2, | |||
| int * | numP2, | |||
| int | ratio1, | |||
| int | ratio2 | |||
| ) | [private, inherited] |
Definition at line 156 of file RecBisectBfLB.C.
References RecBisectBfLB::addToQ(), bvset_enumerate(), bvset_size(), destroySet(), CkQ< T >::enq(), graph_weightof(), makeEmptySet(), makeSet(), and Graph::V.
Referenced by RecBisectBfLB::recursivePartition().
| int RecBisectBfLB::findNextUnassigned | ( | int | max, | |
| BV_Set * | all, | |||
| BV_Set * | s1, | |||
| BV_Set * | s2 | |||
| ) | [private, inherited] |
Definition at line 224 of file RecBisectBfLB.C.
References bvset_find().
Referenced by RecBisectBfLB::addToQ().
| float RecBisectBfLB::addToQ | ( | IntQueue * | q, | |
| Graph * | g, | |||
| BV_Set * | all, | |||
| BV_Set * | s1, | |||
| BV_Set * | s2 | |||
| ) | [private, inherited] |
Definition at line 236 of file RecBisectBfLB.C.
References bvset_find(), bvset_insert(), CkQ< T >::deq(), CkQ< T >::enq(), RecBisectBfLB::enqChildren(), RecBisectBfLB::findNextUnassigned(), graph_weightof(), CkQ< T >::isEmpty(), V, and Graph::V.
Referenced by RecBisectBfLB::partitionInTwo().
| void RecBisectBfLB::enqChildren | ( | IntQueue * | q, | |
| Graph * | g, | |||
| BV_Set * | all, | |||
| BV_Set * | s1, | |||
| BV_Set * | s2, | |||
| int | node | |||
| ) | [private, inherited] |
Definition at line 261 of file RecBisectBfLB.C.
References bvset_find(), CkQ< T >::enq(), g_getNeighbor(), and g_numNeighbors().
Referenced by RecBisectBfLB::addToQ().
| void RecBisectBfLB::addPartition | ( | PartitionList * | partitions, | |
| int * | nodes, | |||
| int | num | |||
| ) | [private, inherited] |
Definition at line 277 of file RecBisectBfLB.C.
References PartitionList::next, PartitionRecord::nodeArray, PartitionList::partitions, and PartitionRecord::size.
Referenced by RecBisectBfLB::recursivePartition().
| void RecBisectBfLB::printPartitions | ( | PartitionList * | partitions | ) | [private, inherited] |
Definition at line 287 of file RecBisectBfLB.C.
References CmiPrintf(), PartitionList::max, PartitionRecord::nodeArray, PartitionList::partitions, and PartitionRecord::size.
| void RecBisectBfLB::recursivePartition | ( | int | numParts, | |
| Graph * | g, | |||
| int | nodes[], | |||
| int | numNodes, | |||
| PartitionList * | partitions | |||
| ) | [private, inherited] |
Definition at line 301 of file RecBisectBfLB.C.
References RecBisectBfLB::addPartition(), free(), and RecBisectBfLB::partitionInTwo().
Referenced by RecBisectBfLB::work().
| void RefineCommLB::work | ( | LDStats * | stats | ) | [private, inherited] |
Reimplemented from RefineLB.
Definition at line 24 of file RefineCommLB.C.
References Refiner::AllocProcs(), Refiner::FreeProcs(), BaseLB::LDStats::from_proc, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), RefinerComm::Refine(), and BaseLB::LDStats::to_proc.
| void RefineKLB::work | ( | LDStats * | stats | ) | [inherited] |
Definition at line 23 of file RefineKLB.C.
References _lb_args, Refiner::AllocProcs(), Refiner::FreeProcs(), BaseLB::LDStats::from_proc, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), CkLBArgs::percentMovesAllowed(), RefineKLB::performGreedyMoves(), RefinerApprox::Refine(), and BaseLB::LDStats::to_proc.
| void RefineKLB::performGreedyMoves | ( | int | count, | |
| BaseLB::LDStats * | stats, | |||
| int * | from_procs, | |||
| int * | to_procs, | |||
| int | numMoves | |||
| ) | [protected, inherited] |
Definition at line 95 of file RefineKLB.C.
References BaseLB::ProcStats::bg_walltime, c, CmiFalse, maxHeap::deleteMax(), minHeap::deleteMin(), InfoRecord::Id, minHeap::insert(), maxHeap::insert(), InfoRecord::load, BaseLB::LDStats::n_objs, BaseLB::LDStats::objData, and BaseLB::LDStats::procs.
Referenced by RefineKLB::work().
| void RefineLB::work | ( | LDStats * | stats | ) | [inherited] |
Reimplemented in RefineCommLB.
Definition at line 19 of file RefineLB.C.
References _lb_args, Refiner::AllocProcs(), Converse::CkMyPe(), CkLBArgs::debug(), Refiner::FreeProcs(), BaseLB::LDStats::from_proc, BaseLB::LDStats::n_objs, BaseLB::LDStats::nprocs(), Refiner::Refine(), and BaseLB::LDStats::to_proc.
| int * Refiner::AllocProcs | ( | int | count, | |
| BaseLB::LDStats * | stats | |||
| ) | [static, inherited] |
This code is derived from RefineLB.C, and RefineLB.C should be rewritten to use this, so there is no code duplication.
Definition at line 12 of file Refiner.C.
References BaseLB::LDStats::n_objs.
Referenced by RefineLB::work(), RefineKLB::work(), and RefineCommLB::work().
| void Refiner::FreeProcs | ( | int * | bufs | ) | [static, inherited] |
Definition at line 17 of file Refiner.C.
Referenced by RefineLB::work(), RefineKLB::work(), and RefineCommLB::work().
| void Refiner::create | ( | int | count, | |
| BaseLB::LDStats * | stats, | |||
| int * | cur_p | |||
| ) | [protected, inherited] |
Reimplemented in RefinerApprox, and RefinerComm.
Definition at line 22 of file Refiner.C.
References processorInfo::available, processorInfo::backgroundLoad, CmiAbort(), CmiTrue, BaseLB::LDStats::complete_flag, processorInfo::computeLoad, Refiner::computes, processorInfo::computeSet, CrnRand(), computeInfo::id, InfoRecord::Id, InfoRecord::load, LDObjData::migratable, computeInfo::migratable, BaseLB::LDStats::n_objs, Refiner::numAvail, BaseLB::LDStats::objData, LDObjData::objID(), computeInfo::oldProcessor, Refiner::P, processorInfo::pe_speed, computeInfo::processor, Refiner::processors, BaseLB::LDStats::procs, and LDObjData::wallTime.
Referenced by RefinerComm::create(), and Refiner::Refine().
| void Refiner::assign | ( | computeInfo * | c, | |
| int | p | |||
| ) | [protected, inherited] |
Reimplemented in RefinerComm.
Definition at line 65 of file Refiner.C.
References Refiner::processors.
Referenced by RefinerApprox::Refine(), RefinerApprox::refine(), Refiner::Refine(), Refiner::refine(), RefinerApprox::reinitAssignment(), and Refiner::removeComputes().
| void Refiner::assign | ( | computeInfo * | c, | |
| processorInfo * | p | |||
| ) | [protected, inherited] |
Reimplemented in RefinerComm.
Definition at line 70 of file Refiner.C.
References processorInfo::backgroundLoad, processorInfo::computeLoad, processorInfo::computeSet, InfoRecord::Id, Set::insert(), InfoRecord::load, and computeInfo::processor.
| void Refiner::deAssign | ( | computeInfo * | c, | |
| processorInfo * | pRec | |||
| ) | [protected, inherited] |
Reimplemented in RefinerComm.
Definition at line 78 of file Refiner.C.
References processorInfo::backgroundLoad, processorInfo::computeLoad, processorInfo::computeSet, InfoRecord::load, computeInfo::processor, and Set::remove().
Referenced by RefinerApprox::refine(), Refiner::refine(), RefinerApprox::reinitAssignment(), and Refiner::removeComputes().
| void Refiner::computeAverage | ( | ) | [protected, virtual, inherited] |
Reimplemented in RefinerComm.
Definition at line 86 of file Refiner.C.
References Refiner::averageLoad, processorInfo::backgroundLoad, CmiTrue, Refiner::computes, Refiner::numAvail, Refiner::numComputes, Refiner::P, and Refiner::processors.
Referenced by RefinerApprox::multirefine(), Refiner::multirefine(), RefinerApprox::Refine(), and Refiner::Refine().
| double Refiner::computeMax | ( | ) | [protected, inherited] |
Definition at line 99 of file Refiner.C.
References CmiTrue, InfoRecord::load, max(), Refiner::P, and Refiner::processors.
Referenced by RefinerApprox::multirefine(), and Refiner::multirefine().
| int Refiner::isHeavy | ( | processorInfo * | p | ) | [protected, inherited] |
Definition at line 110 of file Refiner.C.
References processorInfo::available, Refiner::averageLoad, CmiTrue, processorInfo::computeSet, InfoRecord::load, Set::numElements(), and Refiner::overLoad.
Referenced by RefinerComm::refine(), and Refiner::refine().
| int Refiner::isLight | ( | processorInfo * | p | ) | [protected, inherited] |
Definition at line 119 of file Refiner.C.
References processorInfo::available, Refiner::averageLoad, CmiTrue, and InfoRecord::load.
Referenced by RefinerComm::refine(), and Refiner::refine().
| void Refiner::removeComputes | ( | ) | [protected, inherited] |
Definition at line 128 of file Refiner.C.
References Refiner::assign(), c, CmiAbort(), CmiFalse, CmiTrue, Refiner::deAssign(), Iterator::id, Refiner::numAvail, Refiner::P, and Refiner::processors.
Referenced by RefinerComm::Refine(), RefinerApprox::Refine(), and Refiner::Refine().
| int Refiner::refine | ( | ) | [protected, virtual, inherited] |
Reimplemented in RefinerComm.
Definition at line 153 of file Refiner.C.
References Refiner::assign(), Refiner::averageLoad, c, processorInfo::computeSet, Refiner::deAssign(), maxHeap::deleteMax(), done, Iterator::id, Set::insert(), maxHeap::insert(), Refiner::isHeavy(), Refiner::isLight(), Set::iterator(), InfoRecord::load, computeInfo::migratable, Set::next(), Refiner::overLoad, p, Refiner::P, Refiner::processors, and Set::remove().
Referenced by RefinerApprox::multirefine(), and Refiner::multirefine().
| int Refiner::multirefine | ( | ) | [protected, inherited] |
Definition at line 249 of file Refiner.C.
References _lb_args, Refiner::averageLoad, CmiPrintf(), Refiner::computeAverage(), Refiner::computeMax(), CkLBArgs::debug(), max(), Refiner::overLoad, and Refiner::refine().
Referenced by RefinerComm::Refine(), RefinerApprox::Refine(), and Refiner::Refine().
| void Refiner::Refine | ( | int | count, | |
| BaseLB::LDStats * | stats, | |||
| int * | cur_p, | |||
| int * | new_p | |||
| ) | [inherited] |
Reimplemented in RefinerComm.
Definition at line 298 of file Refiner.C.
References _lb_args, Refiner::assign(), c, Refiner::computeAverage(), Refiner::computes, Refiner::create(), CkLBArgs::debug(), InfoRecord::Id, Iterator::id, Refiner::multirefine(), BaseLB::LDStats::n_objs, Refiner::numComputes, Refiner::P, computeInfo::processor, Refiner::processors, and Refiner::removeComputes().
Referenced by RefineLB::work().
| void RefinerComm::create | ( | int | count, | |
| BaseLB::LDStats * | _stats, | |||
| int * | cur_p | |||
| ) | [private, inherited] |
This code is derived from RefineLB.C, and RefineLB.C should be rewritten to use this, so there is no code duplication.
Reimplemented from Refiner.
Definition at line 15 of file RefinerComm.C.
References Refiner::computes, Refiner::create(), LDCommData::from_proc(), _LDCommDesc::get_type(), Refiner::numComputes, CkVec< T >::push_back(), LDCommData::receiver, computeInfo::recvmessages, and computeInfo::sendmessages.
Referenced by RefinerComm::Refine().
| void RefinerComm::computeAverage | ( | ) | [private, virtual, inherited] |
Reimplemented from Refiner.
Definition at line 41 of file RefinerComm.C.
References Refiner::averageLoad, processorInfo::backgroundLoad, CmiTrue, RefinerComm::commTable, Refiner::computes, Refiner::numAvail, Refiner::numComputes, RefinerComm::CommTable::overheadOnPe(), Refiner::P, and Refiner::processors.
Referenced by RefinerComm::Refine(), and RefinerComm::refine().
| void RefinerComm::processorCommCost | ( | ) | [private, inherited] |
Definition at line 58 of file RefinerComm.C.
References _lb_args, RefinerComm::commTable, Refiner::computes, LDCommData::from_proc(), idx, RefinerComm::CommTable::increase(), CkLBArgs::migObjOnly(), computeInfo::oldProcessor, and LDCommData::src_proc.
Referenced by RefinerComm::Refine().
| void RefinerComm::assign | ( | computeInfo * | c, | |
| int | p | |||
| ) | [private, inherited] |
Reimplemented from Refiner.
Definition at line 115 of file RefinerComm.C.
References Refiner::processors.
Referenced by RefinerComm::Refine(), and RefinerComm::refine().
| void RefinerComm::assign | ( | computeInfo * | c, | |
| processorInfo * | p | |||
| ) | [private, inherited] |
Reimplemented from Refiner.
Definition at line 120 of file RefinerComm.C.
References processorInfo::backgroundLoad, RefinerComm::Messages::byteRecv, RefinerComm::Messages::byteSent, RefinerComm::commAffinity(), RefinerComm::commTable, processorInfo::computeLoad, processorInfo::computeSet, InfoRecord::Id, RefinerComm::CommTable::increase(), Set::insert(), InfoRecord::load, RefinerComm::Messages::msgRecv, RefinerComm::Messages::msgSent, RefinerComm::objCommCost(), RefinerComm::CommTable::overheadOnPe(), and computeInfo::processor.
| void RefinerComm::deAssign | ( | computeInfo * | c, | |
| processorInfo * | pRec | |||
| ) | [private, inherited] |
Reimplemented from Refiner.
Definition at line 143 of file RefinerComm.C.
References processorInfo::backgroundLoad, RefinerComm::Messages::byteRecv, RefinerComm::Messages::byteSent, RefinerComm::commAffinity(), RefinerComm::commTable, processorInfo::computeLoad, processorInfo::computeSet, InfoRecord::Id, RefinerComm::CommTable::increase(), InfoRecord::load, RefinerComm::Messages::msgRecv, RefinerComm::Messages::msgSent, RefinerComm::objCommCost(), RefinerComm::CommTable::overheadOnPe(), and Set::remove().
Referenced by RefinerComm::refine().
Definition at line 164 of file RefinerComm.C.
References RefinerComm::Messages::byteRecv, LDCommData::bytes, RefinerComm::Messages::byteSent, RefinerComm::Messages::clear(), Refiner::computes, LDCommData::from_proc(), _LDCommDesc::get_destObjs(), _LDCommDesc::get_type(), CkVec< T >::length(), LDCommData::messages, RefinerComm::Messages::msgRecv, RefinerComm::Messages::msgSent, computeInfo::processor, LDCommData::receiver, computeInfo::recvmessages, computeInfo::sendmessages, and LDCommData::src_proc.
Referenced by RefinerComm::assign(), RefinerComm::deAssign(), and RefinerComm::refine().
Definition at line 213 of file RefinerComm.C.
References RefinerComm::Messages::byteRecv, LDCommData::bytes, RefinerComm::Messages::byteSent, RefinerComm::Messages::clear(), Refiner::computes, LDCommData::from_proc(), _LDCommDesc::get_destObjs(), _LDCommDesc::get_type(), CkVec< T >::length(), LDCommData::messages, RefinerComm::Messages::msgRecv, RefinerComm::Messages::msgSent, computeInfo::processor, LDCommData::receiver, computeInfo::recvmessages, computeInfo::sendmessages, and LDCommData::src_proc.
Referenced by RefinerComm::assign(), RefinerComm::deAssign(), and RefinerComm::refine().
| int RefinerComm::refine | ( | ) | [private, virtual, inherited] |
Reimplemented from Refiner.
Definition at line 269 of file RefinerComm.C.
References _lb_args, RefinerComm::assign(), Refiner::averageLoad, c, CmiPrintf(), RefinerComm::commAffinity(), RefinerComm::computeAverage(), processorInfo::computeSet, RefinerComm::Messages::cost(), RefinerComm::deAssign(), CkLBArgs::debug(), maxHeap::deleteMax(), done, InfoRecord::Id, Iterator::id, Set::insert(), maxHeap::insert(), Refiner::isHeavy(), Refiner::isLight(), Set::iterator(), InfoRecord::load, computeInfo::migratable, Set::next(), RefinerComm::objCommCost(), Refiner::overLoad, p, RefinerComm::printLoad(), and Refiner::processors.
| void RefinerComm::Refine | ( | int | count, | |
| BaseLB::LDStats * | stats, | |||
| int * | cur_p, | |||
| int * | new_p | |||
| ) | [inherited] |
Reimplemented from Refiner.
Definition at line 393 of file RefinerComm.C.
References _lb_args, RefinerComm::assign(), Refiner::averageLoad, c, RefinerComm::CommTable::clear(), CmiPrintf(), RefinerComm::commTable, RefinerComm::computeAverage(), Refiner::computes, RefinerComm::create(), CkLBArgs::debug(), InfoRecord::Id, Iterator::id, BaseLB::LDStats::makeCommHash(), Refiner::multirefine(), BaseLB::LDStats::n_objs, Refiner::numComputes, RefinerComm::printLoad(), computeInfo::processor, RefinerComm::processorCommCost(), Refiner::processors, and Refiner::removeComputes().
Referenced by RefineCommLB::work().
| RefinerComm::CommTable::CommTable | ( | int | p | ) | [inherited] |
Definition at line 447 of file RefinerComm.C.
References RefinerComm::CommTable::byteRecvCount, RefinerComm::CommTable::byteSentCount, RefinerComm::CommTable::clear(), RefinerComm::CommTable::count, RefinerComm::CommTable::msgRecvCount, and RefinerComm::CommTable::msgSentCount.
| RefinerComm::CommTable::~CommTable | ( | ) | [inherited] |
Definition at line 457 of file RefinerComm.C.
References RefinerComm::CommTable::byteRecvCount, RefinerComm::CommTable::byteSentCount, RefinerComm::CommTable::msgRecvCount, and RefinerComm::CommTable::msgSentCount.
| void RefinerComm::CommTable::clear | ( | ) | [inherited] |
Definition at line 465 of file RefinerComm.C.
References RefinerComm::CommTable::byteRecvCount, RefinerComm::CommTable::byteSentCount, RefinerComm::CommTable::count, RefinerComm::CommTable::msgRecvCount, and RefinerComm::CommTable::msgSentCount.
Referenced by RefinerComm::CommTable::CommTable(), and RefinerComm::Refine().
Definition at line 471 of file RefinerComm.C.
References RefinerComm::CommTable::byteRecvCount, RefinerComm::CommTable::byteSentCount, RefinerComm::CommTable::msgRecvCount, and RefinerComm::CommTable::msgSentCount.
Referenced by RefinerComm::assign(), RefinerComm::deAssign(), and RefinerComm::processorCommCost().
Definition at line 483 of file RefinerComm.C.
References _lb_args, CkLBArgs::alpha(), CkLBArgs::beeta(), RefinerComm::CommTable::byteRecvCount, RefinerComm::CommTable::byteSentCount, RefinerComm::CommTable::msgRecvCount, and RefinerComm::CommTable::msgSentCount.
Referenced by RefinerComm::assign(), RefinerComm::computeAverage(), and RefinerComm::deAssign().
| void RefineSwapLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
Definition at line 241 of file RefineSwapLB.C.
References _lb_args, Converse::CkMyPe(), ObjGraph::convertDecisions(), CkLBArgs::debug(), endl(), ProcArray::getAverageLoad(), getMax(), ProcArray::procs, refine(), refineSwap(), and ObjGraph::vertices.
| void ScotchLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
remove duplicate edges from recvFrom
the object load is normalized to an integer between 0 and 256
============================== CLEANUP ================================
Definition at line 30 of file ScotchLB.C.
References CmiWallTimer(), ObjGraph::convertDecisions(), free(), malloc(), ProcArray::procs, start_time, and ObjGraph::vertices.
| void ScotchRefineLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
remove duplicate edges from recvFrom
the object load is normalized to an integer between 0 and 256
============================== CLEANUP ================================
Definition at line 27 of file ScotchRefineLB.C.
References ObjGraph::convertDecisions(), free(), malloc(), ProcArray::procs, BaseLB::step(), and ObjGraph::vertices.
| void ScotchTopoLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
remove duplicate edges from recvFrom
the object load is normalized to an integer between 0 and 256
============================== CLEANUP ================================
Definition at line 31 of file ScotchTopoLB.C.
References CmiWallTimer(), ObjGraph::convertDecisions(), free(), TopoManager::getDimNX(), TopoManager::getDimNY(), TopoManager::getDimNZ(), malloc(), ProcArray::procs, start_time, tmgr, and ObjGraph::vertices.
| void TeamLB::work | ( | LDStats * | stats | ) | [inherited] |
METIS function that performs a balanced k-way partitioning of the graph, considering the communication volume (hence the "V" in the name of the function).
extern "C" void METIS_PartGraphRecursive(int*, int*, int*, int*, int*, int*, int*, int*, int*, int*, int*); Load balancing function. It uses METIS in a two step approach. The first step consists in splitting the objects into teams. METIS is able to minimize the communication volume across the teams while balancing the load among the different teams. The second step goes deep in each team to balance the load in the processors belonging to that particular team.
========================== INITIALIZATION =============================
============================= STRATEGY ================================
both object load and number of bytes exchanged are normalized to an integer between 0 and 256
============================== CLEANUP ================================
Definition at line 45 of file TeamLB.C.
References _lb_args, Converse::CkMyPe(), ObjGraph::convertDecisions(), CkLBArgs::debug(), mapping, METIS_PartGraphRecursive(), TeamLB::numberTeams, TeamLB::teamSize, and ObjGraph::vertices.
Reimplemented from CentralLB.
Definition at line 29 of file TempAwareGreedyLB.C.
References CmiTrue.
| void TempAwareGreedyLB::work | ( | LDStats * | stats | ) | [inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
Definition at line 49 of file TempAwareGreedyLB.C.
References _lb_args, Converse::CkMyPe(), ObjGraph::convertDecisions(), CkLBArgs::debug(), ProcInfo::getProcId(), ProcInfo::getTotalLoad(), p, ProcArray::procs, ProcArray::resetTotalLoad(), sort(), and ObjGraph::vertices.
| void TreeMatchLB::work | ( | BaseLB::LDStats * | stats | ) | [inherited] |
========================= 1st Do Load Balancing =======================
========================== INITIALIZATION =============================
============================= STRATEGY ================================
============================== CLEANUP ================================
====================== 2nd do Topology aware mapping ====================
Definition at line 67 of file TreeMatchLB.C.
References _lb_args, build_abe_topology(), build_tree_from_topology(), LDCommData::bytes, calloc(), Converse::CkMyPe(), BaseLB::LDStats::commData, ObjGraph::convertDecisions(), CkLBArgs::debug(), display_topology(), free(), free_topology(), LDCommData::from_proc(), _LDCommDesc::get_destObj(), BaseLB::LDStats::getHash(), ProcInfo::getProcId(), CkVec< T >::getVec(), BaseLB::LDStats::makeCommHash(), malloc(), map_topology_simple(), BaseLB::LDStats::n_comm, BaseLB::LDStats::nprocs(), p, ProcArray::procs, LDCommData::receiver, LDCommData::recv_type(), ProcArray::resetTotalLoad(), LDCommData::sender, sort(), BaseLB::LDStats::to_proc, ProcInfo::totalLoad(), and ObjGraph::vertices.
| void WSLB::staticAtSync | ( | void * | data | ) | [static, inherited] |
| WSLB::WSLB | ( | const CkLBOptions & | opt | ) | [inherited] |
Definition at line 39 of file WSLB.C.
References _lbtopo, Converse::CkMyPe(), Converse::CkNumPes(), CmiAbort(), CmiFalse, CmiPrintf(), LBDatabase::CollectStatsOn(), LBDatabase::getLBDB(), BaseLB::lbname, LBTopoLookup(), WSLB::mig_msgs, WSLB::mig_msgs_received, WSLB::migrates_completed, WSLB::migrates_expected, WSLB::myStats, WSLB::mystep, WSLB::neighbor_pes, BaseLB::notifier, LBDatabase::ProcessorSpeed(), WSLB::receive_stats_ready, WSLB::staticAtSync(), WSLB::staticMigrated(), WSLB::stats_msg_count, WSLB::statsDataList, WSLB::statsMsgsList, BaseLB::theLbdb, WSLB::thisProxy, WSLB::topo, WSLB::usage, WSLB::usage_int_err, and WSLB::vacate.
| WSLB::~WSLB | ( | ) | [inherited] |
Definition at line 89 of file WSLB.C.
References _lbdb, LBDatabase::getLBDB(), WSLB::mig_msgs, WSLB::neighbor_pes, BaseLB::notifier, WSLB::statsDataList, WSLB::statsMsgsList, and BaseLB::theLbdb.
| void WSLB::FindNeighbors | ( | ) | [private, inherited] |
Definition at line 106 of file WSLB.C.
References Converse::CkMyPe(), LBTopology::max_neighbors(), WSLB::mig_msgs, WSLB::mig_msgs_expected, WSLB::neighbor_pes, LBTopology::neighbors(), WSLB::statsDataList, WSLB::statsMsgsList, and WSLB::topo.
Referenced by WSLB::AtSync(), WSLB::ReceiveMigration(), and WSLB::ReceiveStats().
| void WSLB::AtSync | ( | void | ) | [inherited] |
Definition at line 124 of file WSLB.C.
References WSLB::AssembleStats(), Converse::CkMyPe(), WSLB::FindNeighbors(), WSLB::mig_msgs_expected, WSLB::MigrationDone(), msg, WSLB::neighbor_pes, WSLB::QueryBalanceNow(), WSLB::ReceiveStats(), WSLB::start_lb_time, WSLB::step(), and WSLB::thisProxy.
Referenced by WSLB::staticAtSync().
| WSLBStatsMsg * WSLB::AssembleStats | ( | ) | [private, inherited] |
Definition at line 151 of file WSLB.C.
References _lb_args, LBDatabase::BackgroundLoad(), WSLBStatsMsg::bg_cputime, WSLBStatsMsg::bg_walltime, Converse::CkMyPe(), CrnRand(), CkLBArgs::debug(), WSLBStatsMsg::from_pe, LBDatabase::GetCommData(), LBDatabase::GetCommDataSz(), LBDatabase::GetObjData(), LBDatabase::GetObjDataSz(), WSLBStatsMsg::idletime, LBDatabase::IdleTime(), msg, WSLB::myStats, WSLBStatsMsg::obj_cputime, WSLBStatsMsg::obj_walltime, WSLBStatsMsg::proc_speed, WSLBStatsMsg::serial, BaseLB::theLbdb, WSLBStatsMsg::total_cputime, WSLBStatsMsg::total_walltime, LBDatabase::TotalTime(), WSLBStatsMsg::usage, WSLB::usage, WSLB::usage_int_err, WSLB::vacate, and WSLBStatsMsg::vacate_me.
Referenced by WSLB::AtSync().
| void WSLB::Migrated | ( | LDObjHandle | h, | |
| int | waitBarrier | |||
| ) | [inherited] |
Definition at line 233 of file WSLB.C.
References WSLB::migrates_completed, WSLB::migrates_expected, and WSLB::MigrationDone().
Referenced by CreateLBFunc_Def().
| void WSLB::ReceiveStats | ( | WSLBStatsMsg * | m | ) | [inherited] |
Definition at line 245 of file WSLB.C.
References WSLBStatsMsg::bg_cputime, WSLB::LDStats::bg_cputime, WSLBStatsMsg::bg_walltime, WSLB::LDStats::bg_walltime, Converse::CkMyPe(), LBDatabase::ClearLoads(), WSLB::FindNeighbors(), MigrateInfo::from_pe, WSLB::LDStats::from_pe, WSLBStatsMsg::from_pe, WSLBStatsMsg::idletime, WSLB::LDStats::idletime, WSLB::mig_msgs_expected, LBDatabase::Migrate(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, WSLB::neighbor_pes, MigrateInfo::obj, WSLBStatsMsg::obj_cputime, WSLB::LDStats::obj_cputime, WSLBStatsMsg::obj_walltime, WSLB::LDStats::obj_walltime, WSLBStatsMsg::proc_speed, WSLB::LDStats::proc_speed, WSLB::receive_stats_ready, WSLB::stats_msg_count, WSLB::statsDataList, WSLB::statsMsgsList, WSLB::Strategy(), BaseLB::theLbdb, WSLB::thisProxy, MigrateInfo::to_pe, WSLBStatsMsg::total_cputime, WSLB::LDStats::total_cputime, WSLBStatsMsg::total_walltime, WSLB::LDStats::total_walltime, WSLBStatsMsg::usage, WSLB::LDStats::usage, WSLBStatsMsg::vacate_me, and WSLB::LDStats::vacate_me.
Referenced by WSLB::AtSync().
| void WSLB::ReceiveMigration | ( | LBMigrateMsg * | msg | ) | [inherited] |
Definition at line 322 of file WSLB.C.
References Converse::CkMyPe(), WSLB::FindNeighbors(), MigrateInfo::from_pe, WSLB::mig_msgs, WSLB::mig_msgs_expected, WSLB::mig_msgs_received, WSLB::migrates_completed, WSLB::migrates_expected, WSLB::MigrationDone(), LBMigrateMsg::moves, LBMigrateMsg::n_moves, WSLB::neighbor_pes, and MigrateInfo::to_pe.
| void WSLB::MigrationDone | ( | void | ) | [inherited] |
Definition at line 365 of file WSLB.C.
References Converse::CkMyPe(), WSLB::migrates_completed, WSLB::migrates_expected, WSLB::mystep, WSLB::start_lb_time, WSLB::step(), and WSLB::thisProxy.
Referenced by WSLB::AtSync(), WSLB::Migrated(), and WSLB::ReceiveMigration().
| void WSLB::ResumeClients | ( | void | ) | [inherited] |
Definition at line 388 of file WSLB.C.
References Converse::CkMyPe(), CmiFalse, CmiTrue, WSLB::first_step_time, and WSLB::vacate.
Referenced by WSLB::AtSync().
| void ZoltanLB::work | ( | LDStats * | stats | ) | [private, inherited] |
========================== INITIALIZATION =============================
============================= STRATEGY ================================
remove duplicate edges from recvFrom
the object load is normalized to an integer between 0 and 256
Definition at line 66 of file ZoltanLB.C.
References _lb_args, Converse::CkMyPe(), ObjGraph::convertDecisions(), CkLBArgs::debug(), McastSrc::destList, HGRAPH_DATA::edgeGID, HGRAPH_DATA::edgWgt, free(), get_hypergraph(), get_hypergraph_edge_size(), get_hypergraph_edge_wgts(), get_hypergraph_size(), get_number_of_vertices(), get_vertex_list(), malloc(), MPI_COMM_WORLD, HGRAPH_DATA::nborGID, HGRAPH_DATA::nborIndex, HGRAPH_DATA::numAllNbors, HGRAPH_DATA::numMyHEdges, HGRAPH_DATA::numMyVertices, HGRAPH_DATA::ogr, HGRAPH_DATA::parr, ProcArray::procs, ObjGraph::vertices, HGRAPH_DATA::vtxGID, and HGRAPH_DATA::vtxWgt.
const unsigned int doublingPrimes[] [static] |
Definition at line 55 of file ckcausalmlog.C.
Definition at line 224 of file ckcausalmlog.C.
Definition at line 41 of file CentralLB.C.
Definition at line 42 of file CentralLB.C.
Cluster Manager Code, Accpets external bit vectors and then feeds it into the loadbalancer so that programs can shrink and expand.
Definition at line 43 of file CentralLB.C.
Definition at line 219 of file ckcausalmlog.C.
Definition at line 41 of file CentralLB.C.
Definition at line 46 of file CommAwareRefineLB.C.
Definition at line 47 of file CommAwareRefineLB.C.
Definition at line 18 of file LBDatabase.C.
Referenced by _deliverForBocMsg(), CProxy_ArrayBase::ckCreateArray(), BaseLB::initLB(), CentralLB::~CentralLB(), HbmLB::~HbmLB(), HybridBaseLB::~HybridBaseLB(), NborBaseLB::~NborBaseLB(), NullLB::~NullLB(), and WSLB::~WSLB().
Definition at line 25 of file LBDatabase.C.
Referenced by WSLB::AssembleStats(), NborBaseLB::AtSync(), HybridBaseLB::buildStats(), CentralLB::CheckMigrationComplete(), HybridBaseLB::CollectInfo(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerComm::Messages::cost(), CreateLBFunc_Def(), HybridBaseLB::createMigrateMsg(), CentralLB::endMigrationDone(), GridHybridSeedLB::Find_Minimum_PE(), GridHybridLB::Find_Minimum_PE(), GridCommLB::Find_Minimum_PE(), LBInfo::getInfo(), LBDB::GetObjData(), HbmLB::HbmLB(), HybridBaseLB::HybridBaseLB(), GridMetisLB::Initialize_Object_Data(), GridHybridSeedLB::Initialize_Object_Data(), GridHybridLB::Initialize_Object_Data(), CentralLB::initLB(), LBDB::LBDB(), LDMulticastSend(), LDProcessorSpeed(), LDSend(), CentralLB::LoadBalance(), HybridBaseLB::Loadbalancing(), HbmLB::Loadbalancing(), GridHybridSeedLB::Map_NonMigratable_Objects_To_PEs(), GridHybridLB::Map_NonMigratable_Objects_To_PEs(), GridCommLB::Map_NonMigratable_Objects_To_PEs(), OrbLB::mapPartitionsToNodes(), NborBaseLB::MigrationDone(), HybridBaseLB::MigrationDone(), CentralLB::MigrationDone(), MulticastAgent::MulticastAgent(), Refiner::multirefine(), MulticastAgent::my_preferred_procs(), NborBaseLB::NborBaseLB(), HybridBaseLB::NotifyObjectMigrationDone(), LBDB::ObjDataCount(), ObjGraph::ObjGraph(), RefinerComm::CommTable::overheadOnPe(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridSeedLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), CentralLB::preprocess(), LBInfo::print(), HybridBaseLB::ProcessAtSync(), HbmLB::ProcessAtSync(), RefinerComm::processorCommCost(), CentralLB::ProcessReceiveMigration(), HybridBaseLB::PropagateInfo(), BaseLB::ProcStats::pup(), BaseLB::LDStats::pup(), GridMetisLB::QueryBalanceNow(), GridHybridSeedLB::QueryBalanceNow(), GridHybridLB::QueryBalanceNow(), GridCommRefineLB::QueryBalanceNow(), GridCommLB::QueryBalanceNow(), CentralLB::readStatsMsgs(), OrbLB::rec_divide(), NborBaseLB::ReceiveStats(), HybridBaseLB::ReceiveVectorMigration(), RefinerComm::Refine(), RefinerComm::refine(), RefinerApprox::Refine(), Refiner::Refine(), NborBaseLB::ResumeClients(), HybridBaseLB::ResumeClients(), HbmLB::ResumeClients(), CentralLB::ResumeClients(), NeighborLB::Strategy(), HybridBaseLB::Strategy(), CentralLB::Strategy(), HybridBaseLB::TotalObjMigrated(), HybridBaseLB::VectorDone(), VectorStrategy(), ZoltanLB::work(), TreeMatchLB::work(), TopoLB::work(), TopoCentLB::work(), TempAwareGreedyLB::work(), TeamLB::work(), RefineTopoLB::work(), RefineSwapLB::work(), RefineLB::work(), RefineKLB::work(), RandCentLB::work(), OrbLB::work(), MetisLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyLB::work(), GreedyCommLB::work(), GreedyAgentLB::work(), CommLB::work(), CommAwareRefineLB::work(), and CentralLB::writeStatsMsgs().
| int _lb_predict = 0 |
Definition at line 26 of file LBDatabase.C.
Referenced by CentralLB::initLB(), CentralLB::predictorOff(), CentralLB::predictorOn(), and CentralLB::preprocess().
| int _lb_predict_delay = 10 |
Definition at line 27 of file LBDatabase.C.
| int _lb_predict_window = 20 |
Definition at line 28 of file LBDatabase.C.
Referenced by CentralLB::initLB(), and CentralLB::predictorOn().
LBDBRegistry lbRegistry [static] |
Definition at line 87 of file LBDatabase.C.
Definition at line 313 of file LBDatabase.C.
LBRealType* _expectedLoad = NULL [static] |
Definition at line 315 of file LBDatabase.C.
Referenced by LBDatabase::initnodeFn(), and LBDatabase::LastLBInfo::LastLBInfo().
Definition at line 25 of file LBDatabase.C.
Referenced by WSLB::AssembleStats(), NborBaseLB::AtSync(), HybridBaseLB::buildStats(), CentralLB::CheckMigrationComplete(), HybridBaseLB::CollectInfo(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerComm::Messages::cost(), CreateLBFunc_Def(), HybridBaseLB::createMigrateMsg(), CentralLB::endMigrationDone(), GridHybridSeedLB::Find_Minimum_PE(), GridHybridLB::Find_Minimum_PE(), GridCommLB::Find_Minimum_PE(), LBInfo::getInfo(), LBDB::GetObjData(), HbmLB::HbmLB(), HybridBaseLB::HybridBaseLB(), GridMetisLB::Initialize_Object_Data(), GridHybridSeedLB::Initialize_Object_Data(), GridHybridLB::Initialize_Object_Data(), CentralLB::initLB(), LBDB::LBDB(), LDMulticastSend(), LDProcessorSpeed(), LDSend(), CentralLB::LoadBalance(), HybridBaseLB::Loadbalancing(), HbmLB::Loadbalancing(), GridHybridSeedLB::Map_NonMigratable_Objects_To_PEs(), GridHybridLB::Map_NonMigratable_Objects_To_PEs(), GridCommLB::Map_NonMigratable_Objects_To_PEs(), OrbLB::mapPartitionsToNodes(), NborBaseLB::MigrationDone(), HybridBaseLB::MigrationDone(), CentralLB::MigrationDone(), MulticastAgent::MulticastAgent(), Refiner::multirefine(), MulticastAgent::my_preferred_procs(), NborBaseLB::NborBaseLB(), HybridBaseLB::NotifyObjectMigrationDone(), LBDB::ObjDataCount(), ObjGraph::ObjGraph(), RefinerComm::CommTable::overheadOnPe(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridSeedLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), CentralLB::preprocess(), LBInfo::print(), HybridBaseLB::ProcessAtSync(), HbmLB::ProcessAtSync(), RefinerComm::processorCommCost(), CentralLB::ProcessReceiveMigration(), HybridBaseLB::PropagateInfo(), BaseLB::ProcStats::pup(), BaseLB::LDStats::pup(), GridMetisLB::QueryBalanceNow(), GridHybridSeedLB::QueryBalanceNow(), GridHybridLB::QueryBalanceNow(), GridCommRefineLB::QueryBalanceNow(), GridCommLB::QueryBalanceNow(), CentralLB::readStatsMsgs(), OrbLB::rec_divide(), NborBaseLB::ReceiveStats(), HybridBaseLB::ReceiveVectorMigration(), RefinerComm::Refine(), RefinerComm::refine(), RefinerApprox::Refine(), Refiner::Refine(), NborBaseLB::ResumeClients(), HybridBaseLB::ResumeClients(), HbmLB::ResumeClients(), CentralLB::ResumeClients(), NeighborLB::Strategy(), HybridBaseLB::Strategy(), CentralLB::Strategy(), HybridBaseLB::TotalObjMigrated(), HybridBaseLB::VectorDone(), VectorStrategy(), ZoltanLB::work(), TreeMatchLB::work(), TopoLB::work(), TopoCentLB::work(), TempAwareGreedyLB::work(), TeamLB::work(), RefineTopoLB::work(), RefineSwapLB::work(), RefineLB::work(), RefineKLB::work(), RandCentLB::work(), OrbLB::work(), MetisLB::work(), GridMetisLB::work(), GridHybridSeedLB::work(), GridHybridLB::work(), GridCommRefineLB::work(), GridCommLB::work(), GreedyLB::work(), GreedyCommLB::work(), GreedyAgentLB::work(), CommLB::work(), CommAwareRefineLB::work(), and CentralLB::writeStatsMsgs().
Definition at line 26 of file LBDatabase.C.
Referenced by CentralLB::initLB(), CentralLB::predictorOff(), CentralLB::predictorOn(), and CentralLB::preprocess().
Definition at line 27 of file LBDatabase.C.
Definition at line 28 of file LBDatabase.C.
Referenced by CentralLB::initLB(), and CentralLB::predictorOn().
| char* _lbtopo |
Definition at line 106 of file LBDatabase.h.
Referenced by _loadbalancerInit(), CldComputeNeighborData(), CldGraphModuleInit(), LBTOPO_MACRO(), NborBaseLB::NborBaseLB(), NeighborCommLB::Strategy(), TopologyAgent::TopologyAgent(), TopoLB::work(), TopoCentLB::work(), RefineTopoLB::work(), and WSLB::WSLB().
LDOMid LDOMHandle::id [inherited] |
Definition at line 61 of file lbdb.h.
Referenced by LBDB::AddOM(), CentralLB::CheckMigrationComplete(), LBDB::DoneRegisteringObjects(), LBDB::MulticastSend(), LDObjData::omID(), LDObjHandle::omID(), LBDB::RegisteringObjects(), LBDB::Send(), and CentralLB::SendStats().
int LDOMHandle::handle [inherited] |
Definition at line 62 of file lbdb.h.
Referenced by LBDB::AddOM(), LBDB::DoneRegisteringObjects(), LBDB::LbOM(), and LBDB::RegisteringObjects().
LDObjid _LDObjKey::objId [inherited] |
Definition at line 86 of file lbdb.h.
Referenced by _LDObjKey::objID(), _LDObjKey::operator<(), and _LDObjKey::operator==().
LDObjid LDObjHandle::id [inherited] |
Definition at line 108 of file lbdb.h.
Referenced by LBDB::AddObj(), LBCommData::compute_key(), LDObjData::id(), LDObjData::objID(), LBSimulation::PrintDecisions(), and LBDB::Send().
LDObjIndex LDObjHandle::handle [inherited] |
Definition at line 109 of file lbdb.h.
Referenced by LBDB::AddObj(), LBDB::LbObj(), LBDB::Migrate(), HbmLB::ObjMigrated(), LBDB::SetRunningObj(), LBDB::UnregisterObj(), and LBDB::validObjHandle().
LBRealType LDObjData::wallTime [inherited] |
Definition at line 117 of file lbdb.h.
Referenced by NborBaseLB::AssembleStats(), GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), LBObj::Clear(), LBDB::ClearLoads(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerApprox::create(), Refiner::create(), LBObj::DepositHandle(), LBObj::getTime(), controlPointManager::gotoNextPhase(), LBObj::IncrementTime(), BaseLB::LDStats::print(), HbmLB::ReceiveMigrationDelta(), HybridBaseLB::ReceiveVectorMigration(), CentralLB::removeNonMigratable(), LBObj::setTiming(), OrbLB::work(), GreedyLB::work(), GreedyCommLB::work(), and CommLB::work().
LBRealType LDObjData::cpuTime [inherited] |
Definition at line 119 of file lbdb.h.
Referenced by NborBaseLB::AssembleStats(), LBObj::Clear(), LBDB::ClearLoads(), LBObj::DepositHandle(), LBObj::getTime(), controlPointManager::gotoNextPhase(), LBObj::IncrementTime(), BaseLB::LDStats::print(), CentralLB::removeNonMigratable(), LBObj::setTiming(), and OrbLB::work().
LBRealType LDObjData::minWall [inherited] |
LBRealType LDObjData::maxWall [inherited] |
CmiBool LDObjData::migratable [inherited] |
Definition at line 124 of file lbdb.h.
Referenced by GreedyAgentLB::BuildCpuArray(), GreedyAgentLB::BuildObjectArray(), HybridBaseLB::buildStats(), CentralLB::buildStats(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerApprox::create(), Refiner::create(), CentralLB::depositData(), LBObj::DepositHandle(), LBDB::GetObjData(), LBObj::LBObj(), HybridBaseLB::ObjMigrated(), HbmLB::ObjMigrated(), HybridBaseLB::ObjsMigrated(), BaseLB::LDStats::print(), HybridBaseLB::ReceiveVectorMigration(), CentralLB::removeNonMigratable(), LBObj::SetMigratable(), RotateLB::work(), RandCentLB::work(), PhasebyArrayLB::work(), OrbLB::work(), GreedyLB::work(), GreedyCommLB::work(), CommLB::work(), and BlockLB::work().
CmiBool LDObjData::asyncArrival [inherited] |
Definition at line 125 of file lbdb.h.
Referenced by HybridBaseLB::createMigrateMsg(), CentralLB::createMigrateMsg(), LBObj::LBObj(), and LBObj::UseAsyncMigrate().
LDObjData LDObjStats::data [inherited] |
int LDObjStats::from_proc [inherited] |
int LDObjStats::to_proc [inherited] |
int _LDCommDesc::destObjProc [inherited] |
struct { ... } _LDCommDesc::destObj [inherited] |
struct { ... } ::destObj [inherited] |
int _LDCommDesc::len [inherited] |
struct { ... } _LDCommDesc::destObjs [inherited] |
Referenced by _LDCommDesc::operator=().
struct { ... } ::destObjs [inherited] |
union { ... } _LDCommDesc::dest [inherited] |
LDObjKey LDCommData::sender [inherited] |
Definition at line 196 of file lbdb.h.
Referenced by HybridBaseLB::collectCommData(), HbmLB::collectCommData(), BaseLB::LDStats::computeNonlocalComm(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), LBCommTable::GetCommData(), TopoLB::getHopBytes(), LBInfo::getInfo(), BaseLB::LDStats::getSendHash(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), isMigratable(), MulticastAgent::MulticastAgent(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), BaseLB::LDStats::removeObject(), TopologyAgent::TopologyAgent(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
LDCommDesc LDCommData::receiver [inherited] |
Definition at line 197 of file lbdb.h.
Referenced by HybridBaseLB::buildCombinedLBStatsMessage(), RefinerComm::commAffinity(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), RefinerComm::create(), HybridBaseLB::depositLBStatsMessage(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), LBCommTable::GetCommData(), TopoLB::getHopBytes(), BaseLB::LDStats::getRecvHash(), TopoLB::initDataStructures(), GridHybridSeedLB::Initialize_Communication_Matrix(), isMigratable(), MulticastAgent::MulticastAgent(), RefinerComm::objCommCost(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), CentralLB::removeNonMigratable(), TopologyAgent::TopologyAgent(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
int LDCommData::sendHash [inherited] |
int LDCommData::recvHash [inherited] |
int LDCommData::messages [inherited] |
Definition at line 199 of file lbdb.h.
Referenced by RefinerComm::commAffinity(), TopoLB::computePartitions(), TopoCentLB::computePartitions(), ObjGraph::EdgeWeight(), GridHybridSeedLB::Examine_InterObject_Messages(), GridHybridLB::Examine_InterObject_Messages(), GridCommRefineLB::Examine_InterObject_Messages(), GridCommLB::Examine_InterObject_Messages(), LBCommTable::GetCommData(), GridHybridSeedLB::Initialize_Communication_Matrix(), MulticastAgent::MulticastAgent(), RefinerComm::objCommCost(), ObjGraph::ObjGraph(), GridMetisLB::Partition_ClusterObjects_Into_PEs(), GridMetisLB::Partition_Objects_Into_Clusters(), GridHybridLB::Partition_Objects_Into_Clusters(), GreedyCommLB::work(), and CommLB::work().
int LDCommData::bytes [inherited] |
Definition at line 200 of file lbdb.h.
Referenced by RefinerComm::commAffinity(), ObjGraph::EdgeWeight(), LBCommTable::GetCommData(), TopoLB::getHopBytes(), TopoLB::initDataStructures(), MulticastAgent::MulticastAgent(), RefinerComm::objCommCost(), ObjGraph::ObjGraph(), TopologyAgent::TopologyAgent(), TreeMatchLB::work(), TopoCentLB::work(), GreedyCommLB::work(), and CommLB::work().
LDStatsFn LDCallbacks::setStats [inherited] |
LDQueryEstLoadFn LDCallbacks::queryEstLoad [inherited] |
Cluster Manager Code, Accpets external bit vectors and then feeds it into the loadbalancer so that programs can shrink and expand.
Definition at line 43 of file CentralLB.C.
CkGroupID _theNullLB [static] |
int _migDoneHandle [static] |
Definition at line 18 of file ObjGraph.C.
Referenced by CommLB::compute_cost(), ConjGrad2(), CreateLBFunc_Def(), GenericElement::dshape_func(), LBInfo::getInfo(), GenericElement::interpolate_natural(), cgSolver::iterate(), GenericElement::jacobian(), Marquardt_solver(), MulticastAgent::my_preferred_procs(), PUPmarshall(), and GenericElement::shape_func().
Definition at line 19 of file ObjGraph.C.
Referenced by ConjGrad2(), FEM_Adapt_Algs::GradateMesh(), cgSolver::iterate(), Marquardt_solver(), and Bulk_Adapt::ParFUM_GradateMesh().
Definition at line 103 of file RecBipartLB.C.
Referenced by CcsSecMan_default(), CkArray::CkArray(), HybridBaseLB::FindNeighbors(), HbmLB::FindNeighbors(), MinCover(), and print_btree_top_down().
Definition at line 104 of file RecBipartLB.C.
| vector<Vertex_helper *> vhelpers |
Definition at line 105 of file RecBipartLB.C.
Referenced by adjustgain(), adjustqueues(), modifypartitions(), BQueue::push(), RecursiveBiPart(), BQueue::removeComplete(), removeinSwap(), and RecBipartLB::work().
Definition at line 106 of file RecBipartLB.C.
Definition at line 106 of file RecBipartLB.C.
Definition at line 107 of file RecBipartLB.C.
| char* _lbtopo |
Definition at line 12 of file topology.C.
int LBTopo_torus_nd< dimension >::VirtualProcessorCount [private, inherited] |
Definition at line 581 of file topology.C.
int* LBTopo_torus_nd< dimension >::TempCo [private, inherited] |
Definition at line 582 of file topology.C.
Definition at line 1312 of file topology.C.
int LBDatabase::manualOn = 0 [static, inherited] |
char * LBDatabase::avail_vector = NULL [static, private, inherited] |
Definition at line 354 of file LBDatabase.h.
Referenced by LBDatabase::availVector(), LBDatabase::get_avail_vector(), LBDatabase::initnodeFn(), LBDatabase::pup(), LBDatabase::set_avail_vector(), and LBDatabase::~LBDatabase().
1.5.5