Skip to content
Snippets Groups Projects
Commit 85e26609 authored by Roman Sliva's avatar Roman Sliva
Browse files

Update job-priority.md - omit execution

parent e55b9676
No related branches found
No related tags found
No related merge requests found
Pipeline #36736 passed with warnings
# Job Scheduling # Job Scheduling
## Job Execution Priority ## Job Priority
The scheduler gives each job an execution priority and then uses this job execution priority to select which job(s) to run. The scheduler gives each job an priority and then uses this job priority to select which job(s) to run.
Job execution priority is determined by these job properties (in order of importance): Job priority is determined by these job properties (in order of importance):
1. queue priority 1. queue priority
1. fair-share priority 1. fair-share priority
...@@ -14,7 +14,7 @@ Job execution priority is determined by these job properties (in order of import ...@@ -14,7 +14,7 @@ Job execution priority is determined by these job properties (in order of import
Queue priority is the priority of the queue in which the job is waiting prior to execution. Queue priority is the priority of the queue in which the job is waiting prior to execution.
Queue priority has the biggest impact on job execution priority. The execution priority of jobs in higher priority queues is always greater than the execution priority of jobs in lower priority queues. Other properties of jobs used for determining the job execution priority (fair-share priority, eligible time) cannot compete with queue priority. Queue priority has the biggest impact on job priority. The priority of jobs in higher priority queues is always greater than the priority of jobs in lower priority queues. Other properties of jobs used for determining the job priority (fair-share priority, eligible time) cannot compete with queue priority.
Queue priorities can be seen [here][a]. Queue priorities can be seen [here][a].
...@@ -30,11 +30,11 @@ Usage decays, halving at intervals of 7 days. ...@@ -30,11 +30,11 @@ Usage decays, halving at intervals of 7 days.
The job age factor represents the length of time a job has been sitting in the queue and eligible to run. The job age factor represents the length of time a job has been sitting in the queue and eligible to run.
Job age has the least impact on execution priority. Job age has the least impact on priority.
### Formula ### Formula
Job execution priority is calculated as: Job priority is calculated as:
---8<--- "job_sort_formula.md" ---8<--- "job_sort_formula.md"
...@@ -42,16 +42,16 @@ Job execution priority is calculated as: ...@@ -42,16 +42,16 @@ Job execution priority is calculated as:
The scheduler uses job backfilling. The scheduler uses job backfilling.
Backfilling means fitting smaller jobs around the higher-priority jobs that the scheduler is going to run next, in such a way that the higher-priority jobs are not delayed. Backfilling allows us to keep resources from becoming idle when the top job (the job with the highest execution priority) cannot run. Backfilling means fitting smaller jobs around the higher-priority jobs that the scheduler is going to run next, in such a way that the higher-priority jobs are not delayed. Backfilling allows us to keep resources from becoming idle when the top job (the job with the highest priority) cannot run.
The scheduler makes a list of jobs to run in order of execution priority. The scheduler looks for smaller jobs that can fit into the usage gaps around the highest-priority jobs in the list. The scheduler looks in the prioritized list of jobs and chooses the highest-priority smaller jobs that fit. Filler jobs are run only if they will not delay the start time of top jobs. The scheduler makes a list of jobs to run in order of priority. The scheduler looks for smaller jobs that can fit into the usage gaps around the highest-priority jobs in the list. The scheduler looks in the prioritized list of jobs and chooses the highest-priority smaller jobs that fit. Filler jobs are run only if they will not delay the start time of top jobs.
This means that jobs with lower execution priority can be run before jobs with higher execution priority. This means that jobs with lower priority can be run before jobs with higher priority.
!!! note !!! note
It is **very beneficial to specify the timelimit** when submitting jobs. It is **very beneficial to specify the timelimit** when submitting jobs.
Specifying more accurate timelimit enables better scheduling, better execution times, and better resource usage. Jobs with suitable (small) timelimit can be backfilled - and overtake job(s) with a higher priority. Specifying more accurate timelimit enables better scheduling, better times, and better resource usage. Jobs with suitable (small) timelimit can be backfilled - and overtake job(s) with a higher priority.
---8<--- "mathjax.md" ---8<--- "mathjax.md"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment