Skip to content
Snippets Groups Projects
Commit 1a0a5ac4 authored by Maël Madon's avatar Maël Madon
Browse files

doc: update README (issue #3)

parent 17d6a58a
No related branches found
No related tags found
No related merge requests found
......@@ -16,22 +16,24 @@ In Batmen, we added a layer: **the simulation of users**.
The interaction with users happens through a "broker". The broker manages a pool of simulated users and dynamically register new jobs to sumbit. These jobs come on top of the input workload read by Batsim.
Implementation, in the folder `src/users`:
- *broker*: implement the broker, submitting the jobs on behalf of the users
- *dynscheduler*: superclass managing the interaction with the broker from the scheduler
- *user*: an individual user, submitting her jobs to the broker
- class `Broker`: implement the broker, submitting the jobs on behalf of the users
- class `DynScheduler`: superclass managing the interaction with the broker from the scheduler
- class `User`: an individual user, submitting her jobs to the broker
### Types of user
TBD
- feedback users
- replay users
- modelled users
For now, we have developped three types of users.
- *modelled users* (class `User`): using a model to generate the jobs to submit
- *replay users* (class `ReplayUser`): replaying a workload trace given as input
- *feedback users* (class `FeedbackUser`): taking feedback on the status of previous jobs into account when submitting the next one
### Available schedulers
Dynamic submission is supported by all the schedulers inheriting from the class `DynScheduler` i.e., all the schedulers located in the folder `src/scheds`. Some of them support multicore machines while others only support monocore machines.
- monocore schedulers:
- *fcfs*: TBD
- *easy-bf*: TBD
- *fcfs*: jobs scheduled in their order of arrival ("first come first served")
- *easy-bf*: job scheduled in fcfs order, with possibility to execute ("backfill") small jobs that were submitted after if they don't postpone the starting time of the next job
- multicore schedulers:
- *bin_packing*: the scheduler packs the jobs on the least number of multicore machines. Each job runs on only one host but can take several cores
- *bin_packing_energy*: same as *bin_packing*, but saves power by switching off the machines as soon as they are idle and powering them on again when needed
......@@ -48,7 +50,7 @@ ninja -C build # compile the project into the build directory
```
Manually:
TDB...
TBD...
## Run a small instance
Follow the steps to install Batmen. The executable is at the location `build/batmen`. We suppose that you also have [Batsim] installed on your machine (follow the installation guide [here](https://batsim.readthedocs.io/en/latest/installation.html#installation)).
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment