With z/OS® Workload
Manager (WLM), work is assigned to a service class. For each service
class, you define both the wanted performance goal and a business
importance of meeting the stated goal.
About this task
Transactional work in a z/OS system
can be defined to run with either transaction response time goals
or can be run with velocity goals. Generally, transaction response
time goals are recommended because they provide more management control.
However, velocity goals work well in many installations for workloads
such as CICS®, IMS, and WebSphere®.
The
WLM service definition of workloads must be defined with knowledge
of all of the workloads that run in the LPAR and the parallel sysplex.
Important: The recommendations for Db2 workloads
might need to be adjusted so they are correctly incorporated into
the overall WLM policy design.
Procedure
To account for Db2 address
spaces in a WLM service definition, apply the following recommendations:
- Place the IRLMPROC address space in SYSSTC dispatching
priority.
This address space manages IRLM locks and latches.
This address space must run at a high dispatching priority that provides
little or no CPU delay.
- Place
the following address spaces, which are critical for efficient system
operation, in the same user-designed service class. This class must
be defined with aggressive performance goals and a high importance:
- ssnmMSTR
- Contains the Db2 system
monitor task and requires an aggressive WLM goal so it can monitor
CPU stalls and virtual storage constraints.
- ssnmDBM1
- Manages Db2 threads and
is used for system services such as page set opening. In data sharing
environments, this address pace is critical for global operations
such as P-lock negotiations, notifies, and global commands.
- The ssnmDIST and WLM-managed stored procedure
address spaces
- Address spaces that run only the Db2 service
tasks and work for Db2 that
is not attributable to a single user. These address spaces typically
place a minimal CPU load on the system. However, they do require minimal
CPU delay to ensure good system-wide performance, and to avoid queuing
of threads.
DDF
workloads, with their higher CPU demands, are controlled by the WLM
service class definitions for the DDF enclave workloads. Similarly,
the higher CPU demands for processing stored procedures, are controlled
by the WLM service class definitions for the workloads that call the
stored procedures.
Important: The
velocity goal of these address spaces must be high enough that new
work and new connections can get started and placed into their own
goal, or the goal of the caller.
- Specify a high importance for the Db2 workloads, typically importance
1.
In every case, the service class with the Db2 address spaces must be set with an understanding
of the overall WLM service definition in use. Use this information
as a guide in setting the Db2 portion
of the overall WLM policy.
- Take the following actions to ensure that the Db2 environment receives the CPU service that
it requires to ensure a well running system:
- Ensure that functions like TCP/IP and VTAM® are defined in SYSSTC.
- If necessary to meet performance objectives, it might be appropriate
to designate certain service classes as CPU Critical. Doing so provides
long-term CPU protection of critical work. When you designate a service
class as CPU critical, you ensure that less important work generally
has a lower dispatch priority than work that is marked CPU critical.
This protection can be valuable for work that is extremely CPU-sensitive.
Generally, having an appropriately set goal for the Db2 service class is all that is required to
ensure a well running system. However, CPU critical protection is
available if needed.
- Set the velocity goal for the Db2 address spaces to be among the highest for
the current LPAR.
The intent is for the Db2 address spaces to be defined so that they
experience little CPU delay. These address spaces must be defined
with a WLM velocity goal.
Typically, these address spaces are
placed together into the same user-defined service class. This user-defined
service class be does not need to be dedicated to these address spaces.
Because they must be defined with a velocity goal, it is important
to set an appropriately high goal set for this workload.
Velocity goals are dependent
on the overall LPAR logical CP configuration, and the amount of processor
capacity allocated to the LPAR. LPARs that have fewer logical CPs
can attain only lower velocities. Whereas, LPARs that have more logical
CPs can obtain higher velocities.
Table 1. Recommended velocity goal based on the number of
central processors per LPAR
Number of CPs defined for the LPAR |
Recommended velocity goal |
1-5 |
50-70 |
6-15 |
60-80 |
More than 15 |
70-90 |
- For LPARs that are constrained by a lack of CPU resources
and have lower priority work that uses Db2,
use blocked workload support.
This
support is most important in an environment where work that uses
Db2 resources runs constrained at
low priorities. The low priority constrained work might hold
Db2 resources required by other,
more important, workloads in the system or sysplex.
For
environments where low dispatch priority Db2 workloads
run in periods of CPU constraint, it might prove beneficial to help
blocked workloads more frequently. Changing the default blocked interval,
(BLWLINTHD in IEAOPTxx), from the default value of 20 seconds to 5-6
seconds, might provide better overall system throughput at high utilizations.
However, long-term reliance on blocked workload support to accommodate
CPU saturated systems is not recommended.