You are on page 1of 75

IBM Software Group

IBM CICS® Transaction Server for z/OS™ V3.1


Performance Report
April 2005

CICS Performance Group


IBM Hursley

© 2004 IBM Corporation


IBM Software Group

Performance summary (V3.1 compared to V2.3) -


Highlights
 Traditional VSAM (DSW workload)
– CPU used - Equivalent
 Traditional DB2 (RTW workload)
– CPU used - Equivalent
 Java
– CPU used - Equivalent
 HTTP
– Concurrent session limit raised from 900 to 65000 per region
– Some customers will start using persistent sessions and then also make CPU savings
 HTTPS
– Concurrent session limit raised from 250 to 65000 per region
 SOAP
– Using WSDL2CICS, our workload showed up to 20% CPU saving compared to CTS 2.3 SOAP feature
 Containers
– Program call using CONTAINER, within 2% CPU/Tran of COMMAREA linkage on 1 MIP application
 XPLINK
– Shorter pathlength for C++ method linkage
– Any benefits will depend on size, number of calls, depth of nested calls etc.
 OPENAPI
– Applications other than those that call DB2 can now exploit OPEN TCBs
– Throughput not limited by QR TCB, multiple CPUs can now be exploited concurrently.

2 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Hursley Performance Environment

 Exclusive use LPAR on Z990 2084 332


– 3 dedicated CPUs for system under test

 Shared use of LPAR for network simulation

 Use LSPR to scale CPU figures to other target systems


– 2084 332 ITR/32 or 2084 303 ITR/3 for CP speed
comparison?
• We found the 303/3 to be more accurate for scaling workloads

3 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Release/Release

4 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Release/Release Comparisons

 COBOL VSAM
– 'DSW ' workload
 COBOL DB2
– 'RTW' workload
 Java
– Standard Java/JCICS and EJB workload
 Compare ITR (tran per CPU second)
– Transaction rate in TORs/Total CICS regions CPU
 Taken from average of 5 Transaction rates
5 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Release to Release - DSW Workload (VSAM)


 Hardware  Software
– 2084-303 system under test – z/OS 1.6
– 2084-303 TPNS driver

 CICS Environment  Workload


– 2 TORs, 2 AORs, 1 FOR all MRO connected – 34 transaction types
– All VSAM files recoverable – COBOL applications
– VTAM HPO used – 40% transactions invoke menu
– No transaction isolation or storage protection – 32 VSAM KSDS files
– Long running mirror in FOR – average 6 FC calls per transaction
– EXEC CICS LINK to program for each FC call
– 69% Read, 10% Read for Update, 9% Update,
– 11% Add , 1% Delete
– XEIIN and XEIOUT enabled
– TRUE enabled
– CICS Performance Monitoring on

6 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

DSW Performance Data

ITR
ETR TORs% AORs% FOR% Resp ms/tran

384.99 7.9 23.6 10.9 0.037 1.10 2727


531.50 10.6 32.2 14.8 0.036 1.08 2777
Average ITR = 2809 V2.3
708.11 14.2 42.4 19.0 0.039 1.06 2830
1055.21 20.9 62.7 28.5 0.036 1.06 2830
1586.01 31.6 92.8 41.5 0.040 1.04 2884

ITR
ETR TORs% AORs% FOR% Resp ms/tran

384.93 8.0 23.9 11.0 0.037 1.11 2702


531.49 10.8 32.5 14.9 0.036 1.09 2752
Average ITR = 2794 V3.1
710.50 14.2 43.1 19.3 0.035 1.07 2803
Delta = 0.5%
1053.94 20.8 63.2 28.5 0.037 1.06 2830
1564.69 30.8 92.0 40.7 0.043 1.04 2884

7 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Release to Release - RTW Workload (DB2)

 Hardware  Software
– 2084- 303 system under test – z/OS 1.6
– 2084- 303 TPNS driver
 Workload
 CICS Environment – 7 transaction types
– Single Region – COBOL applications - Not Thread safe
– 20 Database tables
 DB2 Environment – Average 200 DB2 calls per transaction
– 7.1.0 – 54% Select, 1% inset, 1% update,
1%delete,
– Thread priority = High
– 8% open cursor, 27% fetch cursor 8
– Protect num = 0 close cursor
– Account Rec = UOW – No CICS tracing
– SMF 89 not collected (usage pricing)
– No Class (1) accounting

8 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

RTW Performance Data


ITR
ETR CPU% Resp ms/tran

41.49 29.3 0.032 7.06 425


