Changes to performance

This topic summarizes CICS functional changes that might have a performance impact for supported releases of CICS TS. Use this information to plan the impact of upgrading from one release to another.

If you are upgrading from an end-of-service release, you can find information about the changes that are relevant to those releases in Summary of changes from end-of-service releases.

See also the Performance Reports.

Access to data

This section summarizes enhancements to CICS support for access to external data that might have a performance impact, by each supported release of CICS TS.

Enhancements that might have a performance impact
6.2
None
6.1
  • The capacity of shared data tables is increased.

    Shared data tables no longer use the two control data spaces named DFHDT001 and DFHDT002, and instead are now using 64-bit storage to hold control information. See the 6.1: Shared data table enhancements report for an assessment of the performance impact as a result of this enhancement.

  • The WEB OPEN URIMAP command is enhanced in CICS TS 6.1.

    A cached copy of the IP address is held in the installed URIMAP resource and can be used after the initial connection is established. The need for a DNS lookup by subsequent outbound web requests that use the same URIMAP is removed. See 6.1: WEB OPEN with URIMAP for the performance study relating to this enhancement.

5.6
None
5.5
  • Disabling of VSAM dynamic buffer addition.

    From z/OS Version 2.2, VSAM provides a dynamic buffer addition capability that allows for the addition of extra buffers for an LSR pool if no buffer is available for a given VSAM request. For CICS, it is preferable to retry the request rather than allow uncontrolled expansion of an LSR pool, so dynamic buffer addition is not enabled for CICS LSR pools.

    The disabling of VSAM dynamic buffer addition was provided in CICS TS 5.1 through 5.4 by APAR PI92486.

  • The HPO system initialization parameter can now be specified in the PARM parameter on an EXEC PGM=DFHSIP statement or in the SYSIN data set.
  • CICS TS 5.5 now manages the release of USS (UNIX System Services) processes from X8, X9, L8, and L9 TCBs when the TCB is released from the CICS task and returned to the relevant CICS dispatcher pool of open TCBs. See USS processes associated with L8, L9, X8, and X9 TCBs.
  • CICS TS 5.5 introduces a performance improvement that benefits applications where many containers are stored in a single channel. CICS uses a hash table to access containers, rather than searching a list. The performance improvement changes the order in which containers are returned. Therefore, applications should not rely on the order in which containers are returned. The CICS feature toggle com.ibm.cics.container.hash can be set to restore CICS to the previous behavior. See Channels performance improvement: CICS TS V5.5 for the performance study relating to containers.

Enhanced instrumentation

With each release, CICS TS expands information that is reported by the CICS monitoring and statistics component.

Information about monitoring fields that are introduced, modified, or removed are described in Changes to CICS monitoring.

Information about statistics fields that are introduced, modified, or removed can be found in Changes to CICS statistics.

The following summary gives you a highlight of the more notable changes by each supported release of CICS TS.

Summary of notable enhancements to CICS monitoring and statistics component
6.2
  • Suppression of SMF records with zero-counting fields

    Transaction and Program statistics that contain zero count fields following a reset are suppressed for interval, requested, and requested reset type statistics. This reduces SMF volume at most of the times that CICS statistics are being generated, retaining the ability to use CICS statistics as a way to inventory CICS resources. For more information, see Reset characteristics of statistics counters.

  • Enhanced SOS protection and monitoring of z/OS MEMLIMIT storage in the 64-bit addressing range.

    CICS introduces the capability to monitor the part of 64-bit z/OS storage that is allocated by the z/OS MEMLIMIT parameter. CICS periodically monitors the state of unallocated z/OS storage available to the CICS region in its z/OS address space, against a short-on-storage (SOS) threshold set by the new system initialization parameter ZOSSOS64UNALLOC. CICS issues console messages to notify you of SOS conditions. You can use system policy rules that are triggered by these SOS messages, with an action to set the z/OS WLM health value to 0, so as to limit new work coming to the affected region.

    Storage manager global statistics include new fields that report on the state of unallocated storage in the z/OS MEMLIMIT storage and on SOS conditions that have occurred to it. These statistics help you understand your current use of the z/OS MEMLIMIT storage, track fluctuations in the storage usage overtime, and identify and avoid SOS conditions that might occur.

    For more information, see Monitoring unallocated z/OS storage for CICS.

6.1
  • Enhanced adapter tracking for CICS Db2 applications.

    The CICS Db2  attachment facility is enhanced to pass adapter data to Db2. If a CICS task that is accessing Db2  has adapter data in the CICS origin data, the adapter ID is passed as appl-longname and the adapter data is passed as an accounting-string. Db2  writes the data in its SMF accounting records and the data is also available online through the Db2  special registers CURRENT CLIENT_APPLNAME and CURRENT CLIENT_ACCTNG. This capability requires Db2 12 with APAR PH31447 or higher. For more information, see Transaction tracking.

  • Compliance data collection with SMF 1154 subtype 80 records. For more information, see Compliance data collection.
  • Classification of CICS regions by using region tagging.

    CICS regions can now be tagged or classified according to the key attributes of APPLID, region user ID, or job name. These tags can be viewed by using the INQUIRE TAG system command. They are also recorded in the SMF 1154 record. For more information, see Classifying CICS regions with region tagging.

  • Monitoring of auxiliary temporary storage usage.

    You are now alerted when auxiliary temporary storage data set usage is approaching a high percentage of its capacity. With this warning, you have time to free up storage before the auxiliary temporary storage becomes full. CICS issues message DFHTS1316 when 75% or more of the maximum auxiliary temporary storage is in use. CICS issues message DFHTS1317 when storage usage is less than 70% of the maximum auxiliary temporary storage. New statistics are available in Temporary storage statistics to provide information about the current and peak percentage of auxiliary temporary storage that is being used. This capability is partially available on CICS TS 5.6 with APAR PH28145. For more information, see Auxiliary temporary storage: monitoring and tuning.

  • Enhancements to the monitoring of shared pool TS queue usage.

    This enhancement makes it more simple for you to monitor capacity usage change for shared pool TS queues. When the percentage of entries or elements in use in a pool structure reaches a specified threshold, DFHXQ0422 or DFHXQ0423 is issued. When the percentage of entries or elements in use drops under a threshold, DFHXQ0420 or DFHXQ0421 is issued. This capability is also available on CICS TS 5.6 with APAR PH28145. For more information, see Monitoring coupling facility server messages.

  • Improved diagnostics for security, which include TLS diagnostic data for inbound and outbound connections and a new message DFHXS1117 providing more diagnostic information for security violations.
  • Extended short on storage (SOS) notification for z/OS user region and extended user region storage.

    The CICS storage manager domain can now notify other CICS domains of SOS conditions that occur in z/OS user region (24-bit) storage and extended user region (31-bit) storage within the CICS address space so that action can be taken in response. See Extended SOS notifications for more details.

  • Simplifying changing TLS protocol levels or ciphers.

    Improvements to CICS statistics and monitoring allow collection of data with more details about which ciphers and TLS protocols are in use in selected regions. TLS protocols include both CICS-configured TLS and AT-TLS. These changes to statistics and monitoring help you with upgrading ciphers or TLS protocol levels. For more information about cipher statistics, see Cipher statistics.

  • Cap on concurrent TLS handshakes.

    CICS limits the number of concurrent TLS handshakes to 90% of the MAXSSLTCBS value specified at start-up. If the maximum limit is reached, a task that is requesting a TLS handshake is suspended with a resource name of S8TLSHS of resource type DSWC. The task suspension allows already-established connections to continue processing TLS work, without allowing the more expensive TLS handshake processing to monopolize all of the configured S8 TCBs. To help you monitor concurrent TLS handshakes in a CICS region, new statistics are introduced in TCP/IP Global statistics.

  • Enhanced support for policy statistics

    The sample statistics program DFH0STAT can now produce Policy reports. In support for this enhancement, the EXTRACT STATISTICS system programming command supports a new RESTYPE option POLICY and a new SUBRESTYPE option POLICYRULE. These options can be used to obtain statistics about a policy rule that is contained in a POLICY resource. Find details in Policy report.

  • Revision of TCP/IP domain socket statistics. See Table 10 in Changes to CICS statistics.
