PPL Logo

StrategyTableEntry Class Reference
[Converse Communication Optimization Framework]

Information about each instance of a strategy. More...

#include <convcomlibstrategy.h>

Collaboration diagram for StrategyTableEntry:

Collaboration graph
[legend]

Public Member Functions

void reset ()
 StrategyTableEntry ()
CountingErrorMode getErrorMode ()
CountingServerErrorMode getErrorModeServer ()
DiscoveryErrorMode getDiscoveryMode ()
void setErrorMode (CountingErrorMode mode)
void setErrorModeServer (CountingServerErrorMode mode)
void setDiscoveryMode (DiscoveryErrorMode mode)
const char * errorModeString ()
const char * errorModeServerString ()
const char * discoveryModeString ()

Data Fields

Strategystrategy
int isReady
 A flag to specify if the strategy is active or suspended.
int isNew
 A flag to specify if the strategy is newly created and not yet synchronized.
int isInSync
 A flag to specify if the strategy is currently being synchronized.
int bufferOutgoing
 A flag that specifies whether outgoing messages should be buffered, currently only used in the bracketed strategies when an error has been detected.
int bracketedSetupFinished
 A flag to specify that the bracketed strategy is fully setup, and it can operate normally.
CkQ< MessageHolder * > tmplist
 A buffer for all the messages to this strategy while the strategy is suspended.
int numBufferReleaseReady
int numElements
int nBeginItr
int nEndItr
int call_doneInserting
int lastKnownIteration
int nEndSaved
int totalEndCounted
int nProcSync
intpeList
 list of where objects are, will be broadcasted at the end, the list is CkNumPes() elements long + 2.
int peConfirmCounter
 The number of PEs that have confirmed the count to ComlibManager::bracketedCountConfirmed.
int total
 This was formerly a static variable in ComlibManager::bracketedCountConfirmed().

Private Attributes

CountingErrorMode errorMode
 A flag to specify that this bracketed strategy is in an error mode, due to an object migration causing more objects to call BeginIteration on one of the PEs than was expected.
CountingServerErrorMode errorModeServer
 The state of the coordinator (PE 0 of the chare group).
DiscoveryErrorMode discoveryMode
 A flag to specify what stage of Discovery process is underway for the PE.

Detailed Description

Information about each instance of a strategy.

Each StrategyTableEntry points to a strategy, as well as containing information about which state the strategy instance is in.

Strategies can change during the execution of the program but the StrategyTableEntry stores some persistent information for the strategy. The communication library on receiving a message, calls the strategy in this table given by the strategy id in the message.

With the philosophy that strategies are not recreated, but only updated during the execution of the program, this struct should be useless?

Definition at line 320 of file convcomlibstrategy.h.


Member Function Documentation

CountingErrorMode StrategyTableEntry::getErrorMode (  )  [inline]

CountingServerErrorMode StrategyTableEntry::getErrorModeServer (  )  [inline]

DiscoveryErrorMode StrategyTableEntry::getDiscoveryMode (  )  [inline]

void StrategyTableEntry::setErrorMode ( CountingErrorMode  mode  )  [inline]

void StrategyTableEntry::setErrorModeServer ( CountingServerErrorMode  mode  )  [inline]

void StrategyTableEntry::setDiscoveryMode ( DiscoveryErrorMode  mode  )  [inline]


Field Documentation

A flag to specify if the strategy is active or suspended.

Definition at line 325 of file convcomlibstrategy.h.

Referenced by StrategyTableEntry().

A flag to specify if the strategy is newly created and not yet synchronized.

Definition at line 327 of file convcomlibstrategy.h.

Referenced by ConvComlibManager::insertStrategy(), and StrategyTableEntry().

A flag to specify if the strategy is currently being synchronized.

Definition at line 329 of file convcomlibstrategy.h.

A flag that specifies whether outgoing messages should be buffered, currently only used in the bracketed strategies when an error has been detected.

Once the error has been corrected, no longer are the outgoing messages buffered.

errorDelaySendBuffer (see below) is the name of the queue of messages buffered while this variable is 1.

Currently the following methods respect the wishes of this variable: ComlibManager::multicast()

Definition at line 345 of file convcomlibstrategy.h.

Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedReleaseBufferedMessages(), ComlibManager::endIteration(), ComlibManager::printDiagnostics(), and ComlibManager::shouldBufferMessagesNow().

A flag to specify that the bracketed strategy is fully setup, and it can operate normally.

A value of 0 means strategy is fully setup

Definition at line 350 of file convcomlibstrategy.h.

Referenced by ConvComlibManager::insertStrategy(), and StrategyTableEntry().

A buffer for all the messages to this strategy while the strategy is suspended.

Definition at line 353 of file convcomlibstrategy.h.

Definition at line 362 of file convcomlibstrategy.h.

Referenced by reset(), and StrategyTableEntry().

list of where objects are, will be broadcasted at the end, the list is CkNumPes() elements long + 2.

These two elements are: peList[CkNumPes()] number of source objects discovered, peList[CkNumPes()+1] number of destination objects discovered. This trick eliminates two integer variables

Definition at line 380 of file convcomlibstrategy.h.

Referenced by ComlibManager::bracketedContributeDiscovery(), and StrategyTableEntry().

The number of PEs that have confirmed the count to ComlibManager::bracketedCountConfirmed.

Definition at line 384 of file convcomlibstrategy.h.

Referenced by ComlibManager::bracketedCountConfirmed(), and StrategyTableEntry().

A flag to specify that this bracketed strategy is in an error mode, due to an object migration causing more objects to call BeginIteration on one of the PEs than was expected.

The detecting PE immediately enter the error mode state, while other PEs will be notified of the error, and they will then enter the error state.

Definition at line 405 of file convcomlibstrategy.h.

Referenced by errorModeString(), getErrorMode(), setErrorMode(), and StrategyTableEntry().

The state of the coordinator (PE 0 of the chare group).

Definition at line 410 of file convcomlibstrategy.h.

Referenced by errorModeServerString(), getErrorModeServer(), setErrorModeServer(), and StrategyTableEntry().

A flag to specify what stage of Discovery process is underway for the PE.

Definition at line 416 of file convcomlibstrategy.h.

Referenced by discoveryModeString(), getDiscoveryMode(), setDiscoveryMode(), and StrategyTableEntry().


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

Generated on Fri May 25 08:05:30 2012 for Charm++ by  doxygen 1.5.5