32
A walk down memory object lane David Clancy Dacworks Limited 04/11/2015 Session GG

CICS Memory Objects and MEMLIMIT

Embed Size (px)

Citation preview

A walk down memory object lane

David Clancy Dacworks Limited

04/11/2015 Session GG

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

 Agenda  What is a 64 bit memory object?  What are the Grande Dynamic Storage Areas used for?  What are the Storage Manager end of day statistics

telling me?  But first a brief digression!

2

How much above the bar storage do my CICS systems really need?

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

A walk down memory object lane

 In the late 80’s I climbed Mount Fuji

 Japan's highest and most prominent mountain (3776M)

3

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

A walk down memory object lane

 I had my Fuji Stick stamped at the various hill stations on the ascent

 Champagne at the bar at hill stop 9, with a final push in the early hours to watch the sunrise over Japan

4

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

A walk down memory object lane

 Preoccupation in the 80’s : VSCR - moving “stuff” from 24-bit to 31-bit storage

 Addressing changes from S/370 to XA increased address space size 128 times

5

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Stretching the analogy

 Preoccupation today : VSCR - moving “stuff” from below the bar to above the bar

 A 64-bit address space, is 16 exabytes in size; an exabyte is slightly more than one billion gigabytes

6

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Space …

 Below the bar VSCR

 More 31 bit storage for CICS V5.*

 Traditional CICS can support a larger number of concurrent users and concurrent transactions in fewer address spaces

 Above the bar

 New applications can exploit 64-bit storage

 CICS can support 64-bit Java

7

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

High Virtual

 High User Region located between the end of the shared area and 16 Exabytes

 Shared Area located between the 2Tb-1Eb location (default 512 Tb)

 Common Area located between the 1Tb-2Tb location (default 64 +2 Gb)

 Low user region area located between 288 GB and the Common Area)

 Local System Area located between 32GB and 288GB

 2G to 32GB reserved for java

8

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

You’ve got to have a Giga or two!

 While there is no practical limit to the virtual storage above the bar…

 practical limits exist to the real storage frames and auxiliary storage slots that back the area

  z/OS 2.1.0 >z/OS MVS>z/OS MVS Programming: Extended Addressability Guide>Using the 64-bit address space>Limiting the use of memory object

9

��� If you attempt to start a CICS region with MEMLIMIT value that is less than 6 GB +DFHSM0602 DACMASJ Insufficient storage to allocate the minimum above the bar memory object.

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Memory objects

 Virtual memory above 2GB is organized as memory objects

 A memory object is a contiguous range of virtual addresses

 Allocated as a number 1MB multiples on a 1MB boundary or 2G multiples on a 2G boundary

 May be designated as private (user or local), common or shared when created

 Some of the memory is usable virtual storage - unguarded

 Optionally a guard area may be created

 The guard area can be located at the high or low end of the memory object

 A later request can change the guard area into a usable area

10

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Creating private memory objects

  IARV64: REQUEST=GETSTOR LOCALSYSAREA=YES/NO GUARDSIZE=0/guardsize GUARDLOC=LOW/HIGH MEMLIMIT=YES/NO UNITS=units UNITSIZE=1M/2G SEGMENTS=segments (UNITS and SEGMENTS are mutually exclusive)

11

MEMLIMIT - Limiting the use of private memory objects

The following categories of storage do not count against the MEMLIMIT:   The guard area in a memory object   The storage created by IARV64

GETSTOR with LOCALSYSAREA=YES

  Memory objects defined with MEMLIMIT=NO do not count against the address space MEMLIMIT

Look at the the latest documentation for all IARV64 parameters z/OS 2.2.0 >z/OS MVS>z/OS MVS Programming: Authorized Assembler Services Reference EDT-IXG>IARV64 - 64-bit virtual storage allocation>REQUEST=GETSTOR option of IARV64

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Creating common and shared memory objects

  IARV64: REQUEST=GETCOMMON GUARDSIZE=0/guardsize UNITS=units UNITSIZE=1M/2G SEGMENTS=segments (UNITS and SEGMENTS are mutually exclusive)

  IARV64: REQUEST=GETSHARED SEGMENTS=segments

12

Common memory objects   Memory objects created in 64-bit

common virtual storage are visible at the same virtual address in every address space in the system and are accessible by every address space in the system

Shared memory objects   There is no automatic

addressability or access   To get access to the shared

memory object requires IARV64 REQUEST=SHAREMEMOBJ

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Creating private or common 64 bit cell pools

  IARST64: REQUEST=GET COMMON=NO/YES LOCALSYSAREA=YES/NO MEMLIMIT=YES/NO SIZE=size

  IARCP64: REQUEST=BUILD COMMON=NO/YES LOCALSYSAREA=YES/NO MEMLIMIT=YES/NO CELLSIZE=cellsize EXPAND=YES/NO

