29
1 © 2012 IBM Corporation August 2012 IMS User Group, Sao Paulo, Brazil IMS Performance Hints and Tips Mike Gonzales IBM Software Group

IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

  • Upload
    ibm-ims

  • View
    1.391

  • Download
    16

Embed Size (px)

Citation preview

Page 1: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

1 © 2012 IBM Corporation

August 2012 IMS User Group, Sao Paulo, Brazil

IMS Performance Hints and Tips

Mike GonzalesIBM Software Group

Page 2: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

2 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

222

© Copyright IBM Corporation 2012. All rights reserved.U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION CONTAINED IN THIS PRESENTATION, IT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY, WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION. NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, NOR SHALL HAVE THE EFFECT OF, CREATING ANY WARRANTIES OR REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR LICENSORS), OR ALTERING THE TERMS AND CONDITIONS OF ANY AGREEMENT OR LICENSE GOVERNING THE USE OF IBM PRODUCTS AND/OR SOFTWARE.

IBM, the IBM logo, ibm.com, Information Management, IMS, CICS, DB2, WebSphere and z/OS are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml

Other company, product, or service names may be trademarks or service marks of others.

Disclaimer

Page 3: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

3 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Part 1 : The Mechanic’s Tool Kit

Page 4: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

4 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Log Analysis Tool(s)

• Standard Utilities

– DFSERA10

– DFSILTA0

– DBFILTA0

– DFSISTS0

• KBLA (pre IMS V12)

• IMS Performance Analyzer

• IMS Problem Investigator

• IBM Transaction Analysis Workbench

• Set TRANSTAT=Y

– (DFSDFxxx, TRANSACT macro, CREATE/UPD TRAN/PGM)

– Enhanced transaction statistics

Page 5: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

5 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Sampling Tool

• IBM Application Performance Analyzer

• Macro 4 Freeze Frame

• Compuware STROBE

• IBM MVS Hardware Instrumentation Service (HIS)

Page 6: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

6 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

System Resource Reporting

• IBM Resource Measurement Facility (or equivalent)

• Tivoli Decision Support (TDS) for IMS

Page 7: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

7 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Part 2 : Infrastructure – The Chasis

Page 8: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

8 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

MVS Workload Manager (WLM)

• Limit service periods to 30 or fewer

• Use all 6 Importance values (1 to 5, + Discretionary)

• Limit use of CPU Critical

• Define IMS transaction response time goals for IMS TM

• Use common service classes for multiple subsystems

• Use report classes for granular feedback/charge back

• Target Performance Index 0.8 – 1.1 during peaks

• Service Coefficients : CPU 1.0 SRB 1.0 MSO 0.5 IOC 0.0

Page 9: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

9 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Global Resource Serialization (GRS)

• Convert RECON RESERVEs to ENQs in GRS STAR

• Exclude RECONs for access outside of a parallel sysplex

Page 10: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

10 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Resource Access Control Facility (RACF)

• Cache, cache, cache

– VLF

– CF

– IMS OTMA

– IMS Connect

Page 11: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

11 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Part 3 : IMS – The Engine

Page 12: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

12 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Scheduling – Program Load

• Program Preload

– APA – Load Module Summary

– STROBE – SVC122 count

– PRLD=suffix of DFSMPLxx

• Library Routine Retention (LRR) – DFSINTxx+CEELRRIN or CEELRRXP

• Add IMS program libraries to VLF (stores load modules in data spaces)

• LLA – FREEZE (manages TTR/directory information, FREEZE ensures they

remain in virtual storage)

• STEPLIB the application

program libraries

that are in LINKLIST

Page 13: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

13 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Scheduling – Scheduling Blocks/Pools

• Resident PSB/DMB – loaded during IMS initialization

• Size pools to avoid cast outs

• PWFI – reuse scheduled resources, maximize local-first

scheduling in shared queues

• IFPs – Schedule once per region execution

• BMPs – WFI and looping/waiting schedule once

• PST=xxx

– Set high enough to prevent excessive GETs/FREEs

Page 14: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

14 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Scheduling – Shared Queues False Scheduling

• CFCC 16 reduces global false scheduling with multiple

members in a shared queues group

• IMS V11 reduces local false scheduling between parallel regions

Page 15: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

15 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Page Fixing

• DFSFIXnn

– FP, DMBD, PSBD, DLDP, DLMP, DPSB, QBUF

