Jobs may be categorized under six different levels of prioritization. For the simple case where each job can be given a distinct priority, and no categories are required, an already queued job's priority may be set with the condor_prio command; see the example in the manual section 2.6.4, or the condor_prio manual page for details. This single category changes the value of job ClassAd attribute
The six category levels are defined by the job ClassAd attributes:
PreJobPrio1 PreJobPrio2 JobPrio PostJobPrio1 PostJobPrio2 QDate
The set of highest priority jobs from the user are those that define
PreJobPrio1. This set of jobs are compared only with other jobs that define this attribute. These jobs are run first, and in the ordering given by the value of
PreJobPrio1. For those jobs that have the same value of
PreJobPrio1, the value for
PreJobPrio2 is used. And, the comparison continues through the other four levels where there are matching values.
After any and all jobs that define
PreJobPrio1 are prioritized,
PreJobPrio2 is considered on any remaining jobs queued for this user. Those jobs defining
PreJobPrio2 are ordered, with the comparison continuing through the remaining levels where there are matching values of attributes.
This comparison algorithm continues at each category level, until
QDate does ordering by the time at which the job entered the queue. The job in the queue the longest has highest priority.
One or more of these attributes, other than
QDate may be set in the a job's submit description file by adding a line that defines the ClassAd attribute. For example, consider the set of A jobs submitted by user chris. These A jobs are to be given the highest priority of all of chris' jobs. Assume the submit description file for job A1 includes
+PreJobPrio1 = 5 +JobPrio = 20
The submit description file for job A2 includes
+PreJobPrio1 = 5 +JobPrio = 30
Also consider the set of B jobs, also submitted by user chris. These B jobs are prioritized lower than the A jobs. The submit description file for job B1 includes
+PreJobPrio1 = 2
The submit description file for job B2 includes
+PreJobPrio1 = 2
The B jobs will be ordered by
QDate, so assume that B1 was submitted before B2.
The ordering given to these four jobs will be A2 (highest priority), A1, B1, B2 (lowest priority).