class BbParaSolverTerminationStateMpi (Solver termination state in a ParaSolver communicated by MPI) More...
#include <bbParaSolverTerminationStateMpi.h>
Public Member Functions | |
BbParaSolverTerminationStateMpi () | |
default constructor More... | |
BbParaSolverTerminationStateMpi (int inInterrupted, int inRank, int inTotalNSolved, int inMinNSolved, int inMaxNSolved, int inTotalNSent, int inTotalNImprovedIncumbent, int inNParaNodesReceived, int inNParaNodesSolved, int inNParaNodesSolvedAtRoot, int inNParaNodesSolvedAtPreCheck, int inNTransferredLocalCutsFromSolver, int inMinTransferredLocalCutsFromSolver, int inMaxTransferredLocalCutsFromSolver, int inNTransferredBendersCutsFromSolver, int inMinTransferredBendersCutsFromSolver, int inMaxTransferredBendersCutsFromSolver, int inNTotalRestarts, int inMinRestarts, int inMaxRestarts, int inNTightened, int inNTightenedInt, int inCalcTerminationState, double inRunningTime, double inIdleTimeToFirstParaNode, double inIdleTimeBetweenParaNodes, double inIdleTimeAfterLastParaNode, double inIdleTimeToWaitNotificationId, double inIdleTimeToWaitAckCompletion, double inIdleTimeToWaitToken, double inTotalRootNodeTime, double inMinRootNodeTime, double inMaxRootNodeTime, double inDetTime) | |
constructor More... | |
void | send (ParaComm *comm, int destination, int tag) |
send this object More... | |
void | receive (ParaComm *comm, int source, int tag) |
receive this object More... | |
Public Member Functions inherited from BbParaSolverTerminationState | |
BbParaSolverTerminationState () | |
default constructor More... | |
BbParaSolverTerminationState (int inInterrupted, int inRank, int inTotalNSolved, int inMinNSolved, int inMaxNSolved, int inTotalNSent, int inTotalNImprovedIncumbent, int inNParaNodesReceived, int inNParaNodesSolved, int inNParaNodesSolvedAtRoot, int inNParaNodesSolvedAtPreCheck, int inNTransferredLocalCutsFromSolver, int inMinTransferredLocalCutsFromSolver, int inMaxTransferredLocalCutsFromSolver, int inNTransferredBendersCutsFromSolver, int inMinTransferredBendersCutsFromSolver, int inMaxTransferredBendersCutsFromSolver, int inNTotalRestarts, int inMinRestarts, int inMaxRestarts, int inNTightened, int inNTightenedInt, int inCalcTerminationState, double inRunningTime, double inIdleTimeToFirstParaNode, double inIdleTimeBetweenParaNodes, double inIddleTimeAfterLastParaNode, double inIdleTimeToWaitNotificationId, double inIdleTimeToWaitAckCompletion, double inIdleTimeToWaitToken, double inTotalRootNodeTime, double inMinRootNodeTime, double inMaxRootNodeTime, double inDetTime) | |
constructor More... | |
virtual | ~BbParaSolverTerminationState () |
destructor More... | |
int | getCalcTerminationState () |
getter of calcTermination state More... | |
std::string | toString (ParaInitiator *initiator) |
stringfy BbParaSolverTerminationState object More... | |
void | write (gzstream::ogzstream &out) |
write BbParaSolverTerminationState to checkpoint file More... | |
bool | read (ParaComm *comm, gzstream::igzstream &in) |
read BbParaSolverTerminationState from checkpoint file More... | |
Public Member Functions inherited from ParaSolverTerminationState | |
ParaSolverTerminationState () | |
default constructor More... | |
ParaSolverTerminationState (int inInterrupted, int inRank, int inNParaTasksReceived, int inNParaTasksSolved, double inRunningTime, double inIdleTimeToFirstParaTask, double inIdleTimeBetweenParaTasks, double inIddleTimeAfterLastParaTask, double inIdleTimeToWaitNotificationId, double inIdleTimeToWaitAckCompletion, double inIdleTimeToWaitToken, double inDetTime) | |
constructor More... | |
virtual | ~ParaSolverTerminationState () |
destructor More... | |
virtual std::string | toString (ParaInitiator *initiator)=0 |
stringfy ParaSolverTerminationState object More... | |
int | getInterruptedMode () |
getter of interrupted flag More... | |
double | getDeterministicTime () |
getter of deterministic time More... | |
virtual void | write (gzstream::ogzstream &out)=0 |
write ParaSolverTerminationState to checkpoint file More... | |
virtual bool | read (ParaComm *comm, gzstream::igzstream &in)=0 |
read ParaSolverTerminationState from checkpoint file More... | |
virtual void | send (ParaComm *comm, int destination, int tag)=0 |
send this object More... | |
virtual void | receive (ParaComm *comm, int source, int tag)=0 |
receive this object More... | |
Private Member Functions | |
MPI_Datatype | createDatatype () |
create BbParaSolverTerminationStateMpi datatype More... | |
Additional Inherited Members | |
Protected Attributes inherited from BbParaSolverTerminationState | |
int | totalNSolved |
accumulated number of nodes solved in this ParaSolver More... | |
int | minNSolved |
minimum number of subtree nodes rooted from ParaNode More... | |
int | maxNSolved |
maximum number of subtree nodes rooted from ParaNode More... | |
int | totalNSent |
accumulated number of nodes sent from this ParaSolver More... | |
int | totalNImprovedIncumbent |
accumulated number of improvements of incumbent value in this ParaSolver More... | |
int | nParaNodesSolvedAtRoot |
number of ParaNodes solved at root node before sending More... | |
int | nParaNodesSolvedAtPreCheck |
number of ParaNodes solved at pre-checking of root node solvability More... | |
int | nTransferredLocalCutsFromSolver |
number of local cuts transferred from this Solver More... | |
int | minTransferredLocalCutsFromSolver |
minimum number of local cuts transferred from this Solver More... | |
int | maxTransferredLocalCutsFromSolver |
maximum number of local cuts transferred from this Solver More... | |
int | nTransferredBendersCutsFromSolver |
number of benders cuts transferred from this Solver More... | |
int | minTransferredBendersCutsFromSolver |
minimum number of benders cuts transferred from this Solver More... | |
int | maxTransferredBendersCutsFromSolver |
maximum number of benders cuts transferred from this Solver More... | |
int | nTotalRestarts |
number of total restarts More... | |
int | minRestarts |
minimum number of restarts More... | |
int | maxRestarts |
maximum number of restarts More... | |
int | nTightened |
number of tightened variable bounds during racing stage More... | |
int | nTightenedInt |
number of tightened integral variable bounds during racing stage More... | |
int | calcTerminationState |
double | totalRootNodeTime |
total time consumed by root node processes More... | |
double | minRootNodeTime |
minimum time consumed by root node processes More... | |
double | maxRootNodeTime |
maximum time consumed by root node processes More... | |
Protected Attributes inherited from ParaSolverTerminationState | |
int | interrupted |
indicate that this solver is interrupted or not. 0: not interrupted, 1: interrupted, 2: checkpoint, 3: racing-ramp up More... | |
int | rank |
int | nParaTasksReceived |
number of ParaTasks received in this ParaSolver More... | |
int | nParaTasksSolved |
double | runningTime |
this solver running time More... | |
double | idleTimeToFirstParaTask |
idle time to start solving the first ParaTask More... | |
double | idleTimeBetweenParaTasks |
idle time between ParaTasks processing More... | |
double | idleTimeAfterLastParaTask |
idle time after the last ParaTask was solved More... | |
double | idleTimeToWaitNotificationId |
idle time to wait notification Id messages More... | |
double | idleTimeToWaitAckCompletion |
idle time to wait ack completion message More... | |
double | idleTimeToWaitToken |
double | detTime |
deterministic time, -1: should be non-deterministic More... | |
class BbParaSolverTerminationStateMpi (Solver termination state in a ParaSolver communicated by MPI)
Definition at line 51 of file bbParaSolverTerminationStateMpi.h.
default constructor
Definition at line 66 of file bbParaSolverTerminationStateMpi.h.
BbParaSolverTerminationStateMpi | ( | int | inInterrupted, |
int | inRank, | ||
int | inTotalNSolved, | ||
int | inMinNSolved, | ||
int | inMaxNSolved, | ||
int | inTotalNSent, | ||
int | inTotalNImprovedIncumbent, | ||
int | inNParaNodesReceived, | ||
int | inNParaNodesSolved, | ||
int | inNParaNodesSolvedAtRoot, | ||
int | inNParaNodesSolvedAtPreCheck, | ||
int | inNTransferredLocalCutsFromSolver, | ||
int | inMinTransferredLocalCutsFromSolver, | ||
int | inMaxTransferredLocalCutsFromSolver, | ||
int | inNTransferredBendersCutsFromSolver, | ||
int | inMinTransferredBendersCutsFromSolver, | ||
int | inMaxTransferredBendersCutsFromSolver, | ||
int | inNTotalRestarts, | ||
int | inMinRestarts, | ||
int | inMaxRestarts, | ||
int | inNTightened, | ||
int | inNTightenedInt, | ||
int | inCalcTerminationState, | ||
double | inRunningTime, | ||
double | inIdleTimeToFirstParaNode, | ||
double | inIdleTimeBetweenParaNodes, | ||
double | inIdleTimeAfterLastParaNode, | ||
double | inIdleTimeToWaitNotificationId, | ||
double | inIdleTimeToWaitAckCompletion, | ||
double | inIdleTimeToWaitToken, | ||
double | inTotalRootNodeTime, | ||
double | inMinRootNodeTime, | ||
double | inMaxRootNodeTime, | ||
double | inDetTime | ||
) |
constructor
inInterrupted | indicate that this solver is interrupted or not. 0: not interrupted, 1: interrupted 2: checkpoint, 3: racing-ramp up |
inRank | rank of this solver |
inTotalNSolved | accumulated number of nodes solved in this ParaSolver |
inMinNSolved | minimum number of subtree nodes rooted from ParaNode |
inMaxNSolved | maximum number of subtree nodes rooted from ParaNode |
inTotalNSent | accumulated number of nodes sent from this ParaSolver |
inTotalNImprovedIncumbent | accumulated number of improvements of incumbent value in this ParaSolver |
inNParaNodesReceived | number of ParaNodes received in this ParaSolver |
inNParaNodesSolved | number of ParaNodes solved ( received ) in this ParaSolver |
inNParaNodesSolvedAtRoot | number of ParaNodes solved at root node before sending |
inNParaNodesSolvedAtPreCheck | number of ParaNodes solved at pre-checking of root node solvability |
inNTransferredLocalCutsFromSolver | number of local cuts transferred from this Solver |
inMinTransferredLocalCutsFromSolver | minimum number of local cuts transferred from this Solver |
inMaxTransferredLocalCutsFromSolver | maximum number of local cuts transferred from this Solver |
inNTransferredBendersCutsFromSolver | number of benders cuts transferred from this Solver |
inMinTransferredBendersCutsFromSolver | minimum number of benders cuts transferred from this Solver |
inMaxTransferredBendersCutsFromSolver | maximum number of benders cuts transferred from this Solver |
inNTotalRestarts | number of total restarts |
inMinRestarts | minimum number of restarts |
inMaxRestarts | maximum number of restarts |
inNTightened | number of tightened variable bounds during racing stage |
inNTightenedInt | number of tightened integral variable bounds during racing stage |
inCalcTerminationState | termination sate of a calculation in a Solver |
inRunningTime | this solver running time |
inIdleTimeToFirstParaNode | idle time to start solving the first ParaNode |
inIdleTimeBetweenParaNodes | idle time between ParaNodes processing |
inIdleTimeAfterLastParaNode | idle time after the last ParaNode was solved |
inIdleTimeToWaitNotificationId | idle time to wait notification Id messages |
inIdleTimeToWaitAckCompletion | idle time to wait ack completion message |
inIdleTimeToWaitToken | idle time to wait token |
inTotalRootNodeTime | total time consumed by root node processes |
inMinRootNodeTime | minimum time consumed by root node processes |
inMaxRootNodeTime | maximum time consumed by root node processes |
inDetTime | deterministic time, -1: should be non-deterministic |
Definition at line 74 of file bbParaSolverTerminationStateMpi.h.
|
private |
create BbParaSolverTerminationStateMpi datatype
Definition at line 43 of file bbParaSolverTerminationStateMpi.cpp.
References BbParaSolverTerminationState::calcTerminationState, ParaSolverTerminationState::detTime, ParaSolverTerminationState::idleTimeAfterLastParaTask, ParaSolverTerminationState::idleTimeBetweenParaTasks, ParaSolverTerminationState::idleTimeToFirstParaTask, ParaSolverTerminationState::idleTimeToWaitAckCompletion, ParaSolverTerminationState::idleTimeToWaitNotificationId, ParaSolverTerminationState::idleTimeToWaitToken, ParaSolverTerminationState::interrupted, BbParaSolverTerminationState::maxNSolved, BbParaSolverTerminationState::maxRestarts, BbParaSolverTerminationState::maxRootNodeTime, BbParaSolverTerminationState::maxTransferredBendersCutsFromSolver, BbParaSolverTerminationState::maxTransferredLocalCutsFromSolver, BbParaSolverTerminationState::minNSolved, BbParaSolverTerminationState::minRestarts, BbParaSolverTerminationState::minRootNodeTime, BbParaSolverTerminationState::minTransferredBendersCutsFromSolver, BbParaSolverTerminationState::minTransferredLocalCutsFromSolver, MPI_CALL, BbParaSolverTerminationState::nParaNodesSolvedAtPreCheck, BbParaSolverTerminationState::nParaNodesSolvedAtRoot, ParaSolverTerminationState::nParaTasksReceived, ParaSolverTerminationState::nParaTasksSolved, BbParaSolverTerminationState::nTightened, BbParaSolverTerminationState::nTightenedInt, BbParaSolverTerminationState::nTotalRestarts, BbParaSolverTerminationState::nTransferredBendersCutsFromSolver, BbParaSolverTerminationState::nTransferredLocalCutsFromSolver, ParaSolverTerminationState::rank, ParaSolverTerminationState::runningTime, BbParaSolverTerminationState::totalNImprovedIncumbent, BbParaSolverTerminationState::totalNSent, BbParaSolverTerminationState::totalNSolved, and BbParaSolverTerminationState::totalRootNodeTime.
Referenced by BbParaSolverTerminationStateMpi::receive(), and BbParaSolverTerminationStateMpi::send().
|
virtual |
receive this object
comm | communicator used |
source | source rank |
tag | TagTerminated |
Implements ParaSolverTerminationState.
Definition at line 264 of file bbParaSolverTerminationStateMpi.cpp.
References comm, BbParaSolverTerminationStateMpi::createDatatype(), DEF_PARA_COMM, ParaSolverTerminationState::interrupted, MPI_CALL, and PARA_COMM_CALL.
|
virtual |
send this object
comm | communicator used |
destination | destination rank |
tag | TagTerminated |
Implements ParaSolverTerminationState.
Definition at line 242 of file bbParaSolverTerminationStateMpi.cpp.
References comm, BbParaSolverTerminationStateMpi::createDatatype(), DEF_PARA_COMM, ParaSolverTerminationState::interrupted, MPI_CALL, and PARA_COMM_CALL.