WRENCH
1.10
Cyberinfrastructure Simulation Workbench
|
Overview | Installation | Getting Started | WRENCH 101 | WRENCH 102 |
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. | |
An abstract class that defines a batch scheduler.
|
inlineexplicit |
Constructor.
cs | the batch compute service for which this scheduler is operating |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Method to process a job termination when the job is already forgotten (useful for batsched)
job_id | the id of the batch job that was terminated |
Implements wrench::BatchScheduler.
|
pure virtual |
Virtual method to figure out on which actual resources a job could be scheduled right now.
num_nodes | number of nodes |
cores_per_node | number of cores per node |
ram_per_node | amount of RAM |
Implemented in wrench::FCFSBatchScheduler, wrench::CONSERVATIVEBFBatchScheduler, and wrench::CONSERVATIVEBFBatchSchedulerCoreLevel.