62.22 42.5 0.024 6.83 439
V2.3
Average ITR = 427 99.59 67.5 0.016 6.78 443 DB2 7.1
245.08 176.5 0.037 7.20 417
315.65 230.7 0.081 7.31 410

ITR
ETR CPU% Resp ms/tran

41.5 28.6 0.017 6.89 435

Average ITR = 426 62.64 42.8 0.017 6.83 439 V3.1


Delta = 0.2% 99.56 69.0 0.018 6.93 433 DB2 7.1
245.78 177.9 0.039 7.24 414
286.88 210.4 0.059 7.33 409

9 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Release to Release - Java Workloads

 Hardware  Software
– 2084-303 system under test – z/OS 1.6
– 2084-303 TPNS driver
 JCICS Workload
 CICS Environment – Simple Java application
– Single Region – Ave. 100 mixed API calls
– Java JDK 1.4.2 – 3270 driven
– Single JVM
– REUSE=RESET and  EJB workload
REUSE=YES
– Simple EJB
– Uses JCICS to call COBOL
'backend'
– COBOL application is about
3.4ms of CPU

10 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

JCICS Performance Data


ITR ITR
ETR CPU% Resp ms/tran ETR CPU% Resp ms/tran

66.20 24.8 .009 3.74 802.1 66.26 21.3 0.007 3.21 934.5
98.57 36.6 .013 3.71 808.6 99.19 32.1 0.008 3.23 928.7
139.75 51.6 .015 3.69 813.0 141.41 44.6 0.007 3.15 952.3
193.76 71.7 .016 3.70 810.8 195.43 61.4 0.010 3.14 955.4
254.98 94.2 .092 3.69 813.0 297.27 93.6 0.037 3.14 955.4

V2.3 REUSE=RESET V2.3 REUSE=YES


ITR ITR
ETR CPU% Resp ms/tran ETR CPU% Resp ms/tran

66.23 25.1 0.008 3.78 793.6 66.43 21.6 0.008 3.25 923.0
98.70 37.1 0.011 3.75 800.0 99.32 32.3 0.008 3.25 923.0
139.69 52.3 0.014 3.74 802.1 141.40 44.6 0.007 3.15 952.3
193.49 72.5 0.016 3.74 802.1 197.07 61.8 0.007 3.13 958.4
251.92 94.3 0.097 3.74 802.1 298.36 94.1 0.035 3.15 952.3

V3.1 REUSE=RESET V3.1 REUSE=YES

11 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

EJB Performance Data


ITR ITR
ETR CPU% Resp ms/tran ETR CPU% Resp ms/tran

83.34 43.9 0.007 5.26 570.3 83.43 33.9 0.005 4.06 738.9
95.12 50.1 0.007 5.26 570.3 95.13 38.6 0.005 4.05 740.0
110.38 58.1 0.008 5.26 570.3 110.6 44.7 0.005 4.05 740.0
131.73 69.2 0.010 5.25 571.4 132.16 53.4 0.006 4.04 742.5
185.50 97.3 0.028 5.24 572.5 188.86 76.1 0.008 4.02 746.2

V2.3 REUSE=RESET V2.3 REUSE=YES


ITR ITR
ETR CPU% Resp ms/tran ETR CPU% Resp ms/tran

83.32 43.4 0.007 5.19 578.0 83.16 34.5 0.007 4.14 724.6
95.12 50.4 0.007 5.29 567.1 95.19 39.4 0.006 4.13 726.3
110.38 58.5 0.009 5.29 567.1 110.49 45.7 0.006 4.13 726.3
131.73 69.7 0.011 5.29 567.1 132.15 54.6 0.006 4.13 726.3
185.21 97.8 0.029 5.28 568.1 188.79 77.7 0.009 4.11 729.9

V3.1REUSE=RESET V3.1 REUSE=YES

12 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTP

13 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTP - Performance perspective

 Increase concurrent connections to 65000


– No affinity to long running CWXN transactions
 3.1 Customers with large networks
– Can now use keep-alive and SocketClose (NO)
– Now have a new CWXN for each request
– No need to make and break the connections
 Migrating from a keep-alive (no) environment
– Increased session limit and less CPU per request
 Migrating from a keep-alive (yes) environment
– Increased session limit, +3 to +4% CPU on a 2.5 MS transaction

14 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Inbound HTTP - Storage per Connection

Approx. 4.8k per connection


15 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTP CPU per Tran (COMMAREA)

16 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTP CPU per Tran (WEB API up to 32K)

17 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTP CPU per Tran (WEB API over 32k)

Includes TCPIP
18 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS

19 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS - Terms

 Full handshake
