John Ticic -

The System z Integrated Information Processor (zIIP) is a specialty processor that can be used to relieve the general purpose processors by offloading some Db2 and other z/OS workloads. zIIP processors are typically less expensive to purchase and also run at full speed on sub-capacity CPU models. An additional advantage is that software usage rating (e.g.rolling 4-hour average MSUs) is not affected since IBM does not impose software charges on workloads that are running on a zIIP.

Despite these benefits, zIIP processor usage may not always be what one hopes for. This blog aims to educate readers on how to investigate zIIP data, how to enable Simultaneous Multi-Threading, and what may cause zIIP processors to spill over to general purpose processors.

zIIP Data Sources

There are numerous sources of performance data on z/OS. The RMF type 70.1 (processors) and type 72.3 (Workload activity) provide performance and workload measurement for all processors. SMF type 30 (Common Address Space) provides accounting data on various aspects of address spaces using zIIP resources.

zIIP Utilization

zIIP eligible work will try to execute on a zIIP processor. If there are insufficient resources available (e.g. the zIIP processor is busy), then work may be dispatched on a general purpose processor.

This mechanism can be controlled at the system level by using the IIPHONORPRIORITY setting in IEAOPTxx in SYS1.PARMLIB. At the WLM Service Class level, use Honor Priority to control whether work is allowed to “spill over” onto a general purpose processor.

Be aware that if general CPs are used for zIIP work, this may affect the rolling 4-hour average if it occurs during the peak time. If Tailored Fit Pricing is used, this “spill-over” CP work will be counted towards the billable MSU monthly consumption. This shows that it is important to be aware of zIIP utilization and if zIIP eligible work is running on general purpose processors.

SMT and zIIPs

zIIP processors are capable of running multiple threads of work simultaneously. SMT (Simultaneous MultiThreading) is supported on all current zSeries processors. The prerequisites for enabling SMT for zIIPs are:

  • Set PROCVIEW CORE in the SYS1.IPLPARM(LOADxx) member
  • Set HIPERDISPATCH=YES in the SYS1.PARMLIB(IEAOPTxx) member
  • Set MT_ZIIP_MODE=2 in the SYS1.PARMLIB(IEAOPTxx) member

Be aware that setting PROCVIEW to CORE will result in RMF reporting on CPU cores (threads) and not on processors.

zIIP Observations

Based on the RMF 70.1 data, we can observe the zIIP utilization. In Figure 1, we can see the utilization based on processor cores.

zIIP Dispatched work on Cores

Figure 1: zIIP Dispatched work on Cores

 

When the zIIP processors are busy and IIPHONORPRIOIRTY has been set to YES, work may overflow to run on general purpose processors. Figure 2 shows a spike where the zIIP processors were unable to execute the zIIP eligible workload.

zIIP work running on a CP

Figure 2: zIIP work running on a CP

 

When RMF performance data is combined, IntelliMagic Vision allows a drill-down to the WLM Service Classes that are executing at that time. This allows you to determine which workload is now running on a CP instead of a zIIP processor. See Figure 3 for an example of a drill-down to Service Class.

Note: This drill-down is only showing WLM Service Class work that is zIIP eligible but running on a general CP. Other drill-downs exist for showing all work running on zIIP processors.

CP execution by WLM Service Class

Figure 3: CP execution by WLM Service Class

 

SMT and zIIPs

When SMT is turned on for zIIP processors, there are additional metrics that can be observed in RMF. Some of the metrics are:

  • Capacity Factor: Describes the actual current efficiency of multithreading with 2 threads compared to a single thread. This value shows completed work relative to a single thread.
  • Maximum Capacity Factor: How much work can complete on both threads relative to non-SMT mode.
  • Productivity: The capacity in use relative to the total capacity.

Productivity = CF / mCF
Figure 4 shows us the zIIP thread utilization for a sample time frame (1 day). We can see that both threads are being used (yellow and blue areas).

zIIP Multithreading Utilization

Figure 4: zIIP Multithreading Utilization

 

Figure 5 shows the zIIP Capacity Factor and zIIP maximum Capacity Factor compared to the dispatched work (shown in MIPS).

zIIP Capacity Factors vs. MIPS

Figure 5: zIIP Capacity Factors vs. MIPS

 

Conclusion

zIIP processor usage may not always be what one hopes for. Depending on the workload and environment, work may “spill over” to general purpose processors. On modern hardware, turning on SMT may bring additional zIIP resources online when they are needed. What is needed is a solid performance reporting software such as IntelliMagic Vision to highlight zIIP usage and support further detailed investigations when problems arise.

This article's author

John Ticic
Senior z/OS Consultant
Read John's bio

Share this blog

Throwing out the Rolling Four-Hour Average with Tailored Fit Pricing, Enterprise Consumption

Related Resources

Blog

Why Am I Still Seeing zIIP Eligible Work?

zIIP-eligible CPU consumption that overflows onto general purpose CPs (GCPs) – known as “zIIP crossover” - is a key focal point for software cost savings. However, despite your meticulous efforts, it is possible that zIIP crossover work is still consuming GCP cycles unnecessarily.

Read more
Blog

Top ‘IntelliMagic zAcademy’ Webinars of 2023

View the top rated mainframe performance webinars of 2023 covering insights on the z16, overcoming skills gap challenges, understanding z/OS configuration, and more!

Read more
Blog

Mainframe Software Cost Savings Playbook

Learn how to effectively reduce mainframe costs and discover strategies for tracking IBM software licensing metrics to minimize expenses.

Read more

Go to Resources

Book a Demo or Connect With an Expert

Discuss your technical or sales-related questions with our mainframe experts today