IBM CICS Performance Series: CICS TS for z/OS V5 Performance Report

Book description

This IBM Redbooks® publication gives a broad understanding of several important concepts that are used when describing IBM CICS Transaction Server (TS) for IBM z/OS (CICS TS) performance. This publication also describes many of the significant performance improvements that can be realized by upgrading your environment to the most recent release of CICS TS.

This book targets the following audience:


  • Systems Architects wanting to understand the performance characteristics and capabilities of a specific CICS TS release.
  • Capacity Planners and Performance Analysts wanting to understand how an upgrade to the latest release of CICS TS affects their environment.
  • Application Developers wanting to design and code highly optimized applications for deployment into a CICS TS environment.

This book covers the following topics:


  • A description of the factors that are involved in the interaction between IBM z® Systems hardware and a z/OS software environment.
  • A definition of key terminology that is used when describing the results of CICS TS performance benchmarks.
  • A presentation of how to collect the required data (and the methodology used) when applying Large Scale Performance Reference (LSPR) capacity information to a CICS workload in your environment.
  • An outline of the techniques that are applied by the CICS TS performance team to achieve consistent and accurate performance benchmark results.
  • High-level descriptions of several key workloads that are used to determine the performance characteristics of a CICS TS release.
  • An introduction to the open transaction environment and task control block (TCB) management logic in CICS TS, including a reference that describes how several configuration attributes combine to affect the behavior of the CICS TS dispatcher.
  • Detailed information that relates to changes in performance characteristics between successive CICS TS releases, covering comparisons that relate to CICS TS V4.2, V5.1, V5.2, V5.3, V5.4, and V5.5.
  • The results of several small performance studies to determine the cost of using a specific CICS functional area.