– Negotiate session parameters, cipher suite etc.
– Done once per connection by CWXN for a new connection
 Partial handshake
– Done when client has previously had an SSL connection that has
since been closed
• And the Client has retained SSL session id
• The Session id has been retained in CICS storage or Coupling Facility
– Done within the CWXN transaction
 Encrption/Decryption
– For a persistent connection only the one handshake is needed
– After that just Encyption/Decryption
– Done by the CWBA transaction
20 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS - Terms

 Hashing
– Ensure data integrity during transport (ie. not been changed),
– Two common algorithms
• MD5 Done in software
• SHA-1 Done in Hardware
 CPACF
– CP Assist for Cryptographic Function
– Available on every CP so no affinity issues
– SHA-1 TDES and DES Encypt/decrypt done by these on Z990
 PCIXCC
– Peripheral Component Extended Cryptographic Coprocessor
– Full Handshakes are done by these on Z990 if ICSF active
– Handsheke rates and card Utilisation are recorded by RMF

21 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS - Performance perspective

 Increase concurrent connections


– No affinity to SSL TCB for duration of connection
• SSL TCB per connection now not required
– No affinity to long running CWXN transaction
 Easy choice over Cipher suites
– Specified on TCPIPSERVICE definition
 Sysplex wide cache for SSL session id

22 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS - Storage per Connection

V2.3 - physical restriction was


V3.1
17K below line per connection
Max. = 65000 connections
+ 1.5 M above per connection
Approx. 10K EDSA + 3K MVS
+ I TCB per connection
storage per connection
Max. = 250 connections

23 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

V2.3 Vs V3.1 HTTPS


- DES 56 Encryption / Decryption costs

Data taken from RMF, includes CWXN and CWBA


24 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS – Encryption / Decryption costs

SSL_RSA_WITH_3DES_EDE_CBC_SHA (approx. 0.022 ms CPU per 1k)


SSL_RSA_WITH_RC4_128_SHA (approx. 0.038 ms CPU per 1k)
SSL_RSA_EXPORT_WITH_RC2_CBC_40_MD5 (approx. 0.180 ms CPU per 1k)
SSL_RSA_WITH_DES_CBC_SHA (approx. 0.015 ms CPU per 1k)
TLS_RSA_WITH_AES_256_CBC_SHA (approx. 0.046 ms CPU per 1k)

25 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

HTTPS (DES 56) vs HTTP Encryption/Decryption costs

26 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SSL Full Handshake CPU costs

Includes CSOL, CWXN and CWBA CPU costs


27 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SSL Partial Handshake CPU costs

Includes CSOL, CWXN and CWBA CPU costs

28 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

OPEN API

29 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Open API

 Running on 'Open TCBs' gives CPU concurrency


 Throughput is not limited to the speed of a single CP
 Reduces any contention for the 'QR' TCB
 Open API is not intended to reduce CPU per
transaction
 It does give more potential throughput per region
 Allows the application to use other APIs
– Those that would otherwise 'block' the QR TCB

30 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Open API

 Prior to V3.1
– Threadsafe DB2 applications ran on L8 Open TCBs after a
DB2 call

 V3.1
– Threadsafe and CICSAPI or OPENAPI on program
definition
– OPENAPI puts program on L8 or L9 during initialisation
– USER key = L9 CICS key = L8

31 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Open API

CICS API OPEN API


CPU secs used per minute CPU secs used per minute
at 482 trans per sec at 1065 trans per sec

Quasi - max. ETR = 482 OPEN - max. ETR = 1065


CPU per tran = 2.26ms CPU per tran = 2.54ms

32 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Open API Cautions!

 Choose applications carefully


– Avoid applications with non-threadsafe APIs
• e.g.. lots of File Control (this will cause TCB switching back to QR)

 Migrating Threadsafe DB2 applications from V2.3


– userkey/threadsafe on V2.3 ------------------- application runs on L8
– userkey/threadsafe/OPENAPI on V3.1 ----- application runs on L9
• DB2 calls then need to switch to L8!
– Leave DB2 Threadsafe applications moving from V2.3 as
CICSAPI!

33 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

XPLINK

34 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

XPLINK

 XPLINK introduced in OS/390 V2.10


– feature of z/OS that provides high performance subroutine call
and return mechanism
– Supported by C/C++ compiler of z/OS
– Specified by C/C++ compiler option XPLINK
– Previously not supported in CICS
 XPLINK requires MVS LE rather than CICSLE
– Therefore application requires own TCB to run on
 XPLINK programs execute like OPENAPI programs
– Runs on an X8 or X9 TCB with MVS/LE rather than L8 or L9 with
CICS/LE
– CICS detects at runtime that program compiled with XPLINK
35 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

XPLINK cautions!

 XPLINK programs run on X8 or X9 TCBs


– Mixing DB2 calls will cause switches to L8 TCBs
– Might be better not using XPLINK but C++ with
THREADSAFE CICSAPI for DB2
 Mixing lots of non_threadsafe CICS API will cause
excessive switching to QR TCB
 Foundation Classes are currently not XPLINK
compiled
– A call to one of these will cause a TCB switch

36 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Channels and
Containers

37 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Performance Evaluation Configuration

 COBOL program links to COBOL program


 2.5ms of application program logic
 Comparison of data transfer using:
– Commareas
– Channels and Containers
– Temporary Storage Queues

38 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Commarea application

Sender program Receiver program


EXEC CICS GETMAIN

EXEC CICS LINK ...


EXEC CICS RETURN
COMMAREA
EXEC CICS RETURN

32K max data restriction

39 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Channel application

Sender program Receiver program


EXEC CICS GETMAIN EXEC CICS GET
CONTAINER
EXEC CICS PUT
CONTAINER EXEC CICS RETURN
EXEC CICS LINK ...

CHANNEL
EXEC CICS RETURN

Single container used for data


No restriction on data size

40 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

TSQ application

Sender program Receiver program


EXEC CICS GETMAIN EXEC CICS READQ TS
EXEC CICS WRITEQ TS
EXEC CICS RETURN
EXEC CICS LINK

EXEC CICS DELETEQ TS

EXEC CICS RETURN

Multiple TSQ items used for data size >32K

41 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Single Region Links < 32K

42 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Single Region Links >32K

43 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

MRO Link < 32K

44 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP Pipeline

45 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP Provider Pipeline

HTTP
SOAP SOAP Pipeline App Handler Business Logic
Client
Handles Converter Business
HTTP layer between logic program
and SOAP XML SOAP
Envelope Body and
data structure

46 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP support in CICS

 CICS SOAP support


– SOAP for CICS Feature in V2.2 and V2.3
• HTTP or WebSphere MQ used at transport layer
• user-written application handler required
• commarea-based business logic application
– SOAP support integrated into V3.1
• HTTP or WebSphere MQ used at transport layer
• user-written application handler NOT required
• business logic application can be:
– commarea or container based

47 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Application Handler

 V2.2 and V2.3 options


– User-written application required to:
• Convert XML SOAP body input to language data structure
• Invoke commarea-based business logic program
• Convert language data structure output to XML SOAP body
– WSED converter (WSED version 5.1.2)
• WebSphere Studio Enterprise Developer
• Generates driver, input and output programs from business logic
program source code
• Upload programs to z/OS and install in CICS
– New Handler required for each business logic program

48 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

CICS Web Services Assistant

 Batch component
– DFHLS2WS batch program
• Language data structure input
• HFS WSDL and WSbind files created
– DFHWS2LS batch program
• HFS WSDL file input
• Language data structure and HFS WSbind files created
– New WSbind file required for each business logic program

49 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

CICS Web Services Assistant

 Runtime component
– Pipeline install process
• Accesses WSbind files from pickup directory
• Copies WSbind files to shelf directory
– Runtime
• Pipeline reads WSbind file
• Converts input XML SOAP body to language data structure
• Invokes commarea/container based business logic program
• Converts output language data structure to XML SOAP body

50 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Performance Evaluation #1

 Compare for 'simple' SOAP message:


– SOAP for CICS Feature in V2.3
• with user-written app handler
– SOAP pipeline in V3.1
• with user-written app handler
– SOAP pipeline in V3.
• using CWSA (CICS Web Services Assistant)

51 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Simple SOAP Message

msecs
cpu per V3.1
transaction V2.3 V3.1 CWSA V3.1
User User without CWSA
Program Program PTF with
1.35 ms 1.13 ms 1.28 ms PTF
1.11 ms

52 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Performance Evaluation #2

 Compare for 'typical' SOAP message:


– SOAP for CICS Feature in V2.3
• with user-written app handler
– SOAP pipeline in V3.1
• with user-written app handler
– SOAP pipeline in V3.1
• using CWSA
– SOAP pipeline in V3.1
• with WSED converter app handler

53 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Typical SOAP message

 The next series of evaluations all use the 'typical'


SOAP message
– These include:
• SOAP provider and requester environments
• HTTP and WebSphere MQ transport layers

 Variations in SOAP message size and # of elements


are discussed later

54 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Typical SOAP Message

