An abstract class that defines a batch scheduler. More...
#include <HomegrownBatchScheduler.h>
Public Member Functions | |
HomegrownBatchScheduler (BatchComputeService *cs) | |
Constructor. More... | |
void | init () override |
Initialization method. More... | |
void | launch () override |
Launch method. | |
void | processUnknownJobTermination (std::string job_id) override |
Method to process a job termination when the job is already forgotten (useful for batsched) More... | |
virtual std::map< std::string, std::tuple< unsigned long, double > > | scheduleOnHosts (unsigned long num_nodes, unsigned long cores_per_node, double ram_per_node)=0 |
Virtual method to figure out on which actual resources a job could be scheduled right now. More... | |
void | shutdown () override |
Shutdown method. | |
Public Member Functions inherited from wrench::BatchScheduler | |
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 | 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. | |
Additional Inherited Members | |
Protected Attributes inherited from wrench::BatchScheduler | |
BatchComputeService * | cs |
Compute service for which this scheduler is operating. | |
Detailed Description
An abstract class that defines a batch scheduler.
Constructor & Destructor Documentation
◆ HomegrownBatchScheduler()
|
inlineexplicit |
Constructor.
- Parameters
-
cs the batch compute service for which this scheduler is operating
Member Function Documentation
◆ init()
|
inlineoverridevirtual |
◆ processUnknownJobTermination()
|
inlineoverridevirtual |
Method to process a job termination when the job is already forgotten (useful for batsched)
- Parameters
-
job_id the id of the batch job that was terminated
Implements wrench::BatchScheduler.
◆ scheduleOnHosts()
|
pure virtual |
Virtual method to figure out on which actual resources a job could be scheduled right now.
- Parameters
-
num_nodes number of nodes cores_per_node number of cores per node ram_per_node amount of RAM
- Returns
- a host:<core,RAM> map
Implemented in wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.
The documentation for this class was generated from the following file: