Quoting Yuri D'Elia <[email protected]>:


On 02/20/2014 07:21 PM, Moe Jette wrote:

Slurm uses what is known as a conservative backfill scheduling
algorithm. No job will be started that adversely impacts the expected
start time of _any_ higher priority job. The scheduling can also be
effected by a job's requirements for memory, generic resources,
licenses, and resource limits.

I'm curious whether this could be changed with a setting to disregard
the expected start time of higher priority jobs.

Given that giving/estimating completion times of jobs is akin to sorcery
in many cases, it would be beneficial in my case to always
under-estimate the time limit.

I'm wondering if anybody is running with a overly-conservative TimeLimit
for jobs, and abusing OverTimeLimit [very high value] to achieve this.

I know I would definitely use a EstimatedTimeLimit parameter for
improved backfilling and give an absolute ceiling with TimeLimit (if I
could).

I haven't had time to work on this, but one idea would be estimate a job's run time based upon historic data and use that as a basis for backfill scheduling. I suspect the results would be better responsiveness and higher utilization than when basing scheduling decisions upon the user's time limit.

Moe Jette
SchedMD

Reply via email to