Program storage

The level of program storage that is in use is incremented at LOAD, LINK, and XCTL events by the size (in bytes) of the referenced program, and is decremented at RELEASE or RETURN events. On an XCTL event, the program storage currently in use is also decremented by the size of the program issuing the XCTL, because the program is no longer required.

Figure 1 shows the relationships between the high-water mark data fields that show the maximum amounts of program storage in use by the user task. The PCSTGHWM field (id 087) shows the maximum amount of program storage in use by the task both above and below 16 MB. The PC31AHWM (139) and PC24BHWM (108) fields are subsets of PCSTGHWM, and show the maximum amounts in use above and below 16M, respectively. Further subset fields show the maximum amounts of storage in use by the task in each of the CICS® dynamic storage areas (DSAs).

Note:
  1. The total of the values for all the subsets in a superset might not be equal to the value for the superset. For example, the value of PC31AHWM plus the value of PC24BHWM might not be the value of PCSTGHWM. This is because the peaks in the different types of program storage acquired by the user task do not necessarily occur simultaneously.
  2. If a task loads the same program several times, the program storage data fields might not reflect the true high-water mark of program storage used by the task. The fields are incremented each time the LOAD command is issued, but if the program has already been loaded by the task, the existing copy of the program is used, meaning that only one copy of the program exists in storage. Because of this, for tasks that repeatedly load the same program, the data in the fields PCSTGHWM, PC24BHWM, PC31RHWM, PC31AHWM, PC31CHWM, PC24CHWM, PC24SHWM, PC31SHWM and PC24RHWM should be used with caution.
  3. When you disable an exit program, the program can be released, and the program storage fields might be decremented. If the program was not linked to within the lifetime of the current task, then the program storage fields are decremented unnecessarily, which means you might not get a true value and should proceed with caution.

The high-water mark fields and program storage fields are described in detail in Performance data in group DFHSTOR.

Figure 1. Relationships between the high-water mark program storage data fields
Field PCSTGHWM shows the high-water mark of program storage in all CICS DSAs. Field PC31AHWM is a subset of PCSTGHWM, showing the high-water mark of program storage above the 16MB line. PC31AHWM has further subsets, field PC31CHWM (the ECDSA high-water mark), field PC31SHWM (the ESDSA high-water mark), and field PC31RHWM (the ERDSA high-water mark). Field PC24BHWM is the other subset of PCSTGHWM, showing the high-water mark of program storage below the 16MB line. PC24BHWM has further subsets, field PC24CHWM (the CDSA high-water mark), field PC24SHWM (the SDSA high-water mark), and field PC24RHWM (the RDSA high-water mark).