5.6
  • Ability of CICS-MQ bridge to write performance class monitoring records.
  • CICS capability of exploiting IBM z/OS Workload Interaction Correlator. For more information, see CICS as an exploiter of IBM z/OS Workload Interaction Correlator.
  • Notification of QR CPU time through new message DFHDS0102.

    The new message DFHDS0102 is emitted periodically to indicate the current CPU / dispatch and dispatch / interval ratios for the QR TCB. This message can be used as an indicator of a potential shortage of CPU resource. For more information, see The QR TCB CPU Dispatch Ratio.

  • New support for monitoring of unallocated z/OS storage available in z/OS user region (24-bit) storage and extended user region (31-bit) storage within the CICS address space. For more information about this monitoring capability, see Monitoring unallocated z/OS storage for CICS.
  • The DFHTASK performance group provides enhanced information about the time spent verifying authentication credentials, and about user task delays due to short on storage (SOS) conditions that occur in z/OS user region storage and extended user region storage.
  • Monitoring domain global statistics provide additional information about CICS monitoring configuration.
  • CICS now collects global statistics on the security domain, providing a comprehensive view of authentication requests.
  • User domain global statistics enhanced to give a more comprehensive view of user instances.
5.5
  • Statistics are now available for CICS policy rules. CICS collects resource statistics for each rule that is defined in a policy, and supplies a summary report.
  • CICS monitoring is enhanced with new monitoring records URIMAP and WEBSERVICE in the resource monitoring class. Multiple URIMAP or WEBSERVICE records can be monitored for one task.

Security

With each release, CICS TS expands and introduces more security features that protect your system from potential threats. Some security features might incur additional performance cost. This section gives you a summary of such security features by each supported release of CICS TS. See Changes to security for more information.

Security features that might have a performance impact
6.2
  • The default values for the CMDSEC and RESSEC attributes on the TRANSACTION resource definition have changed to YES.

    Existing user transaction definitions stay unchanged, but new transaction use CMDSEC(YES) and RESSEC(YES) by default. All CICS transactions, excluding CJXA and CICSPlex SM transactions (CO**), are defined with CMDSEC(YES) and RESSEC(YES) to conform with the recommendation of enabling command security and resource security in production. You must review and update security definitions for potential command and resource security checking. For instructions, see Review security definitions for command and resource security implementation.

  • Minimum key size used during TLS handshakes is increased.

    For increased key strength, CICS uses a minimum key size of 256 for ECC keys and 2048 for RSA, DSA and Diffie-Hellman keys during TLS handshakes. You must increase the key sizes within your certificates. Otherwise, the TLS handshake fails and message DFHSO0123 is issued with a return code of 508.

    To continue using a small key size, set feature toggle com.ibm.cics.tls.minimumkeystrength=1024. This feature toggle allows you to set a minimum key size for ECC, RSA, DSA, and Diffie-Hellman keys during TLS handshakes. This feature toggle is also available in CICS TS 5.4, 5.5, 5.6 with APAR PH50175, and 6.1 with APAR PH51719.

  • Sysplex caching for TLS 1.3 is supported.

    Sharing information about the SSL session across different CICS regions in a sysplex is particularly useful when HTTP requests are being routed across a set of CICS regions by using TCP/IP connection workload balancing techniques, such as TCP/IP port sharing or Sysplex Distributor. CICS now supports sysplex caching for TLS 1.3 in addition to previous support for sysplex caching in earlier versions of TLS. For more information, see SSLCACHE system initialization parameter.

  • New options on XPPT allow you to secure remote programs at a lower cost.

    A new option DPLONLY is added to the XPPT system initialization parameter. By specifying DPLONLY on XPPT (XPPT=(YES,DPLONLY) or XPPT=(class_name,DPLONLY)), CICS checks only the first program that is linked by the mirror program, DFHMIRS during distributed program link (DPL). This can reduce the security cost while retaining control over remotely linked programs. For more information, see Security for CICS programs.