– V12 backs 31-virt with 64-real for DBWP, DLDP, DLMP, DPSB, and PSBW

• DB Buffers – specify fix options in DFSVSMxx

• Watch out for SORT !!!

– Consider WLM Storage Critical for DB2 DBM1

• EXVR=1

– Page fix Queue Buffers

• EXCPVR=1

– Page fix OSAM buffer pool

Page 16: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

16 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Database Locking

• Use Program Isolation as long as possible

• With IRLM :

– use SCOPE=NODISCON

� Prevent batch connect/disconnect when IMS control region is down

– Use DEADLOK > 5

� Use millisecond based detection cycles

• Use LOCKTIME (DFSVSMxx/DFSVSAMP)

� Sets timeout for waiting on lock request

� Return ‘BD’ or U3310

• Use minimum PROCOPT needed

Page 17: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

17 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Database Access Methods

• Performance by design

– DEDB

– HDAM/PHDAM – OSAM

– HDAM/PHDAM - VSAM

– HIDAM/PHIDAM – OSAM

– HIDAM/PHIDAM – VSAM

• DEDB + Secondary Index

– HDAM/PHDAM + Secondary Index

Page 18: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

18 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Database Buffers

• Adjust to workload, alter dynamically (IMS V12)

• Page fix if not storage constrained

• IMS Buffer Pool Analyzer

– Use buffer life as tuning metric

Page 19: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

19 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Logging

• IMS V12 OLDS/SLDS Striping

• Adjust log buffers to avoid buffer waits

• Use 64-bit buffer pool (OLDS BLKSIZE = 4K * n)

• WADS mirroring max 20 Km

Page 20: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

20 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Logging - 64-bit Log Buffers / 1M pages

• IEASYSxx

– LFAREA=nn (%, G, or M)

• OLDS allocated by DFSMS

– Extended format (striped)

• DFSVSMxx

– BUFSTOR=64

– BLKSZ=(4K * n)

Page 21: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

21 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Queue Buffers

• Adjust number to prevent QBUF waits

• Size according to majority of queue activity

Page 22: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

22 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

IMS Connect

• Persistent socket

– Connect once then multiple write/read iterations for multiple transactions before Close (Disconnect)

– This will keep the socket open – make sure you have defined enough sockets

• Send ICON messages as a single message with all

components

• Ensure TCPIP NODELAYACK is specified on TCP/IP

PORT or GATEWAY statements

Page 23: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

23 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

zIIP/zAAP support

• Request response processing for authorized CQS clients is

eligible to run on a zIIP

• Examples

• When the IMS control region is running with IMS Shared

Message Queues or Shared IMS Fast Path Message Queues

enabled

• When the IMS Resource Manager address space is using a

resource structure

• IMS Java runs on zAAPs

Page 24: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

24 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Part 4 : Outside the Box – The Accessories

Page 25: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

25 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

WMQ

• Tune MQ buffers and pagesets

• Review and disable internal traces

• Consider MQGET(WAIT) loop if IMS Msg Queues not needed

• Preload WMQ routines in MPRs

– CSQQDEFV, CSQQCONN, CSQQDISC, CSQQTERM, CSQQINIT, CSQQBACK, CSQQCMMT, CSQQESMT, CSQQPREP, CSQQTTHD, CSQQWAIT, CSQQNORM, CSQQSSOF, CSQQSSON, CSQFSTAB,CSQQRESV, CSQQSNOP, CSQQCMND, CSQQCVER, CSQQTMID, CSQQTRGI, CSQFSALM, CSQAPRH

Page 26: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

26 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

DB2

• DB2 thread counts – make sure enough storage for DB2

• Reduce/prevent global contention

Page 27: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

27 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

RRS

• Avoid RRS

• Monitor and resize DELAYED UR logstream to avoid

offloads

• IMS V12 XCFIMS for Commit Mode 1 instead of RRS

Page 28: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

28 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

CICS - DBCTL

• IMS V12 DRA Open Thread TCB – CICS Threadsafe

Page 29: IMS Performance Hints and Tips - IMS UG August 2012 Sao Paulo

29 © 2012 IBM Corporation

2012 IMS Technical Conference , Australia

Contact Information

For assistance or service engagement requests contact:

Jeff Hook, Manager IMS Technical Services

[email protected]

Mike Gonzales, IMS Technical Specialist

[email protected]