SG++-Doxygen-Documentation
|
#include <MPITaskScheduler.hpp>
Public Member Functions | |
virtual void | assignTaskStaticTaskSize (TaskType taskType, AssignTaskResult &result)=0 |
Request for a task of specific type to be assigned. More... | |
virtual void | assignTaskVariableTaskSize (TaskType taskType, AssignTaskResult &result)=0 |
Request for a task of specific type to be assigned. More... | |
virtual bool | isReadyForRefinement ()=0 |
Check whether the master is allowed to transit into the refinement phase. More... | |
virtual void | onMergeRequestIncoming (size_t batchOffset, size_t batchSize, size_t remoteGridVersion, size_t localGridVersion)=0 |
Callback for when training results are received from workers. More... | |
virtual void | onRefinementStarted ()=0 |
Callback for when refinement is about to begin. More... | |
void | setLearnerInstance (LearnerSGDEOnOffParallel *instance) |
Set the learner instance for which to task schedule. More... | |
virtual | ~MPITaskScheduler ()=default |
Default destructor to override if necessary. More... | |
Protected Attributes | |
LearnerSGDEOnOffParallel * | learnerInstance {} |
The learner instance used to interrogate system state if necessary. More... | |
|
virtualdefault |
Default destructor to override if necessary.
|
pure virtual |
Request for a task of specific type to be assigned.
This type of task does not include variable task size.
taskType | |
result |
Implemented in sgpp::datadriven::RoundRobinScheduler.
Referenced by sgpp::datadriven::RefinementHandler::updateClassVariablesAfterRefinement().
|
pure virtual |
Request for a task of specific type to be assigned.
The MPI Task Scheduler will decide on the task size.
taskType | The type of the task to be assigned. |
result | The result of assigning the task. |
Implemented in sgpp::datadriven::RoundRobinScheduler.
Referenced by sgpp::datadriven::LearnerSGDEOnOffParallel::assignBatchToWorker().
|
pure virtual |
Check whether the master is allowed to transit into the refinement phase.
Implemented in sgpp::datadriven::RoundRobinScheduler.
Referenced by sgpp::datadriven::RefinementHandler::checkReadyForRefinement().
|
pure virtual |
Callback for when training results are received from workers.
Can be used to update tracking of assigned batches.
batchOffset | The offset of the batch that was trained from. |
batchSize | The size of the batch used for training. |
remoteGridVersion | The grid version of the worker used for training. |
localGridVersion | The grid version of the master upond reception. |
Implemented in sgpp::datadriven::RoundRobinScheduler.
Referenced by sgpp::datadriven::LearnerSGDEOnOffParallel::mergeAlphaValues().
|
pure virtual |
Callback for when refinement is about to begin.
Implemented in sgpp::datadriven::RoundRobinScheduler.
Referenced by sgpp::datadriven::LearnerSGDEOnOffParallel::trainParallel().
void sgpp::datadriven::MPITaskScheduler::setLearnerInstance | ( | LearnerSGDEOnOffParallel * | instance | ) |
Set the learner instance for which to task schedule.
instance | The learner instance. |
References learnerInstance.
Referenced by sgpp::datadriven::LearnerSGDEOnOffParallel::LearnerSGDEOnOffParallel().
|
protected |
The learner instance used to interrogate system state if necessary.
Referenced by sgpp::datadriven::RoundRobinScheduler::assignTaskStaticTaskSize(), sgpp::datadriven::RoundRobinScheduler::RoundRobinScheduler(), and setLearnerInstance().