msecs
cpu per V3.1
tran V2.3 V3.1 V3.1 CWSA
User User WSED without
V3.1
Program Program Converte PTF
CWSA
3.46 ms r 4.47 ms
3.41 ms with PTF
6.47 ms
2.64 ms

55 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Typical SOAP Message

SOAP2.3 comparison:
WSED3.1 +89.7%
V3.1 -1.5%
CWSA3.1 -22.6%

56 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Performance Evaluation #3

 Compare for 'typical' SOAP message:


– CICS SOAP requester region
• SOAP for CICS Feature V2.3
• SOAP pipeline in V3.1 using CWSA
– CICS SOAP provider region
• SOAP for CICS Feature V2.3
• SOAP pipeline in V3.1 using CWSA
– Transport Layer communication
• HTTP
• WebSphere MQ (WMQ)

57 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

CICS Requester and Provider Environment

Http or WMQ

3270 Requester Application


screen Receive
input Provider Application
Put Container
Handle input commarea
Invoke Webservice
Generate output commarea
Get Container
Return
Send
Return

<========== LPAR ==========>

58 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP HTTP Requester - V3.1 vs V2.3

CWSA HTTP -19%

59 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP Requester - HTTP vs WMQ

CWSA WMQ +53.6%

60 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP Provider - HTTP vs WMQ

CWSA WMQ +30.5%

61 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Variations

The table below shows how the CPU usage changes with
variations in the processing of the SOAP message

Change: % cpu increase


Commarea to Container program 0.91%
SOAP1.1 node to SOAP1.2 node 0%
Add header processing program 3.95%

Note: Header processing programs within the SOAP


node are invoked on input and on output

62 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP inbound message size

1.1ms for null SOAP msg


0.05ms for every K of data

63 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP outbound message size

1.1ms for null SOAP msg


0.042ms for every K of data

64 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP inbound elements

1.1ms for null SOAP msg


0.043ms for every 100 elements

65 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

SOAP outbound elements

66 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Sizing SOAP message

SOAP message consists of:


SOAP Prefix and Suffix
<?xml version='1.0' encoding='UTF-8'?>
<SOAP-ENV:Envelope xmlns: .............>
<SOAP-ENV:Body>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Operation name
<PGRMNAMEOperation>
</PGRMNAMEOperation>
SOAP Body elements
<element1>1234</element1>

67 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Sizing SOAP message

SOAP message size is the sum of:


 SOAP Prefix and Suffix
– 278 bytes
 Operation name
– (program_name_length*2)+23 bytes
 SOAP Body elements
– (avg_element_name_length*2)+avg_element_data_length+5
– multiply by number of elements

68 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Sizing Example

Example with:
4K commarea
program name 8 bytes
average element name length 8 bytes

# elements average SOAP msg


data length size (bytes)
128 32 7,101
512 8 15,165
2048 2 47,421
4096 1 90,429

69 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Sizing Example

Example with:
4K commarea
program name 8 bytes

# elements avg len of average SOAP msg


element data length size (bytes)
128 8 32 7,101
512 16 8 23,357
2048 24 2 112,957
4096 30 1 270,653

70 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Codepage conversion

71 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Performance evaluation overview

 z/OS Conversion Services


 Evaluations performed within CICS using containers
 Conversion occurs between PUT and GET container
 Codepages used in testing
– EBCDIC (037)
– ASCII (437)
– UTF-8 (1208)
– UTF-16 (1200)
 2 stage conversions for UTF-8 to/from EBCDIC or
ASCII
72 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

Results summary

 CPU milliseconds to convert 1K characters


– UTF-8 (1208) to ASCII (437) 0.0094
– UTF-8 (1208) to EBCDIC (037) 0.0093
– UTF-8 (1208) to UTF-16 (1200) 0.0090
– ASCII (437) to UTF-8 (1208) 0.0087
– EBCDIC (037) to UTF-8 (1208) 0.0087
– UTF-16 (1200) to UTF-8 (1208) 0.0076
– EBCDIC (037) to UTF-16 (1200) 0.0031
– ASCII (437) to UTF-16 (1200) 0.0030
– UTF-16 (1200) to EBCDIC (037) 0.0021
– UTF-16 (1200) to ASCII (437) 0.0021
– EBCDIC (037) to ASCII (437) 0.0014
– ASCII (437) to EBCDIC (037) 0.0014

73 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

'WRAPPERS'

74 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation
IBM Software Group

'V3.1 Wrappers‘ Relative CPU costs

Data taken from RMF

75 IBM CICS TS for z/OS V3.1 | Performance Report © 2003 IBM Corporation

You might also like