Table of contents

  1. Front cover
  2. Notices
    1. Trademarks
  3. Preface
    1. Authors
    2. Now you can become a published author, too!
    3. Comments welcome
    4. Stay connected to IBM Redbooks
  4. Summary of changes
    1. August 2019, Third Edition
    2. March 2018, Second Edition
  5. Part 1 CICS TS for z/OS performance concepts
  6. Chapter 1. Performance terminology
    1. 1.1 CPU Measurement Facility
    2. 1.2 Relative nest intensity
      1. 1.2.1 Memory hierarchy and nest
      2. 1.2.2 Factors that can influence RNI
    3. 1.3 Large Systems Performance Reference
      1. 1.3.1 External throughput rate
      2. 1.3.2 Internal throughput rate
      3. 1.3.3 ITR and ETR relationship
      4. 1.3.4 LSPR ITR ratios
    4. 1.4 Relating LSPR values to a CICS workload
      1. 1.4.1 LSPR alternative
  7. Chapter 2. Test methodology
    1. 2.1 Workloads
    2. 2.2 Workload design
    3. 2.3 Repeatable measurements
      1. 2.3.1 Repeatability for Java workloads
    4. 2.4 Driving the workload
    5. 2.5 Summary of performance monitoring tools
      1. 2.5.1 RMF Monitor I
      2. 2.5.2 RMF Monitor III
      3. 2.5.3 CICS TS statistics
      4. 2.5.4 CICS TS performance class monitoring
      5. 2.5.5 Hardware instrumentation counters and samples
    6. 2.6 Collecting performance data
      1. 2.6.1 Collecting Java performance data
  8. Chapter 3. Workload descriptions
    1. 3.1 Regression testing
    2. 3.2 Data Systems Workload
      1. 3.2.1 DSW static routing
      2. 3.2.2 DSW dynamic routing
      3. 3.2.3 DSW dynamic routing by using IPIC
    3. 3.3 Relational Transactional Workload
    4. 3.4 WebSphere Liberty servlet with JDBC and JCICS access
    5. 3.5 Java OSGi workload
    6. 3.6 Web services
      1. 3.6.1 Web services variations
    7. 3.7 File control workload
  9. Chapter 4. Open transaction environment
    1. 4.1 Introduction to the open transaction environment
    2. 4.2 TCB modes
    3. 4.3 Changing TCB modes
      1. 4.3.1 Java programs
      2. 4.3.2 Programs specifying JVM(NO) and API(CICSAPI)
      3. 4.3.3 Programs specifying JVM(NO) and API(OPENAPI)
      4. 4.3.4 Programs compiled with the XPLINK option
    4. 4.4 Understanding the effect of change mode operations
      1. 4.4.1 CICS Monitoring Facility
      2. 4.4.2 IBM CICS Performance Analyzer for z/OS
      3. 4.4.3 IBM CICS Interdependency Analyzer for z/OS
  10. Part 2 CICS TS performance information
  11. Chapter 5. CICS TS for z/OS V5.1
    1. 5.1 Introduction
    2. 5.2 Release-to-release comparisons
      1. 5.2.1 Data Systems Workload static routing
      2. 5.2.2 DSW dynamic routing
      3. 5.2.3 Relational Transactional Workload threadsafe
      4. 5.2.4 Java throughput
    3. 5.3 Improvements in threadsafety
      1. 5.3.1 Threadsafe API and SPI commands
      2. 5.3.2 Threadsafe program loading
      3. 5.3.3 Use of T8 TCB for JDBC calls
    4. 5.4 Changes to system initialization parameters
      1. 5.4.1 Active keypoint frequency (AKPFREQ)
      2. 5.4.2 Extended dynamic storage area limit (EDSALIM)
      3. 5.4.3 Terminal scan delay (ICVTSD)
      4. 5.4.4 Maximum open TCBs (MAXOPENTCBS)
      5. 5.4.5 Maximum XP TCBs (MAXXPTCBS)
      6. 5.4.6 Maximum tasks (MXT)
      7. 5.4.7 Priority aging interval (PRTYAGE)
      8. 5.4.8 Location of terminal user areas (TCTUALOC)
    5. 5.5 Enhanced instrumentation
      1. 5.5.1 The DFHCHNL performance group
      2. 5.5.2 The DFHCICS performance group
      3. 5.5.3 The DFHDEST performance group
      4. 5.5.4 The DFHFILE performance group
      5. 5.5.5 The DFHRMI performance group
      6. 5.5.6 The DFHSOCK performance group
      7. 5.5.7 The DFHSTOR performance group
      8. 5.5.8 The DFHTASK performance group
      9. 5.5.9 The DFHTERM performance group
      10. 5.5.10 Monitoring domain global statistics
      11. 5.5.11 Loader domain global statistics
    6. 5.6 Virtual storage constraint relief
      1. 5.6.1 24-bit storage
      2. 5.6.2 31-bit storage
      3. 5.6.3 64-bit storage
      4. 5.6.4 Mirror transactions
      5. 5.6.5 XCTL with a communication area
      6. 5.6.6 User exit global work area
      7. 5.6.7 Related APARs
    7. 5.7 64-bit application support
    8. 5.8 Java 7 and zEnterprise EC12
    9. 5.9 CICSPlex System Manager dynamic routing
    10. 5.10 Workload consolidation
      1. 5.10.1 Consolidating a COBOL VSAM workload
      2. 5.10.2 Consolidating the GENAPP workload
    11. 5.11 Effect of threadsafe transient data
      1. 5.11.1 Maximizing time on an open TCB
      2. 5.11.2 Sample transient data and DB2 application
      3. 5.11.3 CICS monitoring data results
      4. 5.11.4 Throughput results
    12. 5.12 Transaction isolation
      1. 5.12.1 Unique subspaces
      2. 5.12.2 Common subspace
      3. 5.12.3 Base space
      4. 5.12.4 Transaction isolation performance effect
      5. 5.12.5 Page and extent sizes
  12. Chapter 6. CICS TS for z/OS V5.2
    1. 6.1 Introduction
    2. 6.2 Release-to-release comparisons
      1. 6.2.1 Data Systems Workload static routing
      2. 6.2.2 DSW dynamic routing
      3. 6.2.3 Relational Transactional Workload non-threadsafe
      4. 6.2.4 RTW threadsafe
      5. 6.2.5 Java servlet that uses JDBC and VSAM
    3. 6.3 Improvements in threadsafe API and SPI commands
    4. 6.4 Changes to system initialization parameters
      1. 6.4.1 Maximum tasks (MXT)
      2. 6.4.2 Maximum open TCBs (MAXOPENTCBS)
      3. 6.4.3 Maximum XP TCBs (MAXXPTCBS)
    5. 6.5 Enhanced instrumentation
      1. 6.5.1 Dispatcher global statistics
      2. 6.5.2 Dispatcher TCB mode statistics
      3. 6.5.3 Dispatcher TCB pool statistics
      4. 6.5.4 Monitoring domain global statistics
      5. 6.5.5 Transaction manager global statistics
    6. 6.6 Kerberos
      1. 6.6.1 Kerberos test configuration
      2. 6.6.2 Kerberos performance results
      3. 6.6.3 Kerberos support conclusion
    7. 6.7 JSON support
      1. 6.7.1 JSON support test configuration
      2. 6.7.2 Scalability as a function of response size
      3. 6.7.3 Scalability as a function of request rate
      4. 6.7.4 JSON support conclusion
    8. 6.8 Java applications and trace
    9. 6.9 Web services over HTTP improvements
      1. 6.9.1 Web services real storage usage
      2. 6.9.2 Web services CPU reduction
    10. 6.10 Java 7.0 and Java 7.1
  13. Chapter 7. CICS TS for z/OS V5.3
    1. 7.1 Introduction
    2. 7.2 Release-to-release comparisons
      1. 7.2.1 Data Systems Workload dynamic routing
      2. 7.2.2 RTW threadsafe
    3. 7.3 Improvements in threadsafety
      1. 7.3.1 Threadsafe API and SPI commands
      2. 7.3.2 Optimizations for SSL support
      3. 7.3.3 Offloading authentication requests to open TCBs
    4. 7.4 Changes to system initialization parameters
      1. 7.4.1 Storage protection (STGPROT)
      2. 7.4.2 Internal trace table size (TRTABSZ)
    5. 7.5 Enhanced instrumentation
      1. 7.5.1 The DFHCICS performance group
      2. 7.5.2 The DFHTASK performance group
      3. 7.5.3 The DFHTEMP performance group
      4. 7.5.4 The DFHWEBB performance group
      5. 7.5.5 Monitoring domain global statistics
      6. 7.5.6 TCP/IP global statistics
      7. 7.5.7 URIMAP global statistics
    6. 7.6 Low-level CICS optimizations
      1. 7.6.1 Monitoring and trace enabled
      2. 7.6.2 Monitoring disabled, trace enabled
      3. 7.6.3 Monitoring enabled, trace disabled
      4. 7.6.4 Monitoring and trace disabled
      5. 7.6.5 Monitoring and trace disabled with low numbers of MRO sessions
      6. 7.6.6 Low-level CICS optimizations conclusions
    7. 7.7 Web support and web service optimization
    8. 7.8 Java workloads
      1. 7.8.1 Java workload configuration
      2. 7.8.2 Java servlet workload
      3. 7.8.3 Java OSGi workload
    9. 7.9 Java 8 performance
      1. 7.9.1 Improvements in Java 7.0, Java 7.1, and Java 8
      2. 7.9.2 Java performance benchmarks in CICS
      3. 7.9.3 Java 8 and OSGi applications
      4. 7.9.4 Java 8 and WebSphere Liberty servlet applications
      5. 7.9.5 Java 8 and z/OS Connect applications
    10. 7.10 Simultaneous multithreading with Java workloads
      1. 7.10.1 Introduction to SMT
      2. 7.10.2 Measuring SMT performance
      3. 7.10.3 CICS throughput improvement
    11. 7.11 Reporting of CPU time to z/OS Workload Manager
    12. 7.12 z/OS Connect for CICS
      1. 7.12.1 CICS TS V5.3 performance enhancement
      2. 7.12.2 Varying payload sizes by using Java parser
      3. 7.12.3 Comparing Java and native parsers
      4. 7.12.4 Comparing Java and native parsers with varying request sizes
      5. 7.12.5 Comparing Java and native parsers with varying response sizes
      6. 7.12.6 Native parser conclusion
    13. 7.13 HTTP flow control
      1. 7.13.1 Server accept efficiency fraction
      2. 7.13.2 Flow control configuration
      3. 7.13.3 Flow control operation
      4. 7.13.4 CICS statistics enhancements
      5. 7.13.5 Comparison of SOTUNING options
    14. 7.14 High transaction rate performance study
    15. 7.15 WebSphere Liberty zIIP eligibility
    16. 7.16 Link to WebSphere Liberty
      1. 7.16.1 Performance comparison
      2. 7.16.2 Link to WebSphere Liberty performance results
      3. 7.16.3 Link to WebSphere Liberty performance conclusion
      4. 7.16.4 Comparison of CICS monitoring and RMF data
  14. Chapter 8. CICS TS for z/OS V5.4
    1. 8.1 Introduction
    2. 8.2 Release-to-release comparisons
      1. 8.2.1 Data Systems Workload static routing
      2. 8.2.2 Data Systems Workload dynamic routing
      3. 8.2.3 The Data Systems Workload HTTP interface
      4. 8.2.4 The Relational Transactional Workload threadsafe
      5. 8.2.5 The Java servlet that uses JDBC and VSAM
      6. 8.2.6 The Java OSGi workload
    3. 8.3 Improvements in threadsafety
      1. 8.3.1 Threadsafe API commands
      2. 8.3.2 Use of T8 TCB for MQ calls from Java
    4. 8.4 Changes to system initialization parameters
      1. 8.4.1 The EDSA limit (EDSALIM) parameter
      2. 8.4.2 Default runaway task time (ICVR)
      3. 8.4.3 Maximum open TCBs (MAXOPENTCBS)
      4. 8.4.4 Maximum SSL TCBs (MAXSSLTCBS)
      5. 8.4.5 RACF synchronization (RACFSYNC)
      6. 8.4.6 Sign on for a preset user ID (SNPRESET)
      7. 8.4.7 z/OS Workload Manager Health API (WLMHEALTH)
    5. 8.5 Changes to resource definition attribute default values
      1. 8.5.1 The PROGRAM resource
      2. 8.5.2 The TRANSACTION resource
    6. 8.6 Enhanced instrumentation
      1. 8.6.1 The DFHCICS performance group
      2. 8.6.2 The DFHPROG performance group
      3. 8.6.3 The DFHTASK performance group
      4. 8.6.4 Transaction resource class data
      5. 8.6.5 Identity class data
      6. 8.6.6 Asynchronous services global statistics
      7. 8.6.7 IBM MQ monitor statistics
      8. 8.6.8 TCP/IP global statistics
      9. 8.6.9 TCP/IP services resource statistics
      10. 8.6.10 z/OS Communications Server global statistics
    7. 8.7 CICS tasks for WebSphere Liberty applications
    8. 8.8 z/OS WLM Health API
    9. 8.9 Asynchronous API
      1. 8.9.1 Enhanced transaction tracking information
      2. 8.9.2 Workload management
      3. 8.9.3 CICS monitoring enhancements
      4. 8.9.4 CICS statistics enhancements
      5. 8.9.5 Asynchronous service domain performance comparison
      6. 8.9.6 Asynchronous API performance summary
    10. 8.10 EXCI support for channels and containers
      1. 8.10.1 Application design (COMMAREA)
      2. 8.10.2 Application design (channels)
      3. 8.10.3 Payload comparisons
      4. 8.10.4 CPU time comparison
      5. 8.10.5 Response time comparison
      6. 8.10.6 EXCI support for channels and containers performance summary
    11. 8.11 CICS support for IBM Health Checker for z/OS
    12. 8.12 Web services performance
      1. 8.12.1 Persistent and non-persistent connections
      2. 8.12.2 Overhead of using SSL with persistent connections
      3. 8.12.3 SSL handshake overhead
      4. 8.12.4 CICS SSL and AT-TLS
  15. Chapter 9. CICS TS for z/OS V5.5
    1. 9.1 Introduction
    2. 9.2 Release-to-release comparisons
      1. 9.2.1 Data Systems Workload static routing
      2. 9.2.2 Java servlet that uses JDBC and VSAM
      3. 9.2.3 The Java OSGi workload
      4. 9.2.4 Relational Transactional Workload threadsafe
    3. 9.3 Improvements in threadsafety
      1. 9.3.1 QUERY SECURITY API command
      2. 9.3.2 Coupling Facility Data Tables
      3. 9.3.3 System subtasking and auxiliary temporary storage
    4. 9.4 Changes to system initialization parameters
      1. 9.4.1 High Performance Option (HPO)
      2. 9.4.2 Minimum TLS level (MINTLSLEVEL)
    5. 9.5 Enhanced instrumentation
      1. 9.5.1 The DFHSOCK performance group
      2. 9.5.2 The DFHWEBB performance group
      3. 9.5.3 The DFHWEBC performance group
      4. 9.5.4 ISC/IRC system entry resource statistics
      5. 9.5.5 Policy statistics
      6. 9.5.6 Transaction resource statistics
      7. 9.5.7 Transaction resource class data
    6. 9.6 Virtual storage constraint relief
    7. 9.7 z/OS WLM Health API
      1. 9.7.1 CICSPlex SM workload routing
      2. 9.7.2 Throttle on number of MQGET calls issued by an MQMONITOR
    8. 9.8 Disabling of VSAM dynamic buffer addition
    9. 9.9 USS processes associated with L8, L9, X8, and X9 TCBs
    10. 9.10 Channels performance improvement
      1. 9.10.1 Containers performance comparison
      2. 9.10.2 Containers performance summary
    11. 9.11 Threadsafe Coupling Facility Data Tables
      1. 9.11.1 CFDT performance test configuration
      2. 9.11.2 Non-threadsafe CFDT application performance results
      3. 9.11.3 Threadsafe CFDT application performance results
      4. 9.11.4 CFDT performance results summary
    12. 9.12 CICS policy rules
      1. 9.12.1 Policy task rules overhead performance study
      2. 9.12.2 Policy task rules overhead performance summary
    13. 9.13 Encrypted zFS file systems
      1. 9.13.1 zFS file system encryption performance comparison
      2. 9.13.2 zFS file system encryption performance summary
    14. 9.14 Multiple Liberty JVM servers in a single CICS region
      1. 9.14.1 Shared libraries support
      2. 9.14.2 Multiple Liberty JVM servers performance workload configuration
      3. 9.14.3 Comparing CPU costs per request and maximum throughput
      4. 9.14.4 Comparing 31-bit memory usage
      5. 9.14.5 Comparing 64-bit memory usage
      6. 9.14.6 Multiple Liberty JVM servers performance conclusion
    15. 9.15 Liberty JVM server and application startup times
      1. 9.15.1 Startup times with shared class cache
      2. 9.15.2 Application startup times with multiple JVM servers
  16. Related publications
    1. CICS performance series
    2. Other IBM Redbooks publications
    3. Other publications
    4. Online resources
    5. Help from IBM
  17. Back cover

Product information

  • Title: IBM CICS Performance Series: CICS TS for z/OS V5 Performance Report
  • Author(s): Ian Burnett, Graham Rawson, Mike Brooks, Manuela Mandelli
  • Release date: August 2019
  • Publisher(s): IBM Redbooks
  • ISBN: 9780738457932