Priority
The scheduling priority affects the order in which the jobs are scheduled. The range is 1 to 15.
- Scheduling priority: Determine the order in which jobs are scheduled. The range is 1(low) to 15(top).
- Execution priority: Influence the execution of the job on the remote machine. The range is 1(low) to 15(top).
- For the jobs of a given user, higher priority jobs are scheduled before lower priority ones. However, due to the FairShare mechanism, a lower priority job from one user may be dispatched before a higher priority job of another user.
- A low priority job will be dispatched before a high priority job if the resources for the low priority job are available while the resources for the high priority job are not.
The priority of a job may also be used to decide which job can be preempted. Refer to the Accelerator Administration Guide for more information about Preemption.
- Symbolic Name
- Numerical Level
- Top
- 15
- High
- 8
- Normal
- 4
- Low
- 1
% nc run -p high sleep 10
% nc run -p 12 sleep 10
% nc run -p 12.low sleep 10
The
priority can be set from the GUI using the Retrace Priority Flags dialog from the
console. With the command vsr, you can use the option
-priority (which can be abbreviated to -p) as
shown in the example below:
% vsr -p high target # Use high scheduling priority.
% vsr -p h target # Abbreviated form.
% vsr -p high.high target # Set both scheduling and execution priority
#
# -- This is a fragment of a resources.tcl file.
# -- Typical priority setup.
#
vtk_resourcemap_set Priority:top UNLIMITED
vtk_resourcemap_set Priority:high 50
vtk_resourcemap_set Priority:normal 10
vtk_resourcemap_set Priority:low 2
#
# -- This is another example of a resources.tcl file.
# -- Set unlimited parallelism for any level of priority.
# -- However all LOW priority jobs should go to the linux machines.
#
vtk_resourcemap_set Priority:top UNLIMITED
vtk_resourcemap_set Priority:high UNLIMITED
vtk_resourcemap_set Priority:normal UNLIMITED
vtk_resourcemap_set Priority:low UNLIMITED linux
This default behavior can be modified with the Resource Management mechanism. Before a job is dispatched to taskers, its resource list is augmented with one resource representing the priority. The name of the resource is Priority:xxx, in which xxx represents the selected standard priority level.
The priority-based parallelism can be adjusted by changing the file resources.tcl.
The maximum priority that can be assigned by a particular user may be limited by the policy layer. To do so, edit the policy.tcl file.
Priorities Relative to Previous Run
- Symbolic Name
- Meaning
- Same
- Same priority as before. If not defined, then use low priority.
- Incr
- Increase previous priority by 1, without exceeding the maximum priority for the user.
- Decr
- Decrease previous priority by 1, but no less than low priority.
% vsr -p same -set All:drc
% nc rerun -p incr 000123456
Execution Priority
niceValue = 8 - executionPriority;