class BbParaSolverStateMpi (ParaSolver state object for notification message communicated by MPI) More...
#include <bbParaSolverStateMpi.h>
Public Member Functions | |
BbParaSolverStateMpi () | |
default constructor More... | |
BbParaSolverStateMpi (int inRacingStage, unsigned int inNotificationId, int inLcId, int inGlobalSubtreeId, long long inNodesSolved, int inNodesLeft, double inBestDualBoundValue, double inGlobalBestPrimalBoundValue, double inDetTime, double inAverageDualBoundGain) | |
constructor More... | |
~BbParaSolverStateMpi () | |
destractor 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 BbParaSolverState | |
BbParaSolverState () | |
default constructor More... | |
BbParaSolverState (int inRacingStage, unsigned int inNotificationId, int inLcId, int inGlobalSubtreeId, long long inNodesSolved, int inNodesLeft, double inBestDualBoundValue, double inGlobalBestPrimalBoundValue, double inDetTime, double inAverageDualBoundGain) | |
constructor More... | |
virtual | ~BbParaSolverState () |
destractor More... | |
bool | isRacingStage () |
getter of isRacingStage More... | |
unsigned int | getNotificaionId () |
getter of notification id More... | |
int | getLcId () |
getter of LoadCoordintor id More... | |
int | getGlobalSubtreeId () |
getter of global subtree id More... | |
double | getSolverLocalBestDualBoundValue () |
gettter of best dual bound value More... | |
double | getGlobalBestPrimalBoundValue () |
get global best primal bound value that the notification Solver has More... | |
long long | getNNodesSolved () |
getter of number of nodes solved by the notification Solver More... | |
int | getNNodesLeft () |
getter of number of nodes left by the notification Solver More... | |
double | getDeterministicTime () |
getter of deterministic time More... | |
double | getAverageDualBoundGain () |
getter of average dual bound gain received More... | |
std::string | toString () |
stringfy BbParaSolverState More... | |
Public Member Functions inherited from ParaSolverState | |
ParaSolverState () | |
default constructor More... | |
ParaSolverState (const ParaSolverState ¶SolverState) | |
copy constructor More... | |
ParaSolverState (int inRacingStage, unsigned int inNotificationId, int inLcId, int inGlobalSubtreeIdInLc, double inDetTime) | |
constructor More... | |
virtual | ~ParaSolverState () |
destractor More... | |
bool | isRacingStage () |
getter of isRacingStage More... | |
unsigned int | getNotificaionId () |
getter of notification id More... | |
int | getLcId () |
getter of LoadCoordintor id More... | |
int | getGlobalSubtreeId () |
getter of global subtree id More... | |
double | getDeterministicTime () |
getter of deterministic time More... | |
virtual std::string | toString ()=0 |
stringfy ParaSolverState 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 BbParaSolverStateMpi datatype More... | |
Additional Inherited Members | |
Protected Attributes inherited from BbParaSolverState | |
long long | nNodesSolved |
number of nodes solved More... | |
int | nNodesLeft |
number of remaining nodes More... | |
double | bestDualBoundValue |
best dual bound value in that of remaining nodes More... | |
double | globalBestPrimalBoundValue |
global best primal bound value More... | |
double | averageDualBoundGain |
average dual bound gain received More... | |
Protected Attributes inherited from ParaSolverState | |
int | racingStage |
if this value is 1, solver is in racing stage More... | |
unsigned int | notificationId |
id for this notification More... | |
int | lcId |
lc id of current ParaTask More... | |
int | globalSubtreeIdInLc |
global subtree id of current ParaTask More... | |
double | detTime |
deterministic time, -1: should be non-deterministic More... | |
class BbParaSolverStateMpi (ParaSolver state object for notification message communicated by MPI)
Definition at line 51 of file bbParaSolverStateMpi.h.
default constructor
Definition at line 66 of file bbParaSolverStateMpi.h.
BbParaSolverStateMpi | ( | int | inRacingStage, |
unsigned int | inNotificationId, | ||
int | inLcId, | ||
int | inGlobalSubtreeId, | ||
long long | inNodesSolved, | ||
int | inNodesLeft, | ||
double | inBestDualBoundValue, | ||
double | inGlobalBestPrimalBoundValue, | ||
double | inDetTime, | ||
double | inAverageDualBoundGain | ||
) |
constructor
inRacingStage | indicate if Solver is in racing stage or not |
inNotificationId | id for this notification |
inLcId | lc id of current ParaNode |
inGlobalSubtreeId | global subtree id of current ParaNode |
inNodesSolved | number of nodes solved |
inNodesLeft | number of remaining nodes |
inBestDualBoundValue | best dual bound value in that of remaining nodes |
inGlobalBestPrimalBoundValue | global best primal bound value |
inDetTime | deterministic time, -1: should be non-deterministic |
inAverageDualBoundGain | average dual bound gain received |
Definition at line 74 of file bbParaSolverStateMpi.h.
~BbParaSolverStateMpi | ( | ) |
destractor
Definition at line 94 of file bbParaSolverStateMpi.h.
|
private |
create BbParaSolverStateMpi datatype
Definition at line 42 of file bbParaSolverStateMpi.cpp.
References BbParaSolverState::averageDualBoundGain, BbParaSolverState::bestDualBoundValue, ParaSolverState::detTime, BbParaSolverState::globalBestPrimalBoundValue, ParaSolverState::globalSubtreeIdInLc, ParaSolverState::lcId, MPI_CALL, BbParaSolverState::nNodesLeft, BbParaSolverState::nNodesSolved, ParaSolverState::notificationId, and ParaSolverState::racingStage.
Referenced by BbParaSolverStateMpi::receive(), and BbParaSolverStateMpi::send().
|
virtual |
receive this object
comm | communicator used |
source | source rank |
tag | TagSolverState |
Implements ParaSolverState.
Definition at line 155 of file bbParaSolverStateMpi.cpp.
References comm, BbParaSolverStateMpi::createDatatype(), DEF_PARA_COMM, MPI_CALL, PARA_COMM_CALL, and ParaSolverState::racingStage.
|
virtual |
send this object
comm | communicator used |
destination | destination rank |
tag | TagSolverState |
Implements ParaSolverState.
Definition at line 131 of file bbParaSolverStateMpi.cpp.
References BbParaSolverState::bestDualBoundValue, comm, BbParaSolverStateMpi::createDatatype(), DEF_PARA_COMM, MPI_CALL, BbParaSolverState::nNodesLeft, PARA_COMM_CALL, and ParaSolverState::racingStage.