13

IARST64: Small cell pool management   The cell size can be anywhere

between 1 and 128K bytes. The size is rounded up to a power of 2

  Cell sizes are 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16,384, 32,768, 65,536 and 131,072 bytes

IARCP64: Larger cell pool management   With cellsize up to 520,192 bytes   EXPAND=YES Indicates that should

an attempt to expand the pool be made, successful expansion results in a 1 MB increase in the pool size

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

IARV64 in action

14

SSRV 14B 01C4A090 00000000 00000000 00000000 IarV64 GetStor 00000049_17E00000

00000000_00000400 00000000_00000000

1                                         GETSTOR    2                                                GETSHARED    F  GETCOMMON

Request type identifier: GETSTOR flags: X’80’  COND=YES    X’40’                                  FPROT=NO    X’04’                                  GUARDLOC=HIGH

Storage Key

==S2: GSDSA Summary Current Size: 1024M Active Size : 1M Cushion Size: 128M LWM Size: 0M HWM Size: 1M Current free space: 1023M Lwm free space: 1023M Hwm free space: 1024M Largest free area: 1022M

Access: USER Number of extents: 1 Extent list: Start End Size 00000049_17E00000 00000049_57DFFFFF 1024M

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

RMF STORM report

15

RMF V2R1 Storage Memory Objects Line 1 of 35 Command ===> Scroll ===> CSR

Samples: 100 System: S0W1 Date: 11/01/15 Time: 10.03.20 Range: 100 Sec

------------------------------- System Summary -------------------------------- ---MemObj--- ---Frames--- -1MB MemObj- --1MB Fixed-- -1MB Pageable- Shared 2 Shared 2646 Total 0 Total 0 Initial Common 47 Common 2324 Common 0 Common 0 Dynamic %Used 3.9 %Used 0.0 %Used ------------------------------------------------------------------------------- Service ---- Memory Objects --- -1MB Frames- ----- Bytes ----- Jobname C Class ASID Total Comm Shr 1 MB Fixed Pgable Total Comm Shr

DACMASA S STCLOM 0070 111 0 1 0 0 32.4G 0 128M SMSPDSE S SYSTEM 0008 35 0 0 0 0 51.0M 0 0 DACWUI1 S STCLOM 0058 16 1 0 0 0 2062M 1024K 0 DACCMAS1 S STCLOM 0064 16 1 0 0 0 2062M 1024K 0 DACMASJ S STCLOM 0061 15 0 0 0 0 2061M 0 0 GRS S SYSTEM 0007 7 1 0 0 0 140G 1024K 0 OMVS S SYSTEM 0015 7 1 0 0 0 927M 1024K 0

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS STATISTICS – 1st run

16

Applid DACMASJ Sysid DACJ Jobname DACMASJ Date 11/01/2015 Time 10:15:33

MEMLIMIT Size. . . . . . . . . . . . : NOLIMIT CICS Internal Trace table size (bytes). . : 12,582,912 MEMLIMIT Set By. . . . . . . . . . . : REGION CICS Internal Trace table size. . . . . . : 12,288K

Current Address Space active (bytes) : 1,098,907,648 IARV64 GETSTOR request size . . . . . . . : 1,024M Current Address Space active . . . . : 1,048M Peak Address Space active. . . . . . : 1,048M Number of IARV64 FROMGUARD failures . . . : 0 Largest IARV64 FROMGUARD failure size . . : 0

MEMLIMIT minus Current Address Space active. . . . : NOLIMIT MEMLIMIT minus allocated to Private Memory Objects : NOLIMIT Number of Private Memory Objects . . . . . . . . . : 15 ....minus Current GDSA extents . . . . . . . . . : 14 Bytes allocated to Private Memory Objects. . . . . : 2,061M = 2,161,115,136 ....minus Current GDSA allocated . . . . . . . . : 1,037M = 1,087,373,312 Bytes hidden within Private Memory Objects . . . . : 1,013M = 1,062,207,488 ....minus Current GDSA hidden. . . . . . . . . . : 1,012M = 1,061,158,912 ....minus CICS Internal Trace Table hidden . . : 0M Bytes usable within Private Memory Objects . . . . : 1,048M = 1,098,907,648 Peak bytes usable within Private Memory Objects. . : 1,314M = 1,377,828,864 Current GDSA Allocated . . . . . . . . . . . . . . : 1,024M = 1,073,741,824 Peak GDSA Allocated. . . . . . . . . . . . . . . . : 1,024M

Current GDSA Active. . . . . . . . . . . . . . . . : 1,023M = 1,072,693,248 Peak GDSA Active . . . . . . . . . . . . . . . . . : 1,023M

Current GDSA Used. . . . . . . . . . . . . . . . . : 13M Number of Shared Memory Objects. . . . . . . . . . : 0 Bytes allocated to Shared Memory Objects . . . . . : 0M = 0 Peak bytes usable within Shared Memory Objects . . : 0M = 0 Auxiliary Slots backing Private Memory Objects . . : 0 HWM Auxiliary Slots backing Private Memory Object. : 0 Real Frames backing Private Memory Objects . . . . : 5,590 HWM Real Frames backing Private Memory Objects . . : 5,842 Number of Large Memory Objects Allocated . . . . . : 0 Number of Large Pages backed in Real Storage . . . : 0

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS STATISTICS – 2nd run

17

Applid DACMASJ Sysid DACJ Jobname DACMASJ Date 11/01/2015 Time 10:35:33

MEMLIMIT Size. . . . . . . . . . . . : 6,144M CICS Internal Trace table size (bytes). . : 12,582,912 MEMLIMIT Set By. . . . . . . . . . . : JCL CICS Internal Trace table size. . . . . . : 12,288K

Current Address Space active (bytes) : 1,098,907,648 IARV64 GETSTOR request size . . . . . . . : 1,024M Current Address Space active . . . . : 1,048M Peak Address Space active. . . . . . : 1,048M Number of IARV64 FROMGUARD failures . . . : 0 Largest IARV64 FROMGUARD failure size . . : 0

MEMLIMIT minus Current Address Space active. . . . : 5,096M MEMLIMIT minus allocated to Private Memory Objects : 4,083M Number of Private Memory Objects . . . . . . . . . : 15 ....minus Current GDSA extents . . . . . . . . . : 14 Bytes allocated to Private Memory Objects. . . . . : 2,061M = 2,161,115,136 ....minus Current GDSA allocated . . . . . . . . : 1,037M = 1,087,373,312 Bytes hidden within Private Memory Objects . . . . : 1,013M = 1,062,207,488 ....minus Current GDSA hidden. . . . . . . . . . : 1,012M = 1,061,158,912 ....minus CICS Internal Trace Table hidden . . : 0M Bytes usable within Private Memory Objects . . . . : 1,048M = 1,098,907,648 Peak bytes usable within Private Memory Objects. . : 1,314M = 1,377,828,864 Current GDSA Allocated . . . . . . . . . . . . . . : 1,024M = 1,073,741,824 Peak GDSA Allocated. . . . . . . . . . . . . . . . : 1,024M

Current GDSA Active. . . . . . . . . . . . . . . . : 1,023M = 1,072,693,248 Peak GDSA Active . . . . . . . . . . . . . . . . . : 1,023M

Current GDSA Used. . . . . . . . . . . . . . . . . : 13M Number of Shared Memory Objects. . . . . . . . . . : 0 Bytes allocated to Shared Memory Objects . . . . . : 0M = 0 Peak bytes usable within Shared Memory Objects . . : 0M = 0 Auxiliary Slots backing Private Memory Objects . . : 0 HWM Auxiliary Slots backing Private Memory Object. : 0 Real Frames backing Private Memory Objects . . . . : 5,591 HWM Real Frames backing Private Memory Objects . . : 5,847 Number of Large Memory Objects Allocated . . . . . : 0 Number of Large Pages backed in Real Storage . . . : 0

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

GDSALIM = MEMLIMIT

18

1st Run Current GDSA limit: 17592186040320M Current GDSA total: 1023M Current GDSA allocated: 1024M Hwm GDSA allocated: 1024M Currently SOS above 2G: NO Number of CHANGEGUARD failures: 0 Largest failing request: 0M MEMLIMIT: NOLIMIT MEMLIMIT Source: REGION=0

2nd Run Current GDSA limit: 6144M Current GDSA total: 1023M Current GDSA allocated: 1024M Hwm GDSA allocated: 1024M Currently SOS above 2G: NO Number of CHANGEGUARD failures: 0 Largest failing request: 0M MEMLIMIT: 6144M MEMLIMIT Source: JCL

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

RSMDATA HIGHVIRTUAL

19

CICS DUMP: SYSTEM=DACMASJ CODE=MT0001 ID=1/0004 2 11:04:48 11/01/15

R S M H I G H V I R T U A L P A G E R E P O R T JOBNAME PAGE G K F P L STAT T R LOC LOC PAGE I/O FIX DG DG DG -------- ----------------- - - - - - ----- - -------- --------- -------- ---- ----------------- -------- -------- DACMASJ 00000001_00000000 N - - - - - - - - - - 00000000_00000000 7FFD0120 00000000 DACMASJ 00000001_00001000 through 00000001_7FFFF000 identical to 00000001_00000000 (07FFFF pages) Summary of Memory Objects: START VSA END VSA S K F C M CREATE TIME REQUESTOR RQAS USER TOKEN SHR MEM RESERVED ----------------- ----------------- - - - - - ------------------- --------- ---- ---------------- -------- -------- 00000008_00000000 00000008_000FFFFF N 0 Y A Y 10/28/2015 20:18:05 8458CF76 003D - - - 00000008_00100000 00000008_001FFFFF N 8 N A Y 10/28/2015 20:18:05 818794CE 003D 0000000000000001 - - 00000008_00200000 00000008_002FFFFF N 8 N A Y 10/28/2015 20:18:05 818794CE 003D 0000000000000002 - - 00000048_00000000 00000048_3FFFFFFF N 8 N U Y 10/28/2015 20:18:06 9EB53016 003D - - - 00000048_40000000 00000048_400FFFFF N 8 N A Y 10/28/2015 20:18:06 818794CE 003D 0000000000000003 - - 00000048_40100000 00000048_401FFFFF N 8 N A Y 10/28/2015 20:18:06 818794CE 003D 0000000000000004 - - 00000048_40200000 00000048_402FFFFF N 8 N U Y 10/28/2015 20:18:06 9EC9001C 003D - - - 00000048_40300000 00000048_403FFFFF N 8 N U Y 10/28/2015 20:18:06 9EC9001C 003D - - - 00000048_40400000 00000048_404FFFFF N 8 N U Y 10/28/2015 20:18:06 9EC9001C 003D - - - 00000048_40500000 00000048_405FFFFF N 8 N U Y 10/28/2015 20:18:06 9EC9001C 003D - - - 00000048_40600000 00000048_406FFFFF N 0 N A Y 10/28/2015 20:18:06 818794CE 003D 0000000000000005 - - 00000048_40700000 00000048_407FFFFF N 8 Y A Y 10/28/2015 20:18:06 818794CE 003D 0000000000000006 - - 00000048_40800000 00000048_408FFFFF N 8 Y A Y 10/28/2015 20:18:06 818794CE 003D 0000000000000007 - - 00000048_40900000 00000048_409FFFFF N 8 Y A Y 10/28/2015 20:18:06 818794CE 003D 0000000000000008 - - 00000048_40A00000 00000048_809FFFFF N 8 N U Y 10/28/2015 20:18:06 9EE1238C 003D - - -

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Traditional CICS deeper dive

20

Local System Area 00000008_00000000 Varies with Z/OS release and activity 00000008_00100000 00000008_00200000

Low User Region 00000048_00000000 IARV64 1 Gb area for internal trace out of which is carved TRTABSZ the rest is guarded

00000048_40000000 IARCP64 Trace cell pool

00000048_40100000 IARCP64 National Language Support cell pool

00000048_40200000 IARV64 NLS Message Tables for English 00000048_40300000 may be more depending on NATLANG 00000048_40400000 00000048_40500000

00000048_40600000 IARCP64 Grande Storage Allocation Cell Pool

00000048_40700000 IARCP64 31 Bit SM Control Area Cell Pool

00000048_40800000 IARCP64 Grande Control Area Cell Pool

00000048_40900000 IARCP64 Grande PPX Cell Pool

00000048_40A00000 IARV64 1 Gb area for GDSA extent, 1mb is guarded

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

GCDSA VERBX SM=1

21

CICS DUMP: SYSTEM=DACMASJ CODE=MT0001 ID=1/0004 14 13:05:28 11/01/15 ==S2: GCDSA Summary Current Size: 1024M Active Size : 13M Cushion Size: 128M LWM Size: 1024M HWM Size: 18M Current free space: 1011M * Lwm free space: 1011M * Hwm free space: 1011M Largest free area: 1010M * Times nostg returned: 0 * Times request suspended: 0 Current suspended: 0 * Hwm suspended: 0 * Cushion releases: 0 Currently SOS: NO * Times went SOS: 0 * Time at SOS: 00:00:00.000 * Storage violations: 0 Access: CICS Number of extents: 1 Extent list: Start End Size Free Empty list? 00000048_40A00000 00000048_809FFFFF 1024M 1010M N

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

GCDSA SUBPOOLS

22

==S2: Domain subpool summary (GCDSA) Name Id Chn Initf Fxlen Q-c Gets Frees Elems Elemstg Pagestg CPSM_64 01C9 0 0 0 0B 0M CQCQ_TR 00DB 1024K 0 0 1 359K 1M CQCQ_XT 00DA 1024K 0 0 1 171K 1M DFHAPD64 00BA 0 0 0 0B 0M DFHMPMDR 008B 120 Y 0 0 0 0B 0M DFHMPPMB 008D 336 Y 0 0 0 0B 0M DFHMPPRB 008E 216 Y 0 0 0 0B 0M DFHMPTAS 0089 1040 Y 0 0 0 0B 0M DS_ASSOC 000F 4096 0 0 0 0B 0M DS_VAR64 000E 0 0 1 1K 1M EP_64 00A6 Y 4096 0 0 0 0B 0M LD_APES 0028 1024K 232 Y 0 0 528 119K 1M LD_CPES 002A 1024K 264 Y 0 0 2939 757K 1M LD_CSECT 0029 1024K 192 Y 0 0 1019 191K 1M LD_IAES 002B 368 Y 0 0 0 0B 0M ML64GNRL 0093 0 0 0 0B 0M MN_ACD 012A 224 Y 0 0 0 0B 0M MN_ADCS 012B 1024K 1056 Y 19 18 4 4K 1M PGCSDB 0077 1024K 0 0 1 4K 1M PGPPTE64 0079 1024K 168 Y 0 0 0 0B 1M PI_GEN64 0061 0 0 0 0B 0M SMSHRC64 00F0 Y 1 0 1 4K 1M TSDTN 0146 1024K 168 Y 0 0 1 168B 1M TSMAIN 014E 0 0 0 0B 0M TSQUEUE 0147 240 Y 0 0 0 0B 0M TSTSI 014B 16 Y 0 0 0 0B 0M WBUME64 0117 1024K 256 Y 0 0 0 0B 1M WU_64 0163 0 0 1 4K 1M XMGEN64 0018 0 0 0 0B 0M XMTXD64 0015 1024K 240 Y 0 0 0 0B 1M

Look at the the latest documentation for CICS Subpools CICS Transaction Server for z/OS V5.3 open beta>Improving performance>Improving the performance of a CICS system>Virtual and real storage: performance and tuning>CICS virtual storage>CICS subpools>CICS subpools in the GCDSA

Preoccupation today : ECDSA VSCR - moving “stuff” from below the bar to above the bar

Examples  PGCSDB Storage for

channel container segments

 TSMAIN Storage for main temporary storage.

TSMAINLIMIT=64M  must not be greater than 25% of MEMLIMIT  Maximum 32 Gb

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

64 bit storage for new non LE assembler

23

EXEC CICS GETMAIN64 FLENGTH(F_LENGTH) SET (R08) CICSDATAKEY NOSUSPEND RESP(RESPONSE)

EXEC CICS GETMAIN64 FLENGTH(F_LENGTH) SET (R08) USERDATAKEY NOSUSPEND RESP(RESPONSE)

EXEC CICS GETMAIN64 FLENGTH(F_LENGTH) SET (R08) SHARED NOSUSPEND RESP(RESPONSE)

EXEC CICS PUT64 CONTAINER(CONTNAME) CHANNEL(CHANNAME) FROM(0(,R08)) FLENGTH(F_LENGTH) RESP(RESPONSE)

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS STATISTICS – 3rd run

24

MEMLIMIT Size. . . . . . . . . . . . : 6,144M CICS Internal Trace table size (bytes). . : 12,582,912 MEMLIMIT Set By. . . . . . . . . . . : JCL CICS Internal Trace table size. . . . . . : 12,288K

Current Address Space active (bytes) : 3,246,391,296 IARV64 GETSTOR request size . . . . . . . : 1,024M Current Address Space active . . . . : 3,096M Peak Address Space active. . . . . . : 3,108M Number of IARV64 FROMGUARD failures . . . : 0 Largest IARV64 FROMGUARD failure size . . : 0

MEMLIMIT minus Current Address Space active. . . . : 3,048M MEMLIMIT minus allocated to Private Memory Objects : 2,033M Number of Private Memory Objects . . . . . . . . . : 19 ....minus Current GDSA extents . . . . . . . . . : 16 Bytes allocated to Private Memory Objects. . . . . : 4,111M = 4,310,695,936 ....minus Current GDSA allocated . . . . . . . . : 1,039M = 1,089,470,464 Bytes hidden within Private Memory Objects . . . . : 1,015M = 1,064,304,640 ....minus Current GDSA hidden. . . . . . . . . . : 1,012M = 1,061,158,912 ....minus CICS Internal Trace Table hidden . . : 0M Bytes usable within Private Memory Objects . . . . : 3,096M = 3,246,391,296 Peak bytes usable within Private Memory Objects. . : 3,108M = 3,258,974,208 Current GDSA Allocated . . . . . . . . . . . . . . : 3,072M = 3,221,225,472 Peak GDSA Allocated. . . . . . . . . . . . . . . . : 3,072M

Current GDSA Active. . . . . . . . . . . . . . . . : 3,069M = 3,218,079,744 Peak GDSA Active . . . . . . . . . . . . . . . . . : 3,069M

Current GDSA Used. . . . . . . . . . . . . . . . . : 15M Number of Shared Memory Objects. . . . . . . . . . : 0 Bytes allocated to Shared Memory Objects . . . . . : 0M = 0 Peak bytes usable within Shared Memory Objects . . : 0M = 0 Auxiliary Slots backing Private Memory Objects . . : 0 HWM Auxiliary Slots backing Private Memory Object. : 0 Real Frames backing Private Memory Objects . . . . : 5,603 HWM Real Frames backing Private Memory Objects . . : 8,675 Number of Large Memory Objects Allocated . . . . . : 0 Number of Large Pages backed in Real Storage . . . : 0

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

GDSA STATISTICS 3rd run

25

MEMLIMIT Size . . . . . . . . : 6,144M CICS Internal Trace table size (bytes) . . . . . : 582,912 MEMLIMIT Set By . . . . . . . : JCL CICS Internal Trace table size . . . . . . . . . : 12,288K Current Address Space active. : 3,096M Number of Private Memory Objects . . . . . . . . : 19 Peak Address Space active . . : 3,108M Bytes allocated to Private Memory Objects. . . . : 4,310,695,936 Bytes hidden within Private Memory Objects . . . : 1,064,304,640 Current GDSA Allocated. . . . : 3,072M Peak bytes usable within Private Memory Objects. : 3,258,974,208 Peak GDSA Allocated . . . . . : 3,072M Current GDSA Active . . . . . : 3,069M Peak GDSA Active. . . . . . . : 3,069M GCDSA GUDSA GSDSA Totals Current DSA Size. . . . . . . : 1,024M 1,024M 1,024M 3,072M Current DSA Used. . . . . . . : 14M 0M 1M 15M Current DSA Used as % of DSA. : 1% 0% 0% * Peak DSA Used . . . . . . . . : 18M 1M 1M Peak DSA Size . . . . . . . . : 1,024M 1,024M 1,024M Cushion Size. . . . . . . . . : 128M 0M 128M Free Storage (inc. Cushion) . : 1,010M 1,024M 1,023M * Peak Free Storage . . . . . . : 1,024M 1,024M 1,024M * Lowest Free Storage . . . . . : 1,006M 1,023M 1,023M Largest Free Area . . . . . . : 1,009M 1,023M 1,022M Largest Free Area as % of DSA : 98% 99% 99% Largest Free/Free Storage . . : 0.99 0.99 0.99 Current number of extents . . : 1 1 1 3 Number of extents added . . . : 1 1 1 Number of extents released. . : 0 0 0 Getmain Requests. . . . . . . : 4,578 2 1 Freemain Requests . . . . . . : 77 2 0 Current number of Subpools. . : 30 0 2 32 Add Subpool Requests. . . . . : 89 59 2 Delete Subpool Requests . . . : 41 41 0 Times no storage returned . . : 0 0 0 Times request suspended . . . : 0 0 0 Current requests suspended. . : 0 0 0 Peak requests suspended . . . : 0 0 0 Requests purged while waiting : 0 0 0 Times Cushion released. . . . : 0 0 0 0 Times Short-On-Storage. . . . : 0 0 0 0 Access. . . . . . . . . . . . : CICS USER USER

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Transaction dump trace table

 Ephemeral Adjective lasting for a very short time

 synonyms transitory, transient, fleeting, passing, short-lived, momentary…

26

SSRV 14B 01C02080 00000000 00000000 00000000 IarV64 GetStor 00000049_00C00000 00000000_0000000C 00000000_00000000

SSRV 14B 03802000 00000000 00000000 00000000 IarV64 Detach 00000049_00C00000 00000000_00000000 00000000_00000000

TRTRANSZ=1024K up to 1Gb

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS with Java

 Results on your system…

 Could be completely different

 Depends on number of JVMSERVERS

 Number of threads

 LE runtime options

 DFHAXRO

 JVMProfile options

 ������Java heap size

 Shared class cache

 Compressed references

27

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS with Java statistics

28

Applid DACMASA Sysid DACA Jobname DACMASA Date 11/01/2015 Time 15:15:28 Storage ABOVE 2GB MEMLIMIT Size. . . . . . . . . . . . : 51,200M CICS Internal Trace table size (bytes). . : 12,582,912 MEMLIMIT Set By. . . . . . . . . . . : JCL CICS Internal Trace table size. . . . . . : 12,288K

