NAMD
|
#include <RefineTorusLB.h>
Public Member Functions | |
RefineTorusLB (computeInfo *cs, patchInfo *pas, processorInfo *pes, int ncs, int npas, int npes, int flag) | |
~RefineTorusLB () | |
void | binaryRefine () |
int | newRefine () |
![]() | |
Rebalancer (computeInfo *computeArray, patchInfo *patchArray, processorInfo *processorArray, int nComps, int nPatches, int nPes) | |
~Rebalancer () | |
Additional Inherited Members | |
![]() | |
typedef pcpair | pcgrid[3][3][2] |
![]() | |
int | isAvailableOn (patchInfo *patch, processorInfo *p) |
void | numAvailable (computeInfo *c, processorInfo *p, int *nPatches, int *nProxies, int *isBadForCommunication) |
void | refine_togrid (pcgrid &grid, double thresholdLoad, processorInfo *p, computeInfo *c) |
void | strategy () |
void | makeHeaps () |
void | makeTwoHeaps () |
void | assign (computeInfo *c, processorInfo *pRec) |
void | assign (computeInfo *c, int p) |
void | deAssign (computeInfo *c, processorInfo *pRec) |
int | refine () |
void | multirefine (double overload_start=1.02) |
void | printSummary () |
void | printResults () |
void | printLoads (int phase=0) |
double | computeAverage () |
void | adjustBackgroundLoadAndComputeAverage () |
double | computeMax () |
void | createSpanningTree () |
void | decrSTLoad () |
void | incrSTLoad () |
void | InitProxyUsage () |
void | brickDim (int a, int b, int dim, int &min, int &max) |
int | withinBrick (int x, int y, int z, int xm, int xM, int dimX, int ym, int yM, int dimY, int zm, int zM, int dimZ) |
![]() | |
int | bytesPerAtom |
ProxyUsage | proxyUsage |
const char * | strategyName |
computeInfo * | computes |
patchInfo * | patches |
processorInfo * | processors |
minHeap * | pes |
maxHeap * | computePairHeap |
maxHeap * | computeSelfHeap |
maxHeap * | computeBgPairHeap |
maxHeap * | computeBgSelfHeap |
int | P |
int | numPatches |
int | numComputes |
int | numProxies |
int | numPesAvailable |
double | averageLoad |
double | origMaxLoad |
int | firstAssignInRefine |
CollectLoadsMsg * | collMsg |
double | overLoad |
Definition at line 13 of file RefineTorusLB.h.
RefineTorusLB::RefineTorusLB | ( | computeInfo * | cs, |
patchInfo * | pas, | ||
processorInfo * | pes, | ||
int | ncs, | ||
int | npas, | ||
int | npes, | ||
int | flag | ||
) |
Definition at line 18 of file RefineTorusLB.C.
References binaryRefine(), Rebalancer::computeAverage(), Rebalancer::createSpanningTree(), Rebalancer::decrSTLoad(), Rebalancer::incrSTLoad(), Rebalancer::InitProxyUsage(), Rebalancer::printLoads(), proxyRecvSpanning, proxySendSpanning, and Rebalancer::strategyName.
RefineTorusLB::~RefineTorusLB | ( | ) |
Definition at line 44 of file RefineTorusLB.C.
void RefineTorusLB::binaryRefine | ( | ) |
Definition at line 69 of file RefineTorusLB.C.
References Rebalancer::averageLoad, Rebalancer::computeAverage(), Rebalancer::computeMax(), newRefine(), Rebalancer::numComputes, Rebalancer::overLoad, and Rebalancer::P.
Referenced by RefineTorusLB().
int RefineTorusLB::newRefine | ( | ) |
Definition at line 110 of file RefineTorusLB.C.
References Rebalancer::assign(), processorInfo::available, Rebalancer::averageLoad, Rebalancer::brickDim(), Rebalancer::pcpair::c, processorInfo::computeSet, Rebalancer::deAssign(), maxHeap::deleteMax(), endi(), EXPAND_INNER_BRICK, IRSet::hasElements(), InfoRecord::Id, Iterator::id, INGROUP, IRSet::insert(), maxHeap::insert(), iout, IRSet::iterator(), InfoRecord::load, IRSet::next(), Rebalancer::overLoad, Rebalancer::pcpair::p, Rebalancer::P, computeInfo::patch1, computeInfo::patch2, Rebalancer::patches, Rebalancer::printSummary(), patchInfo::processor, Rebalancer::processors, patchInfo::proxiesOn, REASSIGN, IRSet::remove(), Rebalancer::pcpair::reset(), and SELECT_REALPE.
Referenced by binaryRefine().