The IBM zIIP is a dedicated specialty processor designed to operate asynchronously with mainframe general processors. The IIP in zIIP stands for Integrated Information Processor, but that doesn’t really define what the zIIP is or how it can best be used.
When you use zIIPs, some percentage of your mainframe workload can be redirected off the general processors onto the zIIP specialty processor. The primary reason for doing this is that software charges are not imposed on workloads that run on the zIIP. So, using zIIPs can reduce the overall cost of running your mainframe environment.
But only certain types of workloads are candidates for running on the zIIP. In previous articles, I have discussed some of the workloads that can be redirected to zIIPs. In this article, we’ll look at five of the best use cases for taking advantage of zIIP processors.
1) Moving to hybrid multi-cloud
Today many organizations are looking to take advantage of cloud computing to improve resiliency, reduce cost, improve scalability, and more. Many large enterprises are pursuing a hybrid multi-cloud approach to their IT infrastructure. Multi-cloud is pretty simple and refers to using more than one cloud computing service. Hybrid implies something heterogeneous in origin or composition. In other words, it is something that is composed of multiple other things. So, when you use the term “hybrid” in conjunction with “multi-cloud,” it implies an IT infrastructure that uses a mix of on-premises and/or private/public cloud resources from multiple providers.
How can zIIPs help to facilitate the adoption of the hybrid multi-cloud?
When you develop new applications, you can access cloud-native services through z/OS Connect RESTful APIs using zIIPs. Modernizing existing z/OS applications for a hybrid cloud environment can be optimized using IBM zIIP processors, z/OS Connect Enterprise Edition (z/OS Connect EE), and IBM z/OS Container Extensions.
IBM z/OS Connect EE provides RESTful API access to z/OS applications and data hosted in IBM Z subsystems (e.g., CICS, IMS, IBM MQ, and Db2). It provides concurrent access, through a common interface, for CICS, IMS, IBM MQ, and z/OS applications to call RESTful APIs through z/OS Connect. And z/OS Connect EE is Java-based, so over 99% of the product is eligible to be offloaded to zIIP.
Furthermore, IBM z/OS Container Extensions (zCX) can be used to deploy Linux applications as Docker containers on z/OS as part of a z/OS workload. zCX is an enabler to modernize your existing z/OS applications for hybrid cloud. Now, these applications can call native Linux microservices from a Docker container on Z to deliver new capabilities and applications to users. And the z/CX address spaces are zIIP eligible, as is most zCX processing, including Docker containers deployed within zCX. Some zCX processing will be dispatched onto standard processors, but the bulk of the processor cycles can be executed on zIIPs
2) Embracing digital transformation
Digital transformation refers to the process of integrating digital technology into all areas of an organization’s operations, fundamentally changing how it operates and delivers value to customers. It involves leveraging the power of technology to create new business models, products, and services and to optimize existing processes, operations, and culture.
Digital transformation typically involves the use of technologies such as cloud computing, artificial intelligence, analytics, and other technological advances to drive innovation and improve efficiency. It also involves a shift in mindset and culture within the organization to embrace technology as a core component of its strategy and operations.
The goal of digital transformation is to create a more agile, customer-focused, and data-driven organization that can adapt to changing market conditions and drive growth in the digital age.
So how can zIIP engines help with digital transformation? Again, as with cloud, adopting zCX to containerize applications is one possible transformation. Another significant contribution of zIIPs to digital transformation is their ability to run Java programs. By running Java, as opposed to say, COBOL programs, the workload can run on a zIIP engine to dramatically reduce costs.
3) Improving system resiliency
System resiliency refers to the ability of a system to maintain its functionality and performance in the face of unexpected disruptions or challenges. This includes the ability to recover quickly from failures, adapt to changing conditions, and continue to operate at an acceptable level of performance even in the face of stressors such as high traffic or network congestion.
Resilient systems are designed to anticipate and mitigate potential failures or disruptions by incorporating redundancy, fault tolerance, and other measures to minimize the impact of failures. They also can detect and respond to failures or other issues in real time through monitoring and alerting systems.
System resiliency is a critical aspect of ensuring the availability and reliability of mission-critical systems. By building resilient systems, organizations can ensure that they can continue to provide essential services and operations even in the face of unexpected challenges.
How do zIIPs improve the resilience of your systems? With the IBM z15, zIIPs are used with the IBM System Recovery Boost function. System resilience is improved with System Recovery Boost because it considerably reduces the time required to shut down, restart, and process any backlog accumulated during a system outage. It does this by utilizing zIIPs to provide additional processor capacity and throughput for the boosted image.
Also, consider that z/OS Communications Server exploits the zIIP for portions of internet protocol security (IPSec) network encryption and decryption, as well as for select HiperSockets large message traffic.
And finally, z/OS Global Mirror enables DFSMS System Data Mover processing for zIIPs. The system data mover interacts with data storage subsystems and with various advanced copy services functions to move large amounts of data efficiently.
4) Optimizing and lowering the cost of database workloads
The fourth use case is to optimize and reduce the cost of your Db2 application workloads. This use case is most associated with zIIPs because it was the first type of workload that IBM enabled to be processed on zIIPs.
There are several Db2 for z/OS features that are eligible for zIIP processing. Generally speaking, the types of Db2 workload that can run on the zIIP are newer, distributed types of work. Here are some of the Db2 features that are eligible for zIIP processing:
- Utility processing: Certain types of Db2 utility processing can be redirected to run on zIIP processors. For IBM Db2 utilities, up to 100% of the index maintenance tasks for LOAD, REORG, and REBUILD INDEX are zIIP-eligible. Portions of the IBM RUNSTATS utility are also zIIP-eligible. Other ISVs have also made their Db2 utilities zIIP-eligible, so consult the pertinent documentation to verify the aspects of those products that can run on the zIIP.
- SQL queries: SQL requests that use DRDA to access Db2 for z/OS over TCP/IP connections are zIIP eligible, with up to 60% of their instructions running on the zIIP. The same is true for programs issuing native REST calls over HTTP. Db2 parallel query child processes for long-running parallel queries can also be run on zIIPs.
- AI queries: As of Db2 13, portions of queries that use AI functions supported by Db2 (AI_ANALOGY, AI_SEMANTIC_CLUSTER, AI_SIMILARITY) may be eligible for zIIP processing if the request was made via DRDA.
- IDAA data synchronization: When using the IBM Db2 Analytics Accelerator (IDAA) to accelerate analytical queries, data needs to be synchronized between Db2 and the IDAA. Reading data from the log for this integrated synchronization is up to 99% zIIP eligible. Additionally, IBM Db2 Analytics Accelerator Loader runs on zIIPs.
- XML processing: Db2 provides support for XML data, including XML parsing, validation, and transformation, which can be offloaded to zIIP processors to improve performance.
- System processing: Up to 100% of processing for Db2 system agents processing under enclave SRBs that execute in the MSTR address space, DBM1 address space, and DDF address space (except P-lock negotiation processing) are zIIP eligible. These processes include aspects of buffer pool processing, index pseudo-delete processing, and XML multi-version document cleanup processing.
Overall, zIIP processing can help organizations improve the performance and scalability of their Db2 systems while reducing costs by offloading certain types of workloads to specialized processors.
5) Utilizing AI
Several AI features can leverage zIIPs on IBM System z mainframes. By running AI workloads on zIIPs, organizations can take advantage of these specialized processors to improve the performance and scalability of their AI applications.
We already mentioned one example in the previous section. When using the new Db2 AI SQL Data Insights functions, a portion of that workload can possibly be redirected to run on zIIPs.
Another significant consideration for AI is that IBM Watson Machine Learning for z/OS uses zIIP engines to bring AI to your transactional applications by offering an end-to-end machine learning platform that operationalizes predictive models. You can also deploy Apache Spark on IBM zIIPs to run analytics and machine learning on very large, complex data sets.
IBM Db2 AI for z/OS, which builds on Watson Machine Learning for z/OS to apply machine learning to help optimize Db2 for z/OS subsystems, also takes advantage of zIIP engines for system assessment.
Overall, by taking advantage of zIIPs to run AI workloads, organizations can improve the performance and scalability of their AI applications while reducing costs and improving efficiency.
Other use cases
There are, of course, other use cases for zIIPs. Any workload that runs as an SRB enclave can run in a zIIP. But zIIP enablement may require some work (or at least investigation to understand which tools you are using can run on zIIPs).
For a complete list of the IBM software offerings that can exploit zIIPs, you can refer to this IBM document.