wrench::FCFSBatchScheduler
-
class FCFSBatchScheduler : public wrench::HomegrownBatchScheduler
A class that implements a FCFS batch scheduler.
Public Functions
-
inline explicit FCFSBatchScheduler(BatchComputeService *cs)
Constructor.
- Parameters:
cs – the batch compute service for which this scheduler is operating
-
virtual std::map<std::string, double> getStartTimeEstimates(std::set<std::tuple<std::string, unsigned long, unsigned long, double>> set_of_jobs) override
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
-
std::shared_ptr<BatchJob> pickNextJobToSchedule()
Overridden Method to pick the next job to schedule.
- Returns:
A BatchComputeService job, or nullptr is none is found
No-op method.
- Parameters:
batch_job – a BatchComputeService job
No-op method.
- Parameters:
batch_job – a BatchComputeService job
No-op method.
- Parameters:
batch_job – a BatchComputeService job
No-op method.
- Parameters:
batch_job – a BatchComputeService job
-
virtual void processQueuedJobs() override
Method to process queued jobs.
-
virtual std::map<std::string, std::tuple<unsigned long, double>> scheduleOnHosts(unsigned long, unsigned long, double) override
Override Method to find hosts on which to scheduled a job.
- Parameters:
num_nodes – the job’s requested num nodes
cores_per_node – the job’s num cores per node
ram_per_node – the job’s ram per node
- Returns:
A resource list
-
inline explicit FCFSBatchScheduler(BatchComputeService *cs)