SLURM priority information
Detailed information on how SLURM assigns priority to jobs can be found here. The basic calculation is described in the table below.
Job_priority = (PriorityWeightAge) * (age_factor) + (PriorityWeightFairshare) * (fair-share_factor) + (PriorityWeightJobSize) * (job_size_factor) + (PriorityWeightPartition) * (partition_factor) + (PriorityWeightQOS) * (QOS_factor) + SUM(TRES_weight_cpu * TRES_factor_cpu, TRES_weight_<type> * TRES_factor_<type>, ...)
"All of the factors in this formula are floating point numbers that range from 0.0 to 1.0. The weights are unsigned, 32 bit integers. The job's priority is an integer that ranges between 0 and 4294967295. The larger the number, the higher the job will be positioned in the queue, and the sooner the job will be scheduled. A job's priority, and hence its order in the queue, can vary over time. For example, the longer a job sits in the queue, the higher its priority will grow when the age_weight is non-zero."[1]
Here is an example priority calculation from the slurmctld.log:
2018-03-29T03:24:54.430] Fairshare priority of job 1601032 for user Cleatus in acct default is 2**(-0.111913/0.002453) = 0.042337 [2018-03-29T03:24:54.430] Weighted Age priority is 0.251721 * 16800 = 4228.92 [2018-03-29T03:24:54.430] Weighted Fairshare priority is 0.042337 * 25000 = 1058.42 [2018-03-29T03:24:54.430] Weighted JobSize priority is 0.996510 * 10000 = 9965.10 [2018-03-29T03:24:54.430] Weighted Partition priority is 0.666667 * 30000 = 20000.00 [2018-03-29T03:24:54.430] Weighted QOS priority is 0.000000 * 25000 = 0.00 [2018-03-29T03:24:54.430] Job 1601032 priority: 4228.92 + 1058.42 + 9965.10 + 20000.00 + 0.00 + 0 - 2500 = 32752.49
See the SLURM button on the left for the sprio man page for more information.
The output below was created with the following command:
sprio -o "%.15i %.8u %.10Y %.10A %.10F %.10J %.10P"
Thu Oct 7 14:45:02 EDT 2021 JOBID USER PRIORITY AGE FAIRSHARE JOBSIZE PARTITION 464859 mdhannig 16324 5164 0 9960 1200 464902 mdhannig 16307 5147 0 9960 1200 464945 mdhannig 16297 5135 0 9963 1200 506208 gandhiz 14953 1684 0 9969 3300 506203 gandhiz 14953 1684 0 9969 3300 506198 gandhiz 14953 1684 0 9969 3300 506193 gandhiz 14953 1684 0 9969 3300 506246 gandhiz 14952 1683 0 9969 3300 506241 gandhiz 14952 1683 0 9969 3300 506236 gandhiz 14952 1683 0 9969 3300 506227 gandhiz 14952 1683 0 9969 3300 506223 gandhiz 14952 1684 0 9969 3300 506218 gandhiz 14952 1684 0 9969 3300 506213 gandhiz 14952 1684 0 9969 3300 506284 gandhiz 14951 1682 0 9969 3300 506280 gandhiz 14951 1682 0 9969 3300 506275 gandhiz 14951 1682 0 9969 3300 506270 gandhiz 14951 1682 0 9969 3300 506265 gandhiz 14951 1682 0 9969 3300 506260 gandhiz 14951 1683 0 9969 3300 506255 gandhiz 14951 1683 0 9969 3300 506251 gandhiz 14951 1683 0 9969 3300 506322 gandhiz 14950 1681 0 9969 3300 506317 gandhiz 14950 1681 0 9969 3300 506312 gandhiz 14950 1681 0 9969 3300 506308 gandhiz 14950 1681 0 9969 3300 506303 gandhiz 14950 1682 0 9969 3300 506294 gandhiz 14950 1682 0 9969 3300 506289 gandhiz 14950 1682 0 9969 3300 506360 gandhiz 14949 1680 0 9969 3300 506351 gandhiz 14949 1680 0 9969 3300 506346 gandhiz 14949 1680 0 9969 3300 506342 gandhiz 14949 1680 0 9969 3300 506337 gandhiz 14949 1681 0 9969 3300 506332 gandhiz 14949 1681 0 9969 3300 506327 gandhiz 14949 1681 0 9969 3300 506394 gandhiz 14948 1679 0 9969 3300 506389 gandhiz 14948 1679 0 9969 3300 506384 gandhiz 14948 1679 0 9969 3300 506379 gandhiz 14948 1679 0 9969 3300 506374 gandhiz 14948 1680 0 9969 3300 506370 gandhiz 14948 1680 0 9969 3300 506365 gandhiz 14948 1680 0 9969 3300 506432 gandhiz 14947 1678 0 9969 3300 506428 gandhiz 14947 1678 0 9969 3300 506423 gandhiz 14947 1678 0 9969 3300 506418 gandhiz 14947 1678 0 9969 3300 506413 gandhiz 14947 1678 0 9969 3300 506408 gandhiz 14947 1679 0 9969 3300 506403 gandhiz 14947 1679 0 9969 3300 506399 gandhiz 14947 1679 0 9969 3300 506465 gandhiz 14946 1677 0 9969 3300 506461 gandhiz 14946 1677 0 9969 3300 506456 gandhiz 14946 1677 0 9969 3300 506451 gandhiz 14946 1677 0 9969 3300 506446 gandhiz 14946 1678 0 9969 3300 506441 gandhiz 14946 1678 0 9969 3300 506508 gandhiz 14945 1676 0 9969 3300 506503 gandhiz 14945 1676 0 9969 3300 506498 gandhiz 14945 1676 0 9969 3300 506493 gandhiz 14945 1676 0 9969 3300 506489 gandhiz 14945 1676 0 9969 3300 506484 gandhiz 14945 1677 0 9969 3300 506475 gandhiz 14945 1677 0 9969 3300 506470 gandhiz 14945 1677 0 9969 3300 506513 gandhiz 14944 1676 0 9969 3300 510396 gandhiz 13700 432 0 9969 3300 510395 gandhiz 13700 432 0 9969 3300 510394 gandhiz 13700 432 0 9969 3300