9. 9
COBOL V5/V6
Introduced major infrastructure changes
• Advanced Optimization Framework
• COBOL Runtime
• Object and Debug formats
• Program Objects - Requires PDSE
• DWARF debug format
• Maintains source and binary compatibility
• Correct COBOL programs will compile and execute without changes and will produce same results
• “Old” and “new” code can be mixed within an application
• Removed some old language extensions and options
• Supports IBM DevOps tools
• Application Delivery Foundation for z (IBM Developer for z Systems, IBM Debug, Fault Analyzer, Application
Performance Analyzer), ADDI (Application Discovery and Delivery Intelligence)
• Supports the ecosystem of programming tools supplied by ISVs.
9
18. 18
Enterprise COBOL v6.2 – Performance on z14
Compile time performance improvement
over COBOL 6.1
– Reduces CPU by
• 6% at OPTIMIZE(1)
• 18% at OPTIMIZE(2)
The latest COBOL runtime library in
Language Environment V2R3 shows on
average 8.5% speedup in a group of test
cases testing large data input **
* Performance results shown was obtained in a controlled, isolated environments using IBM internal test suite. Performance of other workload may vary
** Performance gain are observed in COBOL statement SEARCH ALL using packed-decimal keys. UNSTRING with multiple receiving and delimiter fields also shows improvement. These tests compare programs
compiled with Enterprise COBOL 6.2 running on LE V2R3 with Enterprise COBOL 6.1 running on LE V2R2.Note: Input data strings have lengths 1K bytes or longer. Tables tested in SEARCH ALL contain more than
1000 entries. The PTF level of LE V2R2 is UI48664
1 1 1
0.53
0.84
0.9
0.06
0.33
0.62
0
0.2
0.4
0.6
0.8
1
1.2
COBOL v6.2 vs
COBOL v4.2
COBOL v6.2 vs
COBOL v5.2
COBOL v6.2 vs
COBOL v6.1
CPUReduction
Application Performance on z14*
Original On Average Up to
(+47%)
(+94%)
(+16%)
(+67%)
(+10%)
(+38%)
23. 23
Application Testing after recompile
23
Coding Build Unit Test
System Test Integration Test
User
Acceptance Test
Pre-
Production
Production
24. 24
ABO Testing
24
Coding Build Unit Test
System Test Integration Test
User
Acceptance Test
Pre-
Production
Production
• Detecting Invalid data requires a
2-step compile/test approach
• Turn on migration option(s) (e.g.
NUMCHECK, PARMCHECK,
SSRANGE…)
• Run Test
• If problem found, change source
• Re-compile with migration
option(s) turned off
• ABO does not change program
logic and is not affected by
invalid data in COBOL programs
or OS/VS COBOL
interoperability
• No code change is required
• Significantly less testing effort
26. 26
ABO v1.3 - Performance on z14
Fully exploits z14 architecture
– Vector Packed Decimal Facility
Optimize code every time you
upgrade to new IBM Z
Up to 2X Reduction in CPU and
Memory usage over ABO v1.2
1 1
0.52
0.81
0.2
0.63
0
0.2
0.4
0.6
0.8
1
1.2
ABO 1.3 vs COBOL
v4.2
ABO V1.3 vs ABO 1.2
%CPUReduction
Application Performance on z14*
Original On Average Up to
(+48%)
(+80%)
(+19%)
(+37%)
* Performance results shown was obtained in a controlled, isolated environments using IBM internal test suite. Performance of other workload may vary
29. 29
Container Pricing – 3 solutions announced with z14
29
The Application Development and Test Solution will provide highly competitive stand-alone pricing for
z/OS based development and test workloads. Modern DevOps tooling can be optionally added at uniquely
discounted prices.
The New Application Solution will provide a highly competitive stand-alone priced offering for new z/OS
applications, such as CICS TS or WebSphere applications, that are not currently running on any Z platform
server. This is the strategic replacement for the current zCAP and IWP priced offerings.
The Payments Solution will provide a ‘per payment’ pricing option for IBM Financial Transaction Manager for
z/OS deployments. This new offering directly ties operational cost to business value by basing the price on
the number of payments processed, rather than capacity used to process them.
35. 35
IBM SDK for Node.js – z/OS, V6
Ann: July 17, 2017; GA: Sept 8, 2017
35
Based on Node.js V6
Runs on z196, zEC12, z13 and z14 (z/OS v2.2 and v2.3)
JavaScript Engine
libuv
Asynchronous
I/O library
Node Binding Layer
z/OS v2.2 or z/OS v2.3
Node Libraries
Node.js
OpenSSL
Crypto
library
Other:
ICU
Cares
Zlib
http_parser
…
C/C++
Compiler
• Enterprise Offering
• OTC + S&S
• Single PID (5655-SDK)
consisting of Node.js and
new C/C++ compiler
• C++11 compliant, 64 bit &
USS
• For NPM and compute
intensive portion of
application
• Single Install with SMP/E
• 2 year support model
• Container Pricing
• Workload not eligible for
zIIP offload
NEW
36. 36
Container Pricing – 3 solutions announced with z14
36
The Application Development and Test Solution will provide highly competitive stand-alone pricing for
z/OS based development and test workloads. Modern DevOps tooling can be optionally added at uniquely
discounted prices.
The New Application Solution will provide a highly competitive stand-alone priced offering for new z/OS
applications, such as CICS TS or WebSphere applications, that are not currently running on any Z platform
server. This is the strategic replacement for the current zCAP and IWP priced offerings.
The Payments Solution will provide a ‘per payment’ pricing option for IBM Financial Transaction Manager for
z/OS deployments. This new offering directly ties operational cost to business value by basing the price on
the number of payments processed, rather than capacity used to process them.
38. Connecting to z/OS assets
• z/OS Connect EE
Access z/OS assets that are exposed through IBM z/OS Connect
EE
• DB2
npm module to provide direct access to DB2 on z/OS:
https://github.com/strongloop/loopback-connector-db2z
• CICS
A sample of Node.js application interacting with existing CICS asset
on z/OS via EXCI https://ibm.co/2vG1KTb
• VSAM connector
npm module to interact with z/OS VSAM datasets and records
https://www.npmjs.com/package/vsam.js
• z/OS Node Accessor
Module to interact with z/OS MVS dataset and USS files and simple
JCL operations: https://github.com/IBM/zos-node-accessor
• More to come… 38
Db2
z/OS Connect
IMS CICS
COBOL
z/OS
COBOL
PL/I
Apps
Db2
39. Usage Scenarios on z/OS
Move existing Node.js applications to take advantage of co-location with critical assets on
z/OS (i.e. applications and data)
• Significantly reduce response time for accessing data and increase transaction throughput
API Orchestration
• Manage APIs and MicroServices traffic on z/OS
Manage Caching of Read-only transactions
• Reduce CPU
Presentation Layer
• Dashboard and Portals
39
40. Node.js – z/OS Developer Journey (Work in Progress)
40
Credit Card Rewards Program example:
Node.js application based on LoopBack framework
Exposes Rewards APIs while keeping all customer and credit-card data secure
.
https://github.com/ibmruntimes/loopback-demo-zos