HomegrownBatchScheduler.h
1 
10 #ifndef WRENCH_HOMEGROWNBATCHSCHEDULER_H
11 #define WRENCH_HOMEGROWNBATCHSCHEDULER_H
12 
13 #include "wrench/services/compute/batch/batch_schedulers/BatchScheduler.h"
14 
15 
16 namespace wrench {
17 
18 /***********************/
20 /***********************/
21 
26 
27  public:
28 
35 
36  void init() override {};
37 
38  void launch() override {};
39 
40  void shutdown() override {};
41 
49  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;
50 
51  };
52 
53 /***********************/
55 /***********************/
56 
57 }
58 
59 
60 #endif //WRENCH_HOMEGROWNBATCHSCHEDULER_H
BatchComputeService * cs
Compute service for which this scheduler is operating.
Definition: BatchScheduler.h:106
void shutdown() override
Shutdown method.
Definition: HomegrownBatchScheduler.h:40
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.
A batch-scheduled compute service that manages a set of compute hosts and controls access to their re...
Definition: BatchComputeService.h:49
Definition: Alarm.cpp:20
An abstract class that defines a batch scheduler.
Definition: BatchScheduler.h:27
void launch() override
Launch method.
Definition: HomegrownBatchScheduler.h:38
void init() override
Initialization method.
Definition: HomegrownBatchScheduler.h:36
An abstract class that defines a batch scheduler.
Definition: HomegrownBatchScheduler.h:25
HomegrownBatchScheduler(BatchComputeService *cs)
Constructor.
Definition: HomegrownBatchScheduler.h:34