Current Address Space active (bytes) : 34,698,428,416 IARV64 GETSTOR request size . . . . . . . : 1,024M Current Address Space active . . . . : 33,091M Peak Address Space active. . . . . . : 33,092M Number of IARV64 FROMGUARD failures . . . : 0 Largest IARV64 FROMGUARD failure size . . : 0

MEMLIMIT minus Current Address Space active. . . . : 18,109M MEMLIMIT minus allocated to Private Memory Objects : 16,104M Number of Private Memory Objects . . . . . . . . . : 114 ....minus Current GDSA extents . . . . . . . . . : 111 Bytes allocated to Private Memory Objects. . . . . : 35,096M = 36,800,823,296 ....minus Current GDSA allocated . . . . . . . . : 32,024M = 33,579,597,824 Bytes hidden within Private Memory Objects . . . . : 2,005M = 2,102,394,880 ....minus Current GDSA hidden. . . . . . . . . . : 2,002M = 2,099,249,152 ....minus CICS Internal Trace Table hidden . . : 990M Bytes usable within Private Memory Objects . . . . : 33,091M = 34,698,428,416 Peak bytes usable within Private Memory Objects. . : 33,092M = 34,699,476,992 Current GDSA Allocated . . . . . . . . . . . . . . : 3,072M = 3,221,225,472 Peak GDSA Allocated. . . . . . . . . . . . . . . . : 3,072M

Current GDSA Active. . . . . . . . . . . . . . . . : 3,069M = 3,218,079,744 Peak GDSA Active . . . . . . . . . . . . . . . . . : 3,069M

Current GDSA Used. . . . . . . . . . . . . . . . . : 14M Number of Shared Memory Objects. . . . . . . . . . : 1 Bytes allocated to Shared Memory Objects . . . . . : 128M = 134,217,728 Peak bytes usable within Shared Memory Objects . . : 128M = 134,217,728 Auxiliary Slots backing Private Memory Objects . . : 0 HWM Auxiliary Slots backing Private Memory Object. : 0 Real Frames backing Private Memory Objects . . . . : 39,117 HWM Real Frames backing Private Memory Objects . . : 39,373 Number of Large Memory Objects Allocated . . . . . : 0 Number of Large Pages backed in Real Storage . . . : 0

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS with Java Highvirtual report

29

