
#include <convcomlibstrategy.h>

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 | |
| Strategy * | strategy |
| 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 |
| int * | peList |
| 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. | |
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.
| CountingErrorMode StrategyTableEntry::getErrorMode | ( | ) | [inline] |
Definition at line 421 of file convcomlibstrategy.h.
References errorMode.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedConfirmCount(), ComlibManager::bracketedErrorDetected(), ComlibManager::bracketedFinalBarrier(), ComlibManager::bracketedReceiveNewCount(), ComlibManager::bracketedReleaseBufferedMessages(), ComlibManager::bracketedStartErrorRecoveryProcess(), ComlibManager::endIteration(), and ComlibManager::shouldBufferMessagesNow().
| CountingServerErrorMode StrategyTableEntry::getErrorModeServer | ( | ) | [inline] |
Definition at line 422 of file convcomlibstrategy.h.
References errorModeServer.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedCountConfirmed(), ComlibManager::bracketedReceiveCount(), ComlibManager::bracketedReleaseBufferedMessages(), ComlibManager::bracketedReleaseCount(), and ComlibManager::endIteration().
| DiscoveryErrorMode StrategyTableEntry::getDiscoveryMode | ( | ) | [inline] |
Definition at line 423 of file convcomlibstrategy.h.
References discoveryMode.
Referenced by ComlibManager::bracketedFinalBarrier(), ComlibManager::bracketedReceiveNewPeList(), ComlibManager::bracketedReleaseBufferedMessages(), and ComlibManager::bracketedStartDiscovery().
| void StrategyTableEntry::setErrorMode | ( | CountingErrorMode | mode | ) | [inline] |
Definition at line 425 of file convcomlibstrategy.h.
References CmiMyPe(), ComlibPrintf(), errorMode, and errorModeString().
Referenced by ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedConfirmCount(), ComlibManager::bracketedErrorDetected(), ComlibManager::bracketedFinalBarrier(), ComlibManager::bracketedReceiveNewCount(), and ComlibManager::bracketedStartErrorRecoveryProcess().
| void StrategyTableEntry::setErrorModeServer | ( | CountingServerErrorMode | mode | ) | [inline] |
Definition at line 430 of file convcomlibstrategy.h.
References CmiMyPe(), ComlibPrintf(), errorModeServer, errorModeServerString(), and lastKnownIteration.
Referenced by ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedCountConfirmed(), ComlibManager::bracketedReceiveCount(), and ComlibManager::bracketedReleaseCount().
| void StrategyTableEntry::setDiscoveryMode | ( | DiscoveryErrorMode | mode | ) | [inline] |
Definition at line 435 of file convcomlibstrategy.h.
References CmiMyPe(), ComlibPrintf(), discoveryMode, and discoveryModeString().
Referenced by ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedFinalBarrier(), ComlibManager::bracketedReceiveNewPeList(), and ComlibManager::bracketedStartDiscovery().
Definition at line 322 of file convcomlibstrategy.h.
Referenced by ComlibManager::bracketedContributeDiscovery(), ComlibManager::bracketedDiscover(), ComlibManager::bracketedFinalBarrier(), ComlibManager::bracketedReceiveCount(), ComlibManager::bracketedReceiveNewPeList(), ComlibManager::bracketedStartDiscovery(), ComlibManager::bracketedStartErrorRecoveryProcess(), ConvComlibManager::insertStrategy(), and StrategyTableEntry().
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 355 of file convcomlibstrategy.h.
Referenced by ComlibManager::bracketedReleaseCount(), and StrategyTableEntry().
Definition at line 357 of file convcomlibstrategy.h.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedDiscover(), ComlibManager::bracketedReceiveNewPeList(), ComlibManager::endIteration(), reset(), and StrategyTableEntry().
Definition at line 360 of file convcomlibstrategy.h.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedReceiveNewCount(), ComlibManager::endIteration(), and StrategyTableEntry().
Definition at line 361 of file convcomlibstrategy.h.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedErrorDetected(), ComlibManager::bracketedReceiveNewCount(), ComlibManager::bracketedStartErrorRecoveryProcess(), ComlibManager::endIteration(), reset(), and StrategyTableEntry().
Definition at line 362 of file convcomlibstrategy.h.
Referenced by reset(), and StrategyTableEntry().
Definition at line 365 of file convcomlibstrategy.h.
Referenced by ComlibManager::ArraySend(), ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedCountConfirmed(), ComlibManager::bracketedDiscover(), ComlibManager::bracketedErrorDetected(), ComlibManager::bracketedReceiveCount(), ComlibManager::bracketedStartDiscovery(), ComlibManager::bracketedStartErrorRecoveryProcess(), ComlibManager::endIteration(), ComlibManager::GroupSend(), ComlibManager::multicast(), setErrorModeServer(), and StrategyTableEntry().
Definition at line 368 of file convcomlibstrategy.h.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedConfirmCount(), ComlibManager::bracketedErrorDetected(), ComlibManager::bracketedReceiveNewCount(), ComlibManager::bracketedStartErrorRecoveryProcess(), and StrategyTableEntry().
Definition at line 369 of file convcomlibstrategy.h.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedCountConfirmed(), ComlibManager::bracketedReceiveCount(), and StrategyTableEntry().
Definition at line 370 of file convcomlibstrategy.h.
Referenced by ComlibManager::beginIteration(), ComlibManager::bracketedCatchUpPE(), ComlibManager::bracketedReceiveCount(), 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().
This was formerly a static variable in ComlibManager::bracketedCountConfirmed().
Definition at line 386 of file convcomlibstrategy.h.
Referenced by ComlibManager::bracketedCatchUpPE(), 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().
1.5.5