An abstract class that defines a batch scheduler. More...
#include <BatchScheduler.h>
Public Member Functions | |
BatchScheduler (BatchComputeService *cs) | |
Constructor. More... | |
virtual | ~BatchScheduler ()=default |
Destructor. | |
virtual std::map< std::string, double > | getStartTimeEstimates (std::set< std::tuple< std::string, unsigned long, unsigned long, double >> set_of_jobs)=0 |
Method to get start time estimates. More... | |
virtual void | init ()=0 |
Initialization method. More... | |
virtual void | launch ()=0 |
Launch method. | |
virtual void | processJobCompletion (std::shared_ptr< BatchJob > batch_job)=0 |
Method to process a job completion. More... | |
virtual void | processJobFailure (std::shared_ptr< BatchJob > batch_job)=0 |
Method to process a job failure. More... | |
virtual void | processJobSubmission (std::shared_ptr< BatchJob > batch_job)=0 |
Method to process a job submission. More... | |
virtual void | processJobTermination (std::shared_ptr< BatchJob > batch_job)=0 |
Method to process a job termination. More... | |
virtual void | processQueuedJobs ()=0 |
Method to process queued jobs. | |
virtual void | shutdown ()=0 |
Shutdown method. | |
Protected Attributes | |
BatchComputeService * | cs |
Compute service for which this scheduler is operating. | |
Detailed Description
An abstract class that defines a batch scheduler.
Constructor & Destructor Documentation
◆ BatchScheduler()
|
inlineexplicit |
Constructor.
- Parameters
-
cs the batch compute service to which this scheduler is associated
Member Function Documentation
◆ getStartTimeEstimates()
|
pure virtual |
Method to get start time estimates.
- Parameters
-
set_of_jobs the set of job configurations whose start times should be estimated
- Returns
- start time estimates
Implemented in wrench::BatschedBatchScheduler, wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.
◆ init()
|
pure virtual |
Initialization method.
Virtual methods to override
Implemented in wrench::BatschedBatchScheduler, and wrench::HomegrownBatchScheduler.
◆ processJobCompletion()
|
pure virtual |
Method to process a job completion.
- Parameters
-
batch_job the batch job that has completed
Implemented in wrench::BatschedBatchScheduler, wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.
◆ processJobFailure()
|
pure virtual |
Method to process a job failure.
- Parameters
-
batch_job the batch job that has failed
Implemented in wrench::BatschedBatchScheduler, wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.
◆ processJobSubmission()
|
pure virtual |
Method to process a job submission.
- Parameters
-
batch_job the batch job that was submitted
Implemented in wrench::BatschedBatchScheduler, wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.
◆ processJobTermination()
|
pure virtual |
Method to process a job termination.
- Parameters
-
batch_job the batch job that was terminated
Implemented in wrench::BatschedBatchScheduler, wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.
The documentation for this class was generated from the following file: