This is the first in a short series of performance blogs for MQ on z/OS to draw your attention to documents relating to performance updates. The documents are hosted on the mqperf github repository.
In 2017, IBM announced the new IBM z14 mainframe server, and what follows is an overview of what our performance expectations were, plus the actual results of moving our MQ performance sysplex from z13 to z14.
The z14 offers many improvements over z13 but of particular interest to us were:
- Higher processor speed.
- Increased number of processors, both in total for the machine and on each CPC drawer.
- Cryptographic improvements and introduction of Crypto Express6S.
When setting expectations of any performance improvements on z/OS, the first place to look is typically the IBM Large System Performance Reference (LSPR) website. Consideration should be given to the complexity of the workloads being run – and the measurements that we run vary significantly from very simple to complex, so there wasn’t a single percentage value that we could apply to our workloads. Despite this, we used a rule of thumb of 10% reduction in transaction cost – although of course, some measurements could be more and some could be less.
Higher processor speed and increased number of processors .. on each CPC drawer
Generally MQ for z/OS performed as expected based on the expectations from LSPR. As you might expect, there were some exceptions but these were largely measurements that were not limited solely by CPU. For example with improvements to cryptographic workloads, we saw workloads using channels protected by SSLCIPH specifications or queues protected by AMS policies significantly out-perform expectations. Similarly, channel workloads using compression types “ZLIBFAST” and “ZLIBHIGH”¬† saw reduced cost of up to 20%.
Scalability of our workloads also showed a significant improvement when running on LPARs with large numbers of processors. The following chart shows the transaction rate for a workload using non-persistent out-of-syncpoint messaging.
In this chart we see that as the z13 transaction rate peaks with 16 processors and then begins to tail off as the number of processors is increased to 32, where as the z14 continues to increase and levels out with 32 processors. In the z13 measurements there is significantly more impact from cache contention which translates into increased transaction cost.
Cryptographic improvements and the introduction of Crypto Express6S
The z14 benefits from some significant improvements in the cryptographic area; Crypto Express6S is the next generation of the Crypto Express feature, and is used by MQ for signing and verifying certificates; and CPACF (CP Assist for Cryptographic Function) which is used for encryption and decryption of data. The blog titled “What’s the difference between a CPACF and a Crypto Express”¬† blog explains the usage in more detail.
MQ is able to use these features in 2 main areas:
- MQ Channels protected using SSLCIPH specifications
- MQ Queues protected using Advanced Message Security (AMS) policies.
In addition the cost of using data set encryption with the MQ archive logs is significantly reduced on z14.
MQ Channels protected using SSLCIPH specifications
Negotiating the secret key, which occurs at channel start and each time the amount of data flowing over the channel exceeds the value set in attribute SSLRKEYC, using Crypto Express6S¬† means that the work performed by the feature should be completed more quickly than on earlier generation Crypto Express features. In our measurements with frequent secret key processing, we saw a throughput increase of 5-14% when using Crypto Express6S rather than Crypto Express5S. The use of Crypto Express6S is unlikely to reduce the processing costs.
When the improvements in CPACF on z14 are factored in, z14 using Crypto Express6S achieved transaction cost 20% lower than the equivalent measurement on z13 using Crypto Express5S when secret key re-negotiation occurs every 1MB.
Using protected channels with minimal secret key re-negotiation on z14 achieved a reduction in transaction cost of up to 28% than the equivalent measurement on z13.
MQ Queues protected using Advanced Message Security policies
In our measurements the cost of protecting messages using AMS policies was reduced significantly;
- AMS Integrity – up to 13% lower cost on z14 than z13.
- AMS Privacy – up to 12% lower cost on z14.
- AMS Confidential – up to 42% lower cost on z14.
We also saw benefits from the move of Storage Class Memory from Flash Express (SSD on PCIe) to Virtual Flash Memory, but information on this and much more is available in the full report here. For this report and other performance documents, please visit the mqperf github repository.