#

How are job priorities within a queue determined?

All public queues on Odyssey employ 'Fairshare' queueing, in which a job's priority within a queue is calculated as follows:

dynamic priority = number_shares / (cpu_time * CPU_TIME_FACTOR + run_time*RUN_TIME_FACTOR + (1 +
job_slots)*RUN_JOB_FACTOR)

cpu_time

The cumulative CPU time used by the user (measured in hours). LSF calculates the cumulative CPU time using the actual (not normalized) CPU time and a decay factor such that 1 hour of recently used CPU time decays to 0.1 hours after an interval of time specified by HIST_HOURS.

run_time

The total run time of running jobs (measured in hours).

job_slots

The number of job slots (processors) reserved and in use.

At the moment, CPU_TIME_FACTOR=RUN_TIME_FACTOR=0.7 and RUN_JOB_FACTOR=3

number_shares is the same for all users.

On Odyssey, HIST_HOURS is set to 48 hours.

CC BY-NC 4.0 This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License. Permissions beyond the scope of this license may be available at Attribution.