All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog. Batsched adheres to Semantic Versioning and its public API is the following.
- Batched's command-line interface.
- The format of Batsched's input files.
- Important note: Changes in the Batsim protocol does not impact Batsched's public API.
1.4.0 - 2020-07-29 - For Batsim v4.0.0
- New
fcfs
algorithm (copied fromfcfs_fast
) that takes into account the resources selector given in parameter.
- The
easy_bf_fast
did not try to backfill previously submitted jobs in many events (when the priority job could not be executed).
1.3.0 - 2019-01-15 - For Batsim v3.0.0
- CLI: logging verbosity can now be set with
--verbosity
.
- Dependencies: added intervalset.
- Dependencies: added loguru.
1.2.1 - 2018-07-03 - For Batsim v2.0.0
- The
sleeper
algorithm continued to send requests when the simulation was finished, which should now be fixed. - The
easy_bf_fast
algorithm rejected jobs that requested all the machines if they could not be executed directly after being submitted (issue 6).
- The
submitter
algorithm now also sets metadata for usual jobs.
1.2.0 - 2018-04-09 - For Batsim v2.0.0
- New algorithms:
easy_bf_fast
, which is an efficient (usual) implementation of EASY backfilling. In contrast with the robust and generaleasy_bf
implementation, this one does floating-point computation, only handles jobs will walltimes, use ad-hoc structures for its simple backfilling mechanism (rather than a general-purpose 2D partition), only handles the FCFS queue order (rather than sorting the queue at each event), uses the first reservation of the priority job (rather than compressing the reservation as soon as possible at each event), and tries to only call the needed code depending on which event occured.fcfs_fast
, which is essentiallyeasy_bf_fast
without backfilling.
1.1.0 - 2018-03-03 - For Batsim v2.0.0
- Added minimal bash completion via taywee/args.
- Added
--version
option. - New algorithms:
- Crasher, whose purpose is to crash :). This is useful to test execution managers.
- EnergyWatcher, whose purpose is just to query the energy consumption to Batsim
- Random, whose purpose is notably to test time-sharing.
- Sequencer, which is very simple and whose purpose is to be the base of other testing algorithms.
- WaitingTimeEstimator, whose purpose is only to test the support of the
estimate_waiting_time
QUERY.
- Batsched arguments are now parsed by taywee/args rather than boost::po.
- Support Batsim version 2.0.0:
- two-way QUERY/REPLY (+estimate_waiting_time)
- SET_JOB_METADATA
- Changed algorithms:
- Conservative BF now supports the
estimate_waiting_time
QUERY. - Filler now supports a custom mapping and setting job metadata.
- Submitter now supports setting job metadata.
- Conservative BF now supports the
Initial release.