APAR PJ48166 provides diagnostic and performance improvements to help you tune your z/TPF system for ECB heap usage and to help with diagnostics .
The following changes were made to improve ECB heap usage tuning.
Data collection and reduction added a 31-bit virtual ECB heap storage usage report. This report contains information about the number of ECBs that exceeded the preallocated 31-bit ECB heap. You can use this report to better determine what an acceptable preallocated ECB heap size should be.
TPF 31-BIT PREALLOCATED ECB HEAP STORAGE USAGE REPORT SYSTEM WIDE
CLASS UPPER FREQUENCY PERCENT FREQUENCY DIAGRAM (SCALE = 1/1)
LIMIT OBSERVED OF TOTAL
0KB 6 66.00% |******
24KB 0 0.00% |
32KB 0 0.00% |
40KB 0 0.00% |
48KB 0 0.00% |
56KB 2 22.00% |**
64KB 0 0.00% |
72KB 0 0.00% |
80KB 0 0.00% |
> 80KB 1 11.00% |*
TPF 31-BIT VIRTUAL ECB HEAP STORAGE USAGE REPORT SYSTEM WIDE
REPORT ONLY INCLUDES ECBS THAT EXCEEDED THE PREALLOCATED ECB HEAP
CLASS UPPER FREQUENCY PERCENT FREQUENCY DIAGRAM (SCALE = 1/1)
LIMIT OBSERVED OF TOTAL
88KB 0 0.00% |
96KB 0 0.00% |
104KB 0 0.00% |
112KB 0 0.00% |
120KB 0 0.00% |
128KB 0 0.00% |
136KB 0 0.00% |
144KB 1 100.00% |*
152KB 0 0.00% |
> 152KB 0 0.00% |
The ZMOWN online report, ZECBM online report, and RTMC name-value pair collection are enhanced to include many ECB heap metrics. This includes the number of allocations and frees for each ECB heap available list, the number of 1 MB frames needed to back ECB heap, and high-water marks for heap usage. Additionally, you can use the HAVL parameter on the ZDECB command to display the number of ECB heap requests that were fulfilled by each of the ECB heap available lists for a long running ECB.
AAES0008I 00 ==> zdecb havl 12045000
CSMP0097I 09.35.59 CPU-B SS-BSS SSU-HPN IS-01 _
DECB0125I 09.35.59 COUNT OF ECB HEAP AVAILABLE LIST REQUESTS FILLED FOR
ECB 12045000 MAIN THREAD ECB 12084000
SETNAME = SSL
ECB HEAP AVL LIST BUFFER SIZES: AVL1 32 , AVL2 64 , AVL3 128 , AVL4 256
LIST 31 BIT SHARED AVLS 64 BIT SHARED AVLS _
AVL1 611 0
AVL2 217 0
AVL3 182 0
AVL4 640 0
AVL5 1325 0
LIST 31 BIT UNIQUE AVLS 64 BIT UNIQUE AVLS _
AVL1 15272 0
AVL2 4033 0
AVL3 941 0
AVL4 576 0
NUMBER OF THREADS 5
END OF DISPLAY+
ECB heap is enhanced to support separate ECB heap available list sizes for shared SSL and Java. These values are configured in the ECB heap configuration file (/sys/tpf_pbfiles/tpf-fdes/apps/ibmeheap/ibm_ECB_heap.json). The ECB heap configuration file contains values that were tested by IBM for optimal performance with shared SSL and Java on z/TPF. You can enter ZCTKA DISPLAY HEAP SETNAME to display the shared SSL and Java ECB heap available list sizes. Previously, if you defined large buffer sizes for the default ECB heap available list sizes, shared SSL and Java ECBs might use a large amount of memory, and possibly run out of memory. With PJ48166, shared SSL and Java do not use the buffer sizes for the default ECB heap available list buffer sizes. Instead, they use the buffer sizes that are defined in the configuration file. With this support, you can define large default buffer sizes without impacting shared SSL and Java. Both shared SSL and JAVA ECBS might use less memory over time with these customized ECB heap available list sizes.
AAES0008I 00 ==> zctka display heap setname
CSMP0097I 15.15.31 CPU-B SS-BSS SSU-HPN IS-01
CTKA0175I 15.15.31 ECB HEAP AVAILABLE LIST SET NAME SIZE DISPLAY
SETNAME AVL1 AVL2 AVL3 AVL4
JAVA 32 256 2048 4096
SSL 32 64 128 256 _
DEFAULT 64 256 1024 4096
END OF DISPLAY+
To help improve debugging, the trace name at the time of the ECB heap allocation or free is included in the following places:
· The ZDECB HEAPTRACE online display
· The HEAP TRACE dump area
· The IN-USE HEAP BUFFER dump area
· The AVAILABLE HEAP BUFFER dump area
The trace name is not set by programs with fast path linkage like CPP1, which includes the C++ new and delete operations. Therefore, the recorded trace name reflects the last program the ECB entered that did not have special linkage.
zdecb heaptr 1200f000
CSMP0097I 08.21.44 CPU-B SS-BSS SSU-HPN IS-01
DECB0223I 08.21.44 THE HEAP TRACE FOR ECB 1200F000 STARTED
LOADMOD LOADSET TRC OBJECT NAME
OR
OBJ DSP IS TIMESTAMP API BUFFER ADDR SIZE
CISO LOADSET-BASE TRC-CFVS OBJECT-filedoalloc _
00000068 03 00 E19BA761 344C125A m 000000001A824FF8 00002000
CISO LOADSET-BASE TRC-CFVS OBJECT-iofdopen
00000124 03 00 E19BA761 344BB420 m 000000001A822DA8 00000250
CISO LOADSET-BASE TRC-CFVS OBJECT-filedoalloc _
00000068 03 00 E19BA761 344B184C m 000000001A81EFF8 00002000
CISO LOADSET-BASE TRC-CFVS OBJECT-iofdopen
00000124 03 00 E19BA761 344A9050 m 000000001A81CDA8 00000250
CISO LOADSET-BASE TRC-CFVS OBJECT-filedoalloc _
00000068 03 00 E19BA761 3449F84A m 000000001A818FF8 00002000