A Julia-based job scheduler and workload manager inspired by Slurm, PBS and Crontab.
MIT License
Bot releases are hidden (Show)
Published by cihga39871 about 2 months ago
SCHEDULER_UPDATE_SECOND
and set_scheduler_update_second()
are no longer required. Changing them will have no effect on the scheduler.scheduler_need_action()
is used to trigger update of the scheduler. SCHEDULER_REACTIVATION_TASK[]
is used to trigger scheduler_need_action()
every 0.5 second because a regular check is needed for future jobs (defined by j::Job.schedule_time
).Job
's fields stdout_file::String
and stderr_file::String
is changed to stdout::Union{IO,AbstractString,Nothing}
and stderr::Union{IO,AbstractString,Nothing}
.format_stdxxx_file(x)
.set_group_seperator(group_seperator::Regex=r": *")
. A group name will be given to Job
. It is useful when showing progress meters.wait(j::Job)
and wait(js::Vector{Job})
.Published by cihga39871 5 months ago
JobSchedulers v0.9.0
Full Changelog: https://github.com/cihga39871/JobSchedulers.jl/compare/v0.8.4...v0.9.0
Published by cihga39871 over 1 year ago
Published by cihga39871 over 1 year ago
Published by cihga39871 over 1 year ago
Published by cihga39871 over 1 year ago
Published by cihga39871 over 1 year ago
Published by cihga39871 almost 2 years ago
Published by cihga39871 almost 2 years ago
Full Changelog: https://github.com/cihga39871/JobSchedulers.jl/compare/v0.7.3...v0.7.6
Published by cihga39871 almost 2 years ago
v0.7.2
scheduler_status()
when SCHEDULER_TASK is not defined.v0.7.1
v0.7.0
Remove dependency DataFrames and change to PrettyTables. The loading time of DataFrames is high.
Feature: now a Job is sticky to one thread (>1). JobSchedulers allocates and manuages it. The SCHEDULER_TASK is sticky to thread 1.
Feature: queue(...)
is rewritten.
Feature: Better pretty print of Job and queue().
Feature: New function: wait_queue()
waits for all jobs in queue()
become finished.
Feature: New function: set_scheduler()
Fix: set_scheduler_max_cpu(percent::Float64)
: use default_ncpu() if error.
Change: SCHEDULER_UPDATE_SECOND to 0.05 from 0.6
v0.6.12
v0.6.11
queue()
when updating queue: use lock within DataFrames.DataFrame(job_queue::Vector{Job})
.v0.6.10
v0.6.9