CICS DUMP: SYSTEM=DACMASA CODE=DACA ID=1/0005 40 14:06:12 11/02/15 R S M H I G H V I R T U A L P A G E R E P O R T JOBNAME PAGE G K F P L STAT T R LOC LOC PAGE I/O FIX DG DG DG -------- ----------------- - - - - - ----- - -------- --------- -------- ---- ----------------- -------- -------- DACMASA 00000001_00000000 Y 8 Y N N FREF 3 00000000 - - - 00000000_AE470010 7F598DA0 00000000 DACMASA 00000001_00001000 through 00000001_7FFFF000 identical to 00000001_00000000 (07FFFF pages) Summary of Memory Objects: START VSA END VSA S K F C M CREATE TIME REQUESTOR RQAS USER TOKEN SHR MEM RESERVED ----------------- ----------------- - - - - - ------------------- --------- ---- ---------------- -------- -------- 00000000_80000000 00000007_800FFFFF N 8 Y U Y 11/01/2015 09:27:44 FC900D3A 0046 - - - 00000008_00000000 00000008_000FFFFF N 0 Y A Y 11/01/2015 09:26:40 8458CF76 0046 - - - 00000008_00100000 00000008_001FFFFF N 8 N A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000001 - - 00000008_00200000 00000008_002FFFFF N 8 N A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000002 - - 00000048_00000000 00000048_3FFFFFFF N 8 N U Y 11/01/2015 09:26:41 9EB53016 0046 - - - 00000048_40000000 00000048_400FFFFF N 8 N A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000003 - - 00000048_40100000 00000048_401FFFFF N 8 N A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000004 - - 00000048_40200000 00000048_402FFFFF N 8 N U Y 11/01/2015 09:26:41 9EC9001C 0046 - - - 00000048_40300000 00000048_403FFFFF N 8 N U Y 11/01/2015 09:26:41 9EC9001C 0046 - - - 00000048_40400000 00000048_404FFFFF N 8 N U Y 11/01/2015 09:26:41 9EC9001C 0046 - - - 00000048_40500000 00000048_405FFFFF N 8 N U Y 11/01/2015 09:26:41 9EC9001C 0046 - - - 00000048_40600000 00000048_406FFFFF N 0 N A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000005 - - 00000048_40700000 00000048_407FFFFF N 8 Y A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000006 - - 00000048_40800000 00000048_408FFFFF N 8 Y A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000007 - - 00000048_40900000 00000048_409FFFFF N 8 Y A Y 11/01/2015 09:26:41 818794CE 0046 0000000000000008 - - 00000048_40A00000 00000048_809FFFFF N 8 N U Y 11/01/2015 09:26:41 9EE1238C 0046 - - - 00000048_80A00000 00000048_80AFFFFF N 0 N A Y 11/01/2015 09:27:42 83605AC4 0046 7F320E8000000000 - - 00000048_80B00000 00000048_80BFFFFF N 8 N A Y 11/01/2015 09:27:42 83605FC2 0046 7F320E8000000000 - - 00000048_80C00000 00000048_82FFFFFF N 8 N A Y 11/01/2015 09:27:42 836009E6 0046 7F320E8000000001 - - 00000048_83000000 00000048_934FFFFF N 8 N A Y 11/01/2015 09:27:42 83600C56 0046 7F320E8000000001 - - 00000048_93500000 00000048_935FFFFF N 0 N A Y 11/01/2015 09:27:43 83607054 0046 7F320E8000000001 - - 00000048_93600000 00000048_956FFFFF N 8 N A Y 11/01/2015 09:27:43 8360721E 0046 7F320E8000000001 - - 00000048_95700000 00000048_958FFFFF N 8 N A Y 11/01/2015 09:27:43 83607302 0046 7F320E8000000001 - - 00000048_95900000 00000048_B19FFFFF N 8 N A Y 11/01/2015 09:27:44 8360419C 0046 7F320E8000000001 - - 00000048_B1A00000 00000048_B1AFFFFF N 0 N A Y 11/01/2015 09:29:05 83607054 0046 7F320E8000000001 - - 00000048_B1B00000 00000048_B3BFFFFF N 8 N A Y 11/01/2015 09:29:05 8360721E 0046 7F320E8000000001 - - 00000048_B3C00000 00000048_B3DFFFFF N 8 N A Y 11/01/2015 09:29:05 83607302 0046 7F320E8000000001 - - 00000048_B3E00000 00000048_B3EFFFFF N 0 N A Y 11/01/2015 09:29:05 83607054 0046 7F320E8000000001 - - 00000048_B3F00000 00000048_B5FFFFFF N 8 N A Y 11/01/2015 09:29:05 8360721E 0046 7F320E8000000001 - - 00000048_B6000000 00000048_B61FFFFF N 8 N A Y 11/01/2015 09:29:05 83607302 0046 7F320E8000000001 - - 00000048_B6200000 00000048_B62FFFFF N 0 N A Y 11/01/2015 09:29:05 83607054 0046 7F320E8000000001 - - 00000048_B6300000 00000048_B83FFFFF N 8 N A Y 11/01/2015 09:29:05 8360721E 0046 7F320E8000000001 - - 00000048_B8400000 00000048_B85FFFFF N 8 N A Y 11/01/2015 09:29:05 83607302 0046 7F320E8000000001 - - many

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

CICS with Java deeper dive

30

Local System Area 00000000_80000000 IARV64 Jvmprofile using -Xcompressedrefs 00000008_00000000 Varies with Z/OS release and activity 00000008_00100000 00000008_00200000

Low User Region 00000048_00000000 IARV64 1 Gb area for internal trace 00000048_40000000 IARCP64 Trace cell pool 00000048_40100000 IARCP64 National Language Support cell pool 00000048_40200000 IARV64 NLS Message Tables for English 00000048_40300000 may be more depending on NATLANG 00000048_40400000 00000048_40500000 00000048_40600000 IARCP64 Grande Storage Allocation Cell Pool 00000048_40700000 IARCP64 31 Bit SM Control Area Cell Pool 00000048_40800000 IARCP64 Grande Control Area Cell Pool 00000048_40900000 IARCP64 Grande PPX Cell Pool 00000048_40A00000 IARV64 1 Gb area for GDSA extent, 1mb is guarded 00000048_80A00000 IARV64 LE HEAP storage control blocks 00000048_80B00000 IARV64 IPT DFHSJSCL Etc etc etc etc

Shared Area 00000200_00100000 IARV64 Shared Class Cache

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

 What is a 64 bit memory object?  What are the Grande Dynamic Storage Areas used for?  What are the Storage Manager end of day statistics

telling me?  And only a brief digression!

31

What have we covered?

Session feedback – Do it online at conferences.gse.org.uk/2015/feedback/gg

Session feedback

 Please submit your feedback at

http://conferences.gse.org.uk/2015/feedback/gg

 Session is GG

This is the last slide in the deck

32