Modernization Hub

Dispatching Priority

Enhanced Definition

Dispatching priority is a numerical value assigned to an address space, task, or work unit in z/OS that determines its precedence for CPU allocation. It dictates the order in which the z/OS dispatcher gives control of the CPU to ready tasks, directly impacting system responsiveness and throughput. Higher numerical values generally indicate higher priority. Dispatching priority is a numerical value assigned to a unit of work (such as an address space, enclave, TCB, or SRB) in z/OS that determines its precedence for CPU allocation. A higher dispatching priority value indicates that the associated work unit is more important and will be given preference by the z/OS dispatcher when competing for CPU cycles. It is a fundamental mechanism for managing system responsiveness and workload performance.

Key Characteristics

    • Numerical Scale: Typically ranges from 0 to 255 (or 0 to 254 for user tasks, 255 for system tasks), with higher numbers representing greater urgency for CPU access.
    • Preemption: A task with a higher dispatching priority can preempt a lower-priority task that is currently executing on a CPU, allowing the higher-priority task to gain control.
    • Dynamic vs. Static: Priorities can be statically assigned (e.g., via JOB statement parameters like PRTY or DP) or dynamically managed by the Workload Manager (WLM) based on defined service goals.
    • Resource Contention: Directly influences which tasks receive CPU resources first when multiple tasks are ready to run, making it critical for managing system performance.
    • System vs. User Tasks: Critical z/OS system tasks often run at very high, fixed dispatching priorities to ensure system stability and responsiveness.
    • WLM Control: In modern z/OS environments, the Workload Manager (WLM) is the primary mechanism for dynamically adjusting dispatching priorities to meet defined service goals.

Use Cases

    • Online Transaction Processing (OLTP): CICS regions and associated DB2/IMS tasks are typically assigned high dispatching priorities to ensure rapid transaction response times for end-users.
    • Critical System Services: Core z/OS components like JES2/JES3, VTAM, RMF, and system address spaces operate at the highest priorities to maintain system integrity and availability.
    • Batch Processing: Long-running, non-interactive batch jobs are often assigned lower dispatching priorities to prevent them from monopolizing CPU resources and impacting online systems.
    • Interactive Users (TSO): TSO users might have moderate priorities to ensure acceptable response times for interactive development, testing, and system management activities.
    • Database Management Systems: DB2 DBM1 and IRLM address spaces, or IMS control regions, are given high priorities to ensure efficient database operations and support dependent regions.

Related Concepts

Dispatching priority is fundamental to z/OS workload management and is tightly integrated with the Workload Manager (WLM), which dynamically adjusts priorities to achieve defined service goals. Each address space and its constituent tasks (represented by Task Control Blocks - TCBs) have an associated dispatching priority, which the z/OS CPU dispatcher uses as a primary input for scheduling. It directly influences how CPU resources are allocated among competing workloads, working in conjunction with other resource management mechanisms like CPU capping and resource groups.

Best Practices:
  • Leverage WLM: Always use the Workload Manager (WLM) to manage dispatching priorities dynamically based on service goals rather than relying on static, fixed priorities.
  • Define Clear Service Goals: Ensure that WLM service goals are clearly defined for all critical workloads (e.g., CICS, DB2, IMS) to enable WLM to prioritize them effectively.
  • Monitor Priority Effectiveness: Regularly use RMF, SMF, and WLM reports to monitor dispatching priority effectiveness, identify bottlenecks, and ensure that critical workloads are receiving adequate CPU.
  • Avoid Over-Prioritization: Be cautious about assigning excessively high priorities to non-critical tasks, as this can lead to resource starvation for other important workloads and potentially cause priority inversion.
  • Balance Workloads: Design your system and WLM policy to achieve a balance, ensuring that while critical workloads are prioritized, less critical but still important work can progress without undue delay.

Related Vendors

HP

5 products

SumTotal Systems

2 products

Broadcom

235 products

ADPAC Corporation

5 products

IBM

646 products

Candle Corporation

16 products

Related Categories

Performance

171 products

CASE/Code Generation

19 products

Tools and Utilities

519 products

Operating System

154 products