6.1
  • Security Request Recording (SRR).

    See the 6.1: Security Request Recording report to evaluate the performance impact from using SRR.

  • New support for TLS 1.3.

    With CICS TS 6.1, clients are able to connect to CICS by using the TLS 1.2 or TLS 1.3 protocol, but the MAXTLSLEVEL system initialization parameter must be set to allow the connection to happen. The ciphers that are used with TLS 1.3 are different from the ciphers that CICS supports with TLS 1.2, and can affect the performance of workloads that use these ciphers. TLS 1.3 also uses a modified message protocol for performing handshakes, and customers might see some differences in both the CPU costs and the response times when these activities are occurring.

5.6
None
5.5
  • The default value for the MINTLSLEVEL system initialization parameter is changed from TLS10 to TLS12.

Storage

This section summarizes changes to CICS use of storage that might improve performance by each supported release of CICS TS. See Changes to storage for more information.

Changes to CICS use of storage that might have a performance impact
6.2
None
6.1
  • New support for Instruction Execution Protection (IEP).

    IEP uses additional dynamic storage areas, which are set by EPCDSASZE, EPUDSASZE, PCDSASZE, and PUDSASZE system initialization parameters. Customers are not normally expected to set these values. Allocation of storage that is used by individual running tasks in the CICS region is not increased by instruction execution protection. However, the distribution of that storage within the DSAs is changed and you can expect an increase in DSA storage requirements.

  • Shared data tables no longer use the two control data spaces named DFHDT001 and DFHDT002, but are now using 64-bit storage to hold control information, that is, table entry descriptors, backout elements, and index nodes. The use of 64-bit storage to hold the control information removes the constraint on the number of records that can be stored. The records continue to be stored in 31-bit data spaces. Now, two more data spaces are available to hold the records. The new system initialization parameter SDTMEMLIMIT sets the maximum amount of 64-bit storage that is available for shared data tables to use for control information. See also the 6.1: Shared data table enhancements report.
5.6
  • The TSICDATA subpool is moved to 64-bit storage to provide greater resilience when a large number of tasks are started with data and queue on TCLASS limits. It avoids short on storage conditions in the 31-bit ECDSA in this situation.
  • The minimum value that can be specified for the size of the internal trace table has been increased from 16 KB to 1024 KB. See TRTABSZ system initialization parameter.
  • The minimum value that can be specified for the size of the transaction dump trace table has been increased from 16 KB to 1024 KB. See TRTRANSZ system initialization parameter.
5.5
  • The Web domain (WB) now uses internal 64-bit buffer storage when it sends and receives HTTP outbound messages.

    This change relieves constraint on 31-bit virtual storage and enables more 31-bit application use in a CICS region.

  • Minor improvements in 24-bit storage usage are introduced such that the amount of 24-bit storage that is used by the CICS auxiliary trace mechanism is reduced. These changes provide a small performance improvement for both the DSW static routing and the RTW single region workloads when running with auxiliary trace enabled.

Threadsafety

This section summarizes improvements in threadsafety that might have a performance impact, by each supported release of CICS TS.

Improvements in threadsafety that might have a performance impact
6.2
  • Read and browse requests to shared data tables are threadsafe.
    The following commands, when used to access a CICS-maintained or user-maintained shared data table, can now run on an open TCB as well as on the QR TCB:
    • READ (without the UPDATE option)
    • STARTBR
    • READNEXT (without the UPDATE option)
    • READPREV (without the UPDATE option)
    • ENDBR
    • RESETBR

    See the 6.2: Threadsafe shared data tables report for the performance study relating to threadsafe shared data tables.

6.1
None
5.6
  • The SUBTSKS SIT parameter controls the use of the CO TCB when performing I/O. It removes the switch to the CO TCB if the application is executing on an open TCB when it uses CICS auxiliary temporary storage. If the application is currently executing on the QR TCB, then subtasking is performed as normal.

    This removal of TCB switches provides a small performance benefit for applications the execute on an open TCB. The threadsafe characteristics of the relevant API commands are unaffected.

    APAR PH05298 also provides this optimization to CICS TS 5.1 through 5.5.

