
#include <gvt.h>


| Public Member Functions | |
| GVT (void) | |
| Basic Constructor. | |
| GVT (CkMigrateMessage *msg) | |
| Migration Constructor. | |
| void | pup (PUP::er &p) | 
| PUP routine. | |
| int | getGVTIterationCount () | 
| ENTRY: return the number of GVT iterations so far. | |
| void | sumGVTIterationCounts () | 
| ENTRY: Contribute the current GVT iteration count to a summation reduction at the end of the simulation. | |
| void | runGVT (UpdateMsg *) | 
| ENTRY: Run the GVT. | |
| void | computeGVT (UpdateMsg *) | 
| ENTRY: Gathers PVT reports; calculates and broadcasts GVT to PVTs. | |
| void | addSR (SRentry **SRs, SRentry *e, POSE_TimeType og, int ne) | 
| Adds incoming send/recv information to a list. | |
| Data Fields | |
| int | gvtIterationCount | 
| Counts the number of GVT interations. | |
| Private Attributes | |
| localStat * | localStats | 
| POSE_TimeType | estGVT | 
| Latest GVT estimate. | |
| int | inactive | 
| Inactivity status: number of iterations since GVT has changed. | |
| POSE_TimeType | inactiveTime | 
| Time at which GVT last went inactive. | |
| int | nextLBstart | 
| Number of GVT iterations since last LB run. | |
| POSE_TimeType | lastEarliest | 
| Earliest send/recv timestamp in previous GVT invocation. | |
| int | lastSends | 
| Number of sends at lastEarliest. | |
| int | lastRecvs | 
| Number of receives at lastEarliest. | |
| int | reportsExpected | 
| Number of PVT reports expected (1 or 2). | |
| POSE_TimeType | optGVT | 
| optimistic and coservative GVTs | |
| POSE_TimeType | conGVT | 
| int | done | 
| SRentry * | SRs | 
| used to calculate GVT from PVT reports | |
| int | startOffset | 
Responsibility for GVT estimation shifts between branches after each GVT invocation.
Definition at line 222 of file gvt.h.
| GVT::GVT | ( | void | ) | 
Basic Constructor.
Definition at line 592 of file gvt.C.
References prioBcMsg::bc, CkLocalBranch(), Converse::CkMyPe(), Converse::CkNumPes(), CkPriorityPtr(), CkSetQueueing(), conGVT, done, estGVT, gvtIterationCount, inactive, inactiveTime, int, lastEarliest, lastRecvs, lastSends, POSE_Config::lb_on, POSE_Config::lb_skip, localStats, nextLBstart, optGVT, p, pose_config, POSE_UnsetTS, reportsExpected, SRs, startOffset, and theLocalStats.

| GVT::GVT | ( | CkMigrateMessage * | msg | ) |  [inline] | 
| void GVT::pup | ( | PUP::er & | p | ) |  [virtual] | 
PUP routine.
Reimplemented from Group.
Definition at line 628 of file gvt.C.
References CkLocalBranch(), conGVT, done, estGVT, gvtIterationCount, inactive, inactiveTime, PUP::er::isUnpacking(), lastEarliest, lastRecvs, lastSends, localStats, nextLBstart, optGVT, SRentry::pup(), reportsExpected, SRs, startOffset, and theLocalStats.

| int GVT::getGVTIterationCount | ( | ) |  [inline] | 
ENTRY: return the number of GVT iterations so far.
Definition at line 264 of file gvt.h.
References gvtIterationCount.
Referenced by pvtObjects::StratCalcs().

| void GVT::sumGVTIterationCounts | ( | ) |  [inline] | 
ENTRY: Contribute the current GVT iteration count to a summation reduction at the end of the simulation.
Definition at line 268 of file gvt.h.
References CkReductionMgr::contribute(), gvtIterationCount, POSE_sumGVTIterations(), and CkReduction::sum_int.

| void GVT::runGVT | ( | UpdateMsg * | m | ) | 
ENTRY: Run the GVT.
Updates data fields with info from previous GVT estimation. Fires off PVT calculations on all PVT branches.
Definition at line 669 of file gvt.C.
References Converse::CkMyPe(), estGVT, UpdateMsg::inactive, inactive, UpdateMsg::inactiveTime, inactiveTime, localStats, UpdateMsg::nextLB, nextLBstart, UpdateMsg::optPVT, pose_config, UpdateMsg::runGVTflag, POSE_Config::stats, localStat::TimerStart(), and localStat::TimerStop().

| void GVT::computeGVT | ( | UpdateMsg * | m | ) | 
ENTRY: Gathers PVT reports; calculates and broadcasts GVT to PVTs.
Definition at line 689 of file gvt.C.
References addSR(), CkFreeMsg(), Converse::CkMyPe(), Converse::CkNumPes(), conGVT, UpdateMsg::conPVT, GVTMsg::done, done, GVTMsg::estGVT, estGVT, localStat::GvtInc(), gvtIterationCount, UpdateMsg::inactive, inactive, UpdateMsg::inactiveTime, inactiveTime, POSE_Config::lb_on, POSE_Config::lb_skip, localStats, UpdateMsg::maxSR, SRentry::next, UpdateMsg::nextLB, nextLBstart, UpdateMsg::numEntries, optGVT, UpdateMsg::optPVT, p, pose_config, POSE_endtime, POSE_stop(), POSE_UnsetTS, SRentry::recvs, reportsExpected, UpdateMsg::runGVTflag, SRentry::sends, UpdateMsg::SRs, SRs, startOffset, POSE_Config::stats, localStat::SwitchTimer(), TheLBG, localStat::TimerStart(), localStat::TimerStop(), and SRentry::timestamp.

| void GVT::addSR | ( | SRentry ** | SRs, | |
| SRentry * | e, | |||
| POSE_TimeType | og, | |||
| int | ne | |||
| ) | 
Adds incoming send/recv information to a list.
Definition at line 869 of file gvt.C.
References SRentry::next, POSE_UnsetTS, SRentry::recvs, SRentry::sends, and SRentry::timestamp.
Referenced by computeGVT().

| localStat* GVT::localStats  [private] | 
| POSE_TimeType GVT::estGVT  [private] | 
| int GVT::inactive  [private] | 
| POSE_TimeType GVT::inactiveTime  [private] | 
| int GVT::nextLBstart  [private] | 
| POSE_TimeType GVT::lastEarliest  [private] | 
| int GVT::lastSends  [private] | 
| int GVT::lastRecvs  [private] | 
| int GVT::reportsExpected  [private] | 
| POSE_TimeType GVT::optGVT  [private] | 
optimistic and coservative GVTs
Definition at line 245 of file gvt.h.
Referenced by computeGVT(), GVT(), and pup().
| POSE_TimeType GVT::conGVT  [private] | 
| int GVT::startOffset  [private] | 
Counts the number of GVT interations.
Definition at line 255 of file gvt.h.
Referenced by computeGVT(), getGVTIterationCount(), GVT(), pup(), and sumGVTIterationCounts().
 1.5.5
 1.5.5