5.5
These are the areas in CICS TS 5.5 that have improved performance by reducing the number of TCB switches required for API commands:
  • The EXEC CICS QUERY SECURITY command has been enhanced such that the number of TCB switches has been reduced if more than one access level is specified on the command. For more information, see QUERY SECURITY.
  • Access to coupling facility data tables (CFDTs) is now threadsafe.

    CFDTs can now be accessed by applications that are running on open TCBs without incurring a TCB switch. Syncpoint processing of CFDTs can also run on an open TCB. However, note that the open and loading of a CFDT still occurs on the QR TCB. See 5.5: Threadsafe Coupling Facility Data Tables for the performance study relating to CFDTs. For more information, see Using coupling facility data tables.

Workload management

This section summarizes changes to workload management that might have a performance impact, by each supported release of CICS TS.

Changes to workload management that might have a performance impact
6.2
  • New option to set the WLMHEALTH time interval is supported by the Set z/OS WLM health open status system rule action.

    You can now change the region's WLMHEALTH time interval as part of the system rule action. This enhancement makes it easier for you to manage the z/OS WLM health of a CICS region by using a variety of policy system rules. For details, see How it works: Managing availability of your system by using a group of system rules.

    This capability is also available on CICS TS 6.1 with APAR PH58295.

  • A new system rule, transaction class queued tasks, monitors when the number of tasks queuing for membership to a TRANCLASS approaches the TRANCLASS purge threshold and enables CICS to take a policy action in response. This policy system rule can give you an early warning on the situation and take precautionary measures. For more information, see Policy system rules.
  • New PURGEACTION attribute on the TRANCLASS resource definition.

    When a TRANCLASS purge threshold limit is reached, a transaction is purged with abend code AKCC. This abend processing can add unwanted overhead to the system at a time when it is already constrained. CICS TS 6.2 introduces the PURGEACTION attribute, which allows CICS to discard a transaction when its associated TRANCLASS has reached the purge threshold. This removes the AKCC abend processing and reduces the overhead on the system during periods of high demand.

6.1
None
5.6
  • From CICS TS 5.4, CICS TS uses the z/OS Workload Manager (WLM) Health API as a means of controlling the flow of work into a CICS region. In CICS TS 5.6, system policies are enhanced to allow control of the z/OS WLM Health API. A new policy action is added for system rules to increase or decrease the z/OS WLM health value of a CICS region when all the rules conditions are met. The new action is not supported for task rules. For more information about policy system rules, see Policy system rules.
5.5
From CICS TS 5.4, CICS TS uses the z/OS Workload Manager (WLM) Health API as a means of controlling the flow of work into a CICS region. This awareness of the z/OS WLM health value has been enhanced in CICS TS 5.5.
  • CICSPlex SM workload routing: The z/OS WLM health value of a region is now a more effective factor in CICSPlex SM workload routing decisions. When it determines the target region to route workload to, CICSPlex SM workload management assigns penalizing weights in the routing algorithm based on the actual health value of each region. The higher the health value, the lower the penalizing weight that is assigned, so a region with a greater health value becomes more favorable as a target. In addition, a region with a health value of zero is now deemed as ineligible to receive work. With this enhancement to CICSPlex SM workload routing, you can have better control of flow of work into regions that are in warm-up or cool-down. For more information, see Effect of the z/OS WLM health service on CICSPlex SM workload routing.

    APAR PI90147 also provides this refinement to CICS TS 5.4.

  • Throttle on number of MQGET calls issued by an MQMONITOR: In CICS TS 5.4, when the region's z/OS WLM health value is less than 100%, there is a throttle on the number of MQGET calls that an MQMONITOR can issue per second. In this way, the number of trigger tasks that are started is controlled. The throttle affects all started MQMONITORs in the region. When the region's health value reaches 100%, the throttle on MQGET calls is removed. This behavior has been enhanced in CICS TS 5.5 by also reacting to the maximum tasks (MXT) condition.

    If CICS encounters an MXT condition, the CICS-MQ Alert Monitor (CKAM) calculates the maximum number of MQGET calls that an MQMONITOR can issue per second when this condition exists. In effect, this action imposes a restriction on the number of tasks being started by MQMONITOR resources while CICS is at MXT. For more information about how the z/OS WLM Health service affects IBM MQ resources in CICS TS 5.5, see Effect of z/OS Workload Manager Health service on MQMONITOR resources.