SlideShare une entreprise Scribd logo
1  sur  60
© 2016 IBM Corporation
Overview of Java on z
Marcel Mitran – DE, CTO LinuxONE
Joran Siu – Lead Arch, IBM Runtimes on z
November 2016
@JavaOnZ
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
222
IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without
notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our
general product direction and it should not be relied on in making a purchasing decision. The information
mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver
any material, code or functionality. Information about potential future products may not be incorporated
into any contract. The development, release, and timing of any future features or functionality described
for our products remains at our sole discretion.
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp.,
registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other
companies. A current list of other IBM trademarks is available on the web at "Copyright and trademark information" at
http://www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.
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 OR SOFTWARE.
© Copyright International Business Machines Corporation 2016. All rights reserved.
Trademarks, Copyrights, Disclaimers
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
3
Evolving Java as a Workload Optimized System on IBM z
Portable and consumable
 First-class IBM Java SDK for z/OS and Linux on z
 Providing seamless portability across platforms
Pervasive and integrated across the z eco-system
 Java business logic runs with all z middleware (IMS, CICS, WAS etc)
 Inter-operability with legacy batch and OLTP assets
Deep System Z exploitation
 SDK extensions enabled z QoS for full integration with z/OS
 zAAP/zIIP/IFL specialty engines provide low-cost Java capacity
Performance
 A decade of hardware/software innovation and optimization
 Industry leading performance with IBM J9 Virtual Machine
 Enabling tight data locality for high-performance and simplified
systems
Enable integration of Java-based applications with core z/OS backend database environment for high
performance, reliability, availability, security, and lower total cost of ownership
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
4
Java Execution Environments and Interoperability
 IBM Java Execution Offerings
– Transactional/Interactive
• zOS Connect
• WebSphere for z/OS (WAS z/OS)
• WebSphere Process Server for z/OS (WPS)
• JCICS/Liberty
• IMS Java
• DB2 Stored Procedures
• ODM
– Batch oriented
• WebSphere Compute Grid (WAS-CG)
• WAS/JEE runtime extensions
• IMS Java Batch regions (JMP)
• JZOS component of z/OS SDK
• JES/JSE-based environment
• z/OS V1R13 Java/COBOL Batch Runtime*
JES/JSE-based, designed to inter-op with DB2 while
maintaining transaction integrity
 Open Source or non-IBM vendor
Application Server and Frameworks
– Tomcat, JBoss
– iBatis, Hibernate, Spring
– Ant
– Kafka
– Spark
Capitalize on pre-existing assets, artifacts, processes, core competencies,
platform strengths
 COBOL/Native Interoperability
– COBOL Invoke maps to JNI
– RDz and JZOS** have tooling to
map COBOL copy books to Java
classes
– JCICS
– IMS Java, JMP/JBP
– WAS CG, WOLA
– etc
* See http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?subtype=ca&infotype=an&supplier=897&letternum=ENUS211-252
** Alphaworks only, and hence currently un-supported
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
5
z/OS – System z Java Extensions
All SDKs support the ‘standards’, Java on z/OS extends the SDK
 Access to z/OS services
 Access to all types of data
 Access under control of z/OS security mechanisms
 Integration into existing operational infrastructure
Services available in JEE and JSE environments under the restrictions of the container.
SDK
z/OS
Extensions
SDK
Base
Function
System specific extension allow you to write robust middleware and
applications that integrate with traditional z/OS operating environment
 Allow for maintaining platform independent design development.
 Platform specific implementations when required
 Allows for operational and resource optimization
e.g. JAAS wrapper of SAF (RACF, ACF2, or TopSecret), Traditional OS dataset access, Cryptographic hardware (Cards and CPACF),
z/OS Console (modify and messages), z/OS system logger, JES job submission, DFSORT, SMF, etc.
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java Road Map
6
Language Updates
Java 5.0
• New Language features:
• Autoboxing
• Enumerated types
• Generics
• Metadata
Java 6.0
• Performance Improvements
• Client WebServices Support
• Support for dynamic languages
• Improve ease of use for SWING
• New IO APIs (NIO2)
• Java persistence API
• JMX 2.x and WS connection for JMX
agents
• Language Changes
Java 7.0
IBM Java Runtimes
IBM Java 5.0 (J9 R23)
• Improved performance
• Generational Garbage Collector
• Shared classes support
• New J9 Virtual Machine
• New Testarossa JIT technology
• First Failure Data Capture
• Full Speed Debug
• Hot Code Replace
• Common runtime technology
• ME, SE, EE
IBM Java 6.0 (J9 R24)
• Improvements in
• Performance
• Serviceability tooling
• Class Sharing
• XML parser improvements
• z10™ Exploitation
• DFP exploitation for BigDecimal
• Large Pages
• New ISA features
5.0
6.0
2005 2009
SE5.0
18platforms
SE6.0
20platforms
EE 5
WAS
6.1
WAS
7.0
2006 2008
WAS
6.0
200704
EE 6.x
2010 2011
IBM Java 6.0.1/Java 7
(J9 R26)
• Improvements in
• Performance
• GC Technology
• z196™ Exploitation
• OOO Pipeline
• 70+ New Instructions
• JZOS/Security Enhancements
WAS
8.5
2012 2013 2014
7.0
• Language improvements
• Closures for simplified fork/join
Java 8.0
SE601/7.x
>=20platforms
IBM Java 7 (J9 R26 SR3)
• Improvements in
• Performance
• zEC12™ Exploitation
• Transactional Execution
• Flash 1Meg pageable LPs
• 2G large pages
• Hints/traps
IBM Java 7.1 (J9 R27)
• Improvements in
• Performance
• RAS
• Monitoring
• zEC12™ Exploitation
• zEDC for zip acceleration
• SMC-R integration
• Transactional Execution
• Runtime instrumentation
• Hints/traps
• Data Access Accelerator
SE601/7.x
>=20platforms
2015
IBM Java 8 (J9 R28)
• Improvements in
• Performance
• RAS
• Monitoring
• z13™ Exploitation
• SIMD
• SMT
• Crypto acceleration
SE8
>=20platforms
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
IBM SDK for z/OS, Java Tech. Edition, Version 8 (IBM Java 8)
7
 New Java8 Language Features
– Lambdas, virtual extension methods
 IBM z13 exploitation
– Vector exploitation and other new instructions
– Instruction scheduling
 General throughput improvements
– Up-to 9% better application throughput
– Significant improvements to ORB
 Improved crypto performance for IBMJCE
– Block ciphering, secure hashing and public key
• Up-to 4x improvement to Public Key using ECC
• CPACF instructions: AES, 3DES, SHA1, SHA2, etc
 Significantly improved application ramp-up
– Up-to 50% less CPU to ramp-up to steady-state
– Improved ahead-of-time compiled code
 Improved Monitoring
– JMX beans for precise CPU-time monitoring
 Enhancements to JZOS Toolkit for Java batch
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
IBM z13 – Taking Java Performance to the Next Level
8
Continued aggressive investment in Java on Z
Significant new hardware features tailored and
co-designed with Java
Simultaneous Multi-Threading (SMT)
– 2x hardware threads/core for improved throughput
– Available on zIIPs and IFLs
Single Instruction Multiple Data (SIMD)
– Vector processing unit
– Accelerates loops and string operations
Cryptographic Function (CPACF)
– Improved performance of crypto co-processors
New Instructions
– Packed Decimal Decimal Floating Point
– Load Immediate on Condition
– Load Logical and Zero Rightmost Byte
Up to 2X improvement in
throughput per core for security
enabled applications
Up to 50% improvement
in throughput for generic
applications
New 5.0 GHz 8-Core Processor Chip
480MB L4 cache : Optimized for data serving
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
z zIIPs DayTrader 3
* DayTrader3
t DayTrader2
1.0
1.6
2.2
3.1
3.9
5.2
6.0
6.6
9.6
11.7
12.3
0.0
2.0
4.0
6.0
8.0
10.0
12.0
Version 6.1
on z9
Version 6.1
on z10
Version 7.0
on z10
Version 7.0
on z196
Version 8.5
on z196
Version 8.5
on EC12
Version 8.5
on EC12
Version
8.5.5.2 on
EC12
Version
8.5.5.9 on
z13 wo/SMT
Version
8.5.5.9 on
z13 w/SMT
Version
8.5.5.9 on
z13 w/SMT
AggregatePerformanceEstimate
History of Classic WAS on z/OS Hardware/Software Performance
+16%t
+40%t
+25%t
+10%*
+43%t
+57%t
+32%t
+45%z
+22%zHardwareImprovement
Software Improvement
Java
7.1
SR3
Java
7.1
SR3
Java
7.1
SR1
Java
7
SR4
Java
601
Java
601
Java
6
Java
6
Java
5Java 5
Java
8
SR2
+5%z
9
WAS on z/OS – DayTrader : Aggregate Improvements on 4 Cores
(Controlled measurement environment, results may vary)
12.3x aggregate hardware and software improvements
WAS 6.1 IBM Java5 on z9 
WAS 8.5.5.9 IBM Java 8 SR2 FP10 on z13 with SMT
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
10
z/OS - Java Store, Inventory and Point-of-Sale App
with IBM Java 8 and z13
z/OS - 1.9x improvement in throughput with IBM Java 8 and IBM z13
(Controlled measurement environment, results may vary)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Business Rules Processing – IBM z13 vs Intel Haswell
IBM z13 up-to 1.56x better throughput/core processing
business rules than Intel Haswell
11
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Haswell - Linux - Java8 z13 - zOS - Java8
BusinessRules Processing with IBM z13
with Java8 -Small Ruleset
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
Haswell - Linux - Java8 z13 - zOS - Java8
BusinessRules Processing with IBM z13
with Java8 -Large Ruleset
(Controlled measurement environment, results may vary)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java on z Survey
12
Classified Java projects
as >= successful
now have Java applications
in production
95 client responses
68% Java Project on z
85% within 3 years
145 surveys returned
In 1 week…
What are you waiting for?
How Successful was your project?
Enterprise Architects
System programmers
Application Developers
had the most influence
On Java on z projects
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZFollow on twitter @JavaOnZ
Java on z Systems?
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
14
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Reasons to Love IBM Java and WAS on z Systems
HCSC – 14.5 million health insurance members
WebSphere on z/OS has been selected at HCSC as a
preferred platform to support development and
deployment of mission-critical Java applications for the
following reasons:
Co-location:
WASz minimizes physical tiers
3-4x improvement for one of HCSC’s largest WAS
applications when moving from distributed to z/OS
High Volume Transaction Rates:
Could not meet business needs with distributed
Qualities of Service
Horizontal scaling
Continuous availability and fail-over
www.slideshare.net/elenan3403/reasons-to-love-ibm-java-and-web-sphere-application-server-on-z-system
IBM JVM Performance Dividends
30% improvement with Java601
10% improvement with Java7.1
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
How Java became the NextGen Application of Choice for Fiducia
Fiducia IT AG - Full service provider for 750
Banks with about 10,550 Points of sales
•Java support in IMS MPRs and BMPs
oSupport of Java SE (31 bit) for building “Business logic“
oJVM is resident in the MPR for its hole life
•In MPRs: the main program is COBOL
•Inter Language Communication (ILC) between COBOL
and Java allows:
• COBOL to call Java and Java to call COBOL
(cascading)
•Java and COBOL run within the same transaction
(UOW) with database support for:
oDB2 from COBOL (static SQL) and Java (JDBC Type-2)
oDL1 from COBOL and Java
oMQ access from Java (future)
16
JZOS in use for mission critical
applications since 2013
•Huge amounts of data is manipulated
•Throughput is very important
•Strict timing window for the business
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Questions?
17
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
1919
Important references
 z/OS Java web site
– http://www.ibm.com/systems/z/os/zos/tools/java/
 IBM SDK Java Technology Edition Version 7 Information Center
– http://publib.boulder.ibm.com/infocenter/java7sdk/v7r0/index.jsp
 IBM SDK Java Technology Edition Version 6 Supplement
– http://public.dhe.ibm.com/common/ssi/ecm/en/zsl03118usen/ZSL03118USEN.PDF
 JZOS Batch Launcher and Toolkit Installation and User’s Guide (SA38-0696-00)
– For JZOS function included in IBM Java SE 7 SDKs for z/OS
– http://publibz.boulder.ibm.com/epubs/pdf/ajvc0110.pdf
 JZOS Batch Launcher and Toolkit Installation and User’s Guide (SA23-2245-03)
– For JZOS function included in IBM Java SE 6 and SE 5 SDKs for z/OS
– http://publibfi.boulder.ibm.com/epubs/pdf/ajvc0103.pdf
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
2020
New and existing supported Java products – z/OS
 IBM 31-bit SDK for z/OS, Java Technology Edition, Version 8.0
– Web available on March 6th, 2015 at Java SE 8 level
– Product 5655-DGG, supported on z/OS V1.13 and above
 IBM 64-bit SDK for z/OS, Java Technology Edition, Version 8.0
– Web available on March 6th, 2015 at Java SE 8 level
– Product 5655-DGH, supported on z/OS V1.13 and above
 IBM 31-bit SDK for z/OS, Java Technology Edition, Version 7 Release 1
– Web available on December, 2013 at Java SE 7 level
– Product 5655-W43, supported on z/OS V1.12 and above
 IBM 64-bit SDK for z/OS, Java Technology Edition, Version 7 Release 1
– Web available on December, 2013 at Java SE 7 level
– Product 5655-W44, supported on z/OS V1.12 and above
 IBM 31-bit SDK for z/OS, Java Technology Edition, Version 7.0
– Web available on October 4, 2011 at Java SE 7 level
– Product 5655-W43, supported on z/OS V1.10 and above
 IBM 64-bit SDK for z/OS, Java Technology Edition, Version 7.0
– Web available on October 4, 2011 at Java SE 7 level
– Product 5655-W44, supported on z/OS V1.10 and above
 IBM 31-bit SDK for z/OS, Java Technology Edition, Version 6.0.1
– Web available on March 15, 2011 at Java SE 6 level
– Product 5655-R31, supported on z/OS V1.10 and above
 IBM 64-bit SDK for z/OS, Java Technology Edition, Version 6.0.1
– Web available on March 15, 2011 at Java SE 6 level
– Product 5655-R32, supported on z/OS V1.10 and above
 IBM 31-bit SDK for z/OS, Java Technology Edition, Version 6.0.0
– Web available on December 14, 2007 at Java SE 6 level
– Product 5655-R31
 IBM 64-bit SDK for z/OS, Java Technology Edition, Version 6.0.0
– Web available on December 14, 2007 at Java SE 6 level
– Product 5655-R32
 IBM 31-bit SDK for z/OS, Java 2 Technology Edition, Version 5.0
– Web available on November 30, 2005
– Product 5655-N98
 IBM 64-bit SDK for z/OS, Java 2 Technology Edition, Version 5.0
– Web available on November 30, 2005
– Product 5655-N99
 All products are delivered via the z/OS Java website in non-SMP/E format and via ShopIBM in SMP/E format
 All products are independently orderable and serviceable and follow the z/OS RFA rules for Withdrawal
from Marketing and End of Service
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
21
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
2222
z/OS - IBM Business Rules Processing with IBM Java 8 and z13
(Controlled measurement environment, results may vary)
z/OS - aggregate 2x improvement from IBM Java 8 and IBM z13
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
2323
Linux on z - IBM Business Rules Processing with IBM Java 8 and z13
(Controlled measurement environment, results may vary)
z/VM IFL aggregate 2x improvement from IBM Java 8 and IBM z13
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java in CICS – zEC12, z13 and z13 with SMT2
 CICS Transaction Server for z/OS V5.2 with Java V7.1
 Measurements on both IBM z13 and zEC12 obtained using 3 GPs and 1 zIIP
24
Disclaimer Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user
will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage
configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
z/OS Connect with CICS – Hardware Improvements
35% ITR increase
zEC12  z13
Disclaimer Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user
will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage
configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. Some measurements were
obtained used beta developmental code.
• CICS TS V5.3 open beta developmental code with Liberty V8.5.5.3
• Java V7.1 with IBMJCECCA support enabled
• Measurements on both IBM z13 and zEC12 obtained using 3 GPs and 1 zIIP
25
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
z/OS Connect with CICS – Java Improvements
Disclaimer Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user
will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage
configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. Some measurements were
obtained used beta developmental code.
• CICS TS V5.3 with Liberty V8.5.5.7 + z/OS Connect 1.2
• Java V7.1 SR3 + Java 8 SR2 with IBMJCECCA support enabled
• Measurements on IBM z13 obtained using 3 GPs and 1 zIIP
26
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
27 (Controlled measurement environment, results may vary)
IMS Mobile Feature Pack 73%
aggregate improvement in
throughput from z13 and IBM Java8
z/OS Connect with IMS (Mobile Feature Pack)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
IMS JMP Regions Overhead
28 (Controlled measurement environment, results may vary)
JMP regions 25% better throughput on z13 vs zEC12
JMP regions 34% better through on zEC12 vs z196
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
29
IMS JMP Speed-Test
Over 9.3x aggregate throughput improvement from 2009 to 2015 due to the
following enhancements
 Java version to version performance improvements
 IMS improvements
 Hardware improvements
 DASD improvements
(Controlled measurement environment, results may vary)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
30
Linux on z - Java Store, Inventory and Point-of-Sale App
with IBM Java 8 and z13
2x improvement in throughput with IBM Java 8 and IBM z13
(Controlled measurement environment, results may vary)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
3131
z/OS WAS/Liberty 8.5.5.5 – SSL-Enabled DayTrader 3.0
(Controlled measurement environment, results may vary)
z/OS - 2.6x improvement in throughput with IBM Java 8 and IBM z13
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
3232
z/VM IFLs WAS/Liberty 8.5.5.5 – SSL-Enabled DayTrader 3.0
(Controlled measurement environment, results may vary)
z/VM Linux on z - 2.6x improvement in throughput with IBM Java 8 and IBM z13
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Linux on z – DayTrader 3 on Liberty SMT Improvements
33 (Controlled measurement environment, results may vary)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
3434
WebSphere – Linux on z Virtualized Cluster
(Controlled measurement environment, results may vary)
Between 1.36x and 1.66x improved throughput for a virtualized WAS cluster
running DayTrader on z13 when compared to zEC12
0.00
0.20
0.40
0.60
0.80
1.00
1.20
1.40
1.60
1.80
zEC12 z13 SMT vs zEC12
Linux on z - SLES 11 SP3, WAS 8.5.5
Java 7.1, DayTrader3
8 CP - 16 guests
0.00
0.20
0.40
0.60
0.80
1.00
1.20
1.40
1.60
1.80
zEC12 z13 SMT vs zEC12
Linux on z - SLES 11 SP3, WAS 8.5.5
Java 7.1, DayTrader3
32 CP - 64 guests
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Transform your Data - Data Access Accelerator in IBM Java 7R1
35
A Java library for bare-bones
data conversion + arithmetic
Operates directly on byte arrays
Orchestrated with JIT for deep
platform opt.
Avoids expensive Java object
instantiation
Library is platform and JVM-neutral
Current Approach:
byte[] addPacked(array a[], array b[]) {
BigDecimal a_bd = convertPackedToBd(a[]);
BigDecimal b_bd = convertPackedToBd(b[]);
a_bd.add(b_bd);
return (convertBDtoPacked(a_bd));
}
Proposed Solution:
byte[] addPacked(array a[], array b[]) {
DAA.addPacked(a[], b[]);
return (a[]);
}
Marshalling and Un-marshalling
Transform primitive type (short, int, long, float, double)  byte array
Support both big/little endian byte arrays
Packed Decimal (PD) Operations
Arithmetic: +, -, *, /, % on 2 PD operands
Relation: >,<,>=,<=,==,!= on 2 PD operands
Error checking: checks if PD operand is well-formed
Other: shifting, and moving ops on PD operand
Decimal Data Type Conversions
Decimal  Primitive: Convert Packed Decimal(PD), External
Decimal(ED), Unicode Decimal(UD) 
primitive types (int, long)
Decimal  Decimal: Convert between dec. types (PD, ED, UD)
Decimal Java: Convert dec. types (PD, ED, UD) 
BigDecimal, BigInteger
www-01.ibm.com/support/knowledgecenter/SSYKE2_8.0.0/com.ibm.java.zos.80.doc/user/daa.html
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
JZOS Medicare Record Benchmark : With and without DAA
http://www.ibm.com/developerworks/java/zos/javadoc/jzos/index.html?com/ibm/jzos/sample/fields/MedicareRecord.html
(Controlled measurement environment, results may vary)
CPU-time processing 5 million medical records
• Aggregate 2.2x improvement from DAA with IBM Java8 and z13
• 83% improvement from DAA on Java8 (vs 55% with Java7.1 SR1) on z13
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
© 2015 IBM Corporation 37
Linux on z Systems : Spark
Up to 1.5x Faster Insights for Real-time
Analytics using Spark’s Core Primitives
Use cases (relative to Financial Transactions demo)
Sentiment analysis on streaming twitter data for real-time decisions
Batch sentiment analysis on news article databases
Streaming and batch analytics on Geospatial data for location based decisions
Co-locate Spark Analytics and Data stores for accelerated query and analytic
operations
Speedup core Spark primitives for accelerated Spark based execution
Key Messages / Results
– up to 1.5x faster insights for real-time analytics using Spark’s core
primitives on z13
– up to 1.5x more data processed for model building, leading to real-
time insights with higher accuracy within a given batch window
Benchmark
– Out-of-box, default Spark parameters, Scale Factor 0.65
– 1 Spark worker
– 8 ‘Spark’ core benchmarks in Spark-perf consist of scheduling-
throughput, scala-agg-by-key, scala-agg-by-key-int, scala-agg-by-
key-naïve, scala-sort-by-key, scala-sort-by-key-int, scala-count,
scala-count-w-fltr
System Stack
– z13 running RHEL 7.1 with 6 cores, 565GB memory, IBM JDK 1.8
SR1-FP10, Spark 1.4
– x86 6 cores, Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz,
565GB memory running Ubuntu, IBM JDK 1.8 (SR1), Spark 1.4
*
*Composite Mean Across 8 ‘Spark’ Core Benchmarks
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
© 2015 IBM Corporation 38
Linux on z Systems : Spark
Co-locate Spark with Database on Linux on
z13 outperforms running Spark off-platform
up to 3x for aggregation analytical query
Use case
– Operational Analytics for a Brokerage running reports on
top of OLTP Trading data
Key message:
– Co-locating Spark on z13 to run Analytical queries on top
of OLTP database running in z13 outperforms running
Spark off-platform
Results
– Spark on z13 provides up to 3x for aggregation analytical
query
Configuration
– z13 guest running RHEL 6.5 on z/VM 6.3 with 32 vCPUs
(16 IFLs with SMT) and 512GB memory, Spark 1.5.0, IBM
JDK1.7 SR3
– x86: 16 cores of Intel(R) Xeon(R) CPU E5-2698 v3
@2.30GHz, 512GB memory running SLES 11.3, Spark
1.4.1, JDK 1.8
Test
– Scala map-reduce script (aggregation query) on TPC-E
20K scale Trade table using 1 master and 4 worker JVMs
– Out-of-box, default parameters, no tuning
3.1x
2.3x
1.9x
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
© 2015 IBM Corporation 39
Linux on z Systems: ODM
ODM 1.5x higher rule processing rate
on z13
Use Case
– IBM ILOG Optimization Decision Manager
(ODM) Enterprise makes optimization
technology accessible to business, enabling
intelligent planning and scheduling decisions.
Results
– ODM on z13 has up to 1.5x better rule
processing rate than alternative platform
Benchmark
– ILOG ODM benchmark:
Segmentation300RulesFastpathRVEJB
System Stack
– z13 z/VM guest running SLES 11.3 on z/VM 6.3
with 4 vCPUs (2 IFLs with SMT)
– Lenovo x3550 M4 (x86 with 2 cores of Intel(R)
Xeon(R) CPU E5-2640 v3 @ 2.60GHz running
RHEL 7.1
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
© 2015 IBM Corporation 40
Linux on z Systems: WAS Liberty DayTrader 3
WAS Liberty 1.5x better throughput
on z13
Use Case
– The DayTrader 3 benchmark provides a suite
of workloads for characterizing performance of
a Java EE 6 Application Server. The
workloads consist of an end-to-end Web
application and a full set of Web primitives.
Key Messages / Results
– z13 1.5x better throughput than alternative
platform running WAS/DayTrader
Benchmark
– Websphere Application Server (WAS) Liberty
profile DayTrader3 using JMeter to simulate
clients.
System Stack
– z13 native LPAR on 4 IFL cores with SLES 12
using HiperSockets to client/db2 server
– Lenovo x3550 M4 (x86 with 4 cores of
Intel(R) Xeon(R) CPU E5-2640 v3 @
2.60GHz running RHEL 7.1 and 10gb
Ethernet to client/db2 server
Intel Haswell LinuxONE
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
zOS Liberty Ramp-up with IBM Java 8
DayTrader 3 Throughput
zOS 64-bit, 4 zEC12 cores, Liberty 8.5.5.5
Java 8
Java 7.1
Java 8 -Xtune:virt (warm)
Java 7.1 -Xtune:virt (warm)Elapsed Time (sec)
Throughput(pg/sec)
(Controlled measurement environment, results may vary)
 IBM Java 8 Ramp-up on DayTrader3/Liberty 8.5.5.5 over Java 7.1:
 –Xtune:virtualized improves by 88%
 Default improves by 22%
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
IBM z13: SMT – Simultaneous Multi-Threading
 Double the number of hardware threads per core
– Independent threads can more effectively utilize pipeline
 Threads share resources – may impact single thread perf
– Pipeline (e.g. physical registers, FXU, FPU, LSU, etc.)
– Cache
 Throughput improvement is workload dependent
Two zIIP lanes handle
more traffic overall
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Vector Processing - Single Instruction Multiple Data (SIMD)
Operate on multiple data-elements (vectors) simultaneously
Can offer dramatic speed-up to data-parallel operations
i.e. Matrix ops, string processing, etc.
Vector registers are 128-bits wide and
operate concurrently on:
•Two 64-bit integer or floating point values
•Four 32-bit integer or floating point values
•Sixteen 8-bit characters, etc.
Vector registers are 128-bits wide and
operate concurrently on:
•Two 64-bit integer or floating point values
•Four 32-bit integer or floating point values
•Sixteen 8-bit characters, etc.
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
44
(Controlled measurement environment, results may vary)
Primitive operations are between 1.6x and 60x faster with SIMD!
IBM Java 8 - String, Character Conversion, Loop Acceleration with SIMD
IBM z13 running Java 8 on zOS
Single Instruction Multiple Data (SIMD) vector engine exploitation
java/lang/String
 compareTo
 compareToIgnoreCase
 contains
 contentEquals
 equals
 indexOf
 lastIndexOf
 regionMatches
 toLowerCase
 toUpperCase
 getBytes
java/util/Arrays
 equals (primitive types)
String encoding converters
 ISO8859-1
 ASCII
 UTF-8 / UTF-16
Auto-SIMD
 Simple loops (i.e. Matrix
Multiplication)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
IBM Java 8: CPU-Intensive Benchmark
4545 (Controlled measurement environment, results may vary)
IBM z13 + IBM Java 8 show composite improvements of 61%
over zEC12 + Java7 SR4 running the CPU Intensive benchmark
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
4646
Mobile on z – z/OS Connect on IBM Java 8 and zEC12
(Controlled measurement environment, results may vary)
5 - 16.4% throughput improvement from IBM Java 8 on IBM zEC12
JMeter
Client Driver
z/OS Connect
Liberty Profile 8.5.5.3
WOLA
CICS 5.1
8 to 40 AORs
8 OTE Tasks/region DB2 10 for z/OS
RTW
COBOL
z/OS 2.1 on zEC12Linux on z
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Minecraft on z
47
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java 8 Summary of Crypto Acceleration
• Certificate (Public key)
• RSA
• ECDSA
• Forward Security
(Diffie-Hellman):
• DHE
• ECDHE
• ECC Named curves
(NIST, Brainpool,
Koblitz…)
• NIST P192
• NIST P224
• NIST P256
• Many more...
• Cipher:
• AES
• 3DES
• DES
• RC4
• Mode:
• CBC
• CFB
• OFB
• CTR
• GCM
• CCM
• ECB
• SHA1
• SHA2
• SHA224
• SHA256
• SHA384
• SHA512
• MD5
• SHA3
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
49
IBM and Java
 Java is critically important to IBM
– Fundamental infrastructure for IBM’s software portfolio
– WebSphere, Lotus, Tivoli, Rational, Information Management (IM)
 IBM is investing strategically for Java in virtual machines
– As of Java 5.0, single JVM support
• JME, JSE, JEE
– New technology base (J9/TR Compiler) on which to deliver improved performance,
reliability, serviceability
 IBM also invests in, and supports public innovation in Java
– OpenJDK, Eclipse, Apache (XML, Aries, Derby, Geronimo, Harmony, Hadoop …)
– Broad participation in relevant open standards (JCP, OSGi)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
50
JVM Architectural Overview
Debugger Profilers Java Application Code
JVMTI JSE7
Classes
JSE8
Classe
s
Harmony
Classes
User
Natives
GC / JIT / Class Lib. Natives Java Native Interface (JNI)
Core VM (Interpreter, Verifier, Stack Walker)
Trace & Dump Engines
Port Library (Files, Sockets, Memory)
Thread Library
AIX Linux Windows z/OS
PPC-32
PPC-64
x86-32
x86-64
PPC-32
PPC-64
zArch-31
zArch-64
x86-32
x86-64
zArch-31
zArch-64
Operating
Systems
Java Runtime
Environment
e.g. J9 R28
Java API
e.g. Java7/Java8
User Code
= User Code
= Java Platform API
= VM-aware
= Core VM
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Key Differences between Oracle and IBM Java
IBM and Oracle use the same reference implementation of Java Class
Libraries (e.g. OpenJDK)
Key differences to be aware of:
1. Security: Standards do not impose strong separation of interest
2. ORB: OMG CORBA standard rules
3. XML: Xerces/Xalan used by both vendors as of Java5, although different
levels may be used.
IBM uses the J9/TR runtime, Oracle uses Hotspot
–Different JIT/GC/VM tuning and controls
–Tooling is distinct (e.g. IBM Health Center)
51
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
52
IBM Java Runtime Environment
 IBM’s implementation of Java 5/6/7/8 are built with IBM J9 Virtual Machine and
IBM Testarossa JIT Compiler technology
• Independent clean-room JVM runtime & JIT compiler
 Combines best-of breed from embedded, development and server environments…
from a cell-phone to a mainframe!
• Lightweight flexible/scalable technology
• World class garbage collection – gencon, balanced GC policies
• Startup & Footprint - Shared classes, Ahead-of-time (AOT) compilation
• 64-bit performance - Compressed references & Large Pages
• Deep System z exploitation – z13/zEC12/z196/z10/z9/z990 exploitation
• Cost-effective for z - zIIP Ready!
 Millions of instances of J9/TR compiler
© 2015 IBM Corporation
Java on IBM zEC12
Java Road Map
53
Language Updates
Java 5.0
• New Language features:
• Autoboxing
• Enumerated types
• Generics
• Metadata
Java 6.0
• Performance Improvements
• Client WebServices Support
• Support for dynamic languages
• Improve ease of use for SWING
• New IO APIs (NIO2)
• Java persistence API
• JMX 2.x and WS connection for
JMX agents
• Language Changes
Java 7.0
IBM Java Runtimes
IBM Java 5.0 (J9 R23)
• Improved performance
• Generational Garbage Collector
• Shared classes support
• New J9 Virtual Machine
• New Testarossa JIT technology
• First Failure Data Capture
• Full Speed Debug
• Hot Code Replace
• Common runtime technology
• ME, SE, EE
IBM Java 6.0 (J9 R24)
• Improvements in
• Performance
• Serviceability tooling
• Class Sharing
• XML parser improvements
• z10™ Exploitation
• DFP exploitation for BigDecimal
• Large Pages
• New ISA features
5.0
6.0
2005 2009
SE5.0
18platforms
SE6.0
20platforms
EE 5
WAS
6.1
WAS
7.0
2006 2008
WAS
6.0
200704
EE 6.x
**Timelines and deliveries are subject to change.
2010 2011
IBM Java 6.0.1/Java 7
(J9 R26)
• Improvements in
• Performance
• GC Technology
• z196™ Exploitation
• OOO Pipeline
• 70+ New Instructions
• JZOS/Security Enhancements
WAS
8.5
2012 2013 2014
7.0
• Language improvements
• Closures for simplified fork/join
Java 8.0**
SE601/7.x
>=20platforms
IBM Java 7 (J9 R26 SR3)
• Improvements in
• Performance
• zEC12™ Exploitation
• Transactional Execution
• Flash 1Meg pageable LPs
• 2G large pages
• Hints/traps
IBM Java 7R1 (J9 R27)
• Improvements in
• Performance
• RAS
• Monitoring
• zEC12™ Exploitation
• zEDC for zip acceleration
• SMC-R integration
• Transactional Execution
• Runtime instrumentation
• Hints/traps
• Data Access Accelerator
SE601/7.x
>=20platforms
© 2015 IBM Corporation
Java on IBM zEC12
54
zEC12 – More Hardware for Java
Continued aggressive investment in Java on Z
Significant set of new hardware features tailored
and co-designed with Java
Hardware Transaction Memory (HTM)
Better concurrency for multi-threaded applications
eg. ~2X improvement to juc.ConcurrentLinkedQueue
Run-time Instrumentation (RI)
Innovation new h/w facility designed for managed runtimes
Enables new expanse of JRE optimizations
2GB page frames
Improved performance targeting 64-bit heaps
Pageable 1M large pages with Flash Express
Better versatility of managing memory
Shared-Memory-Communication
RDMA over Converged Ethernet
zEnterprise Data Compression accelerator
gzip accelerator
New software hints/directives/traps
Branch preload improves branch prediction
Reduce overhead of implicit bounds/null checks
New 5.5 GHz 6-Core Processor Chip
Large caches to optimize data serving
Second generation OOO design
Up-to 60% improvement in throughput amongst Java
workloads measured with zEC12 and IBM Java 7
Engineered Together—IBM Java and zEC12 Boost Workload Performance
http://www.ibmsystemsmag.com/mainframe/trends/whatsnew/java_compiler/
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Linux on System z and IBM Java 7 on zEC12:
64-Bit Java Multi-threaded Benchmark on 16-Way
5555
(Controlled measurement environment, results may vary)
~12x aggregate hardware and software improvement from IBM Java5SR4 on z9 to IBM Java7 on zEC12
• LP=Large Pages for Java heap CR= Java Compressed References
• IBM Java7SR3 using -Xaggressive + 1Meg large pages
Linux on System z - Multi-Threaded 64 bit Java Workload 16-Way
~12x Improvement in Hardware and Software
0
20
40
60
80
100
120
140
160
1 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32
Threads
NormalizedThroughput
zEC12 SDK 7 SR3
Aggressive +
LP Code Cache
zEC12 SDK 7 SR1
z196 SDK 7 SR1
z196 SDK 6 SR9
z10 SDK 6 SR4
z9 SDK 5 SR4
NO (CR or Heap LP)
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java 8 -- Lambdas
New syntax to allows for concise and expressive code snippets
- can be thought of as ‘anonymous methods’
http://www.dzone.com/links/presentation_languagelibraryvm_coevolution_in_jav.html
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java 8 – Lambdas for Streaming Operations
Lambdas can be pipelined to enable data stream operations
– Intermediate operations on streams produce new streams
– Terminal operations produce results
57
Enables exploitation of parallelism and supports multi-core programming
int totalWeight = widgets.stream()
.filter(w->w.getColor() == RED)
.matToInt(w->w.getWeight())
.SUM();
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java 8 Summary of Crypto Acceleration
• Certificate (Public key)
• RSA
• ECDSA
• Forward Security
(Diffie-Hellman):
• DHE
• ECDHE
• ECC Named curves
(NIST, Brainpool,
Koblitz…)
• NIST P192
• NIST P224
• NIST P256
• Many more...
• Cipher:
• AES
• 3DES
• DES
• RC4
• Mode:
• CBC
• CFB
• OFB
• CTR
• GCM
• CCM
• ECB
• SHA1
• SHA2
• SHA224
• SHA256
• SHA384
• SHA512
• MD5
• SHA3
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
Java 8 - JMX Beans for Precise CPU Monitoring
New JMX Beans for reporting CPU usage categorized by:
1. JVM System threads (JIT, GC, etc)
2. Application threads
3. Monitoring threads (to be able to excl. monitoring overhead)
Intended use-cases
– Reporting transaction cpu usage
– Identifying "expensive" transactions
– Reporting JVM overhead over specific intervals
– Foundation for future work on tracking idle behaviour
New classes
1. com.ibm.lang.management.JVMCpuMonitorMXBean (Bean to request Data)
• getThreadsCpuUsage()
• setThreadCategory()/getThreadCategory()
– com.ibm.lang.management.JVMCpuMonitorInfo (Object with Data)
Overhead may be visible on some platforms
Option to trade-off more precise GC-time reporting vs. reduced overhead
-XX:+ReduceCPUMonitorOverhead(default.)/-XX:-ReduceCPUMonitorOverhead
(z/OS cannot enable more precise GC-time reporting today)
59
© 2016 IBM Corporation
Java on IBM z13
@JavaOnZ
JZOS – SMF Logging
SMF Logging to Record type 121 subtype 1
JZOS_JVM_SMF_LOGGING environment variable to enable
Captures JVM runtime information
– Uptime, number of live threads and GC statistics
Record is logged during JVM shutdown
FUTURE function being considered**
SMF records to include breakdown of Application, JVM system, GC and JIT CPU-time
Information available on a per-thread basis
Captured periodically at user-defined intervals
60 **Timelines and deliveries are subject to change.

Contenu connexe

Tendances

Customer solutions with zVSE Connectors
Customer solutions with zVSE ConnectorsCustomer solutions with zVSE Connectors
Customer solutions with zVSE ConnectorsIBM
 
News to Development Environments and for RDz for z/VSE
News to Development Environments and for RDz for z/VSENews to Development Environments and for RDz for z/VSE
News to Development Environments and for RDz for z/VSEIBM
 
Magic Quadrant for On-Premises Application Platforms
Magic Quadrant for On-Premises Application PlatformsMagic Quadrant for On-Premises Application Platforms
Magic Quadrant for On-Premises Application PlatformsHamed Hatami
 
IBM Solution for WebSphere Mobile and Web Applications on PowerLinux
IBM Solution for WebSphere Mobile and Web Applications on PowerLinuxIBM Solution for WebSphere Mobile and Web Applications on PowerLinux
IBM Solution for WebSphere Mobile and Web Applications on PowerLinuxIBM India Smarter Computing
 
Java on IBM z15
Java on IBM z15Java on IBM z15
Java on IBM z15Joran Siu
 
WAS Support & Monitoring Tools
WAS Support & Monitoring ToolsWAS Support & Monitoring Tools
WAS Support & Monitoring ToolsRoyal Cyber Inc.
 
Z os connect v2 ee vs v1 - 1 page
Z os connect v2 ee vs v1 - 1 pageZ os connect v2 ee vs v1 - 1 page
Z os connect v2 ee vs v1 - 1 pageLuigi Tommaseo
 
Using WebSphere MQ with WebSphere Application Server and the Liberty Profile
Using WebSphere MQ with WebSphere Application Server and the Liberty ProfileUsing WebSphere MQ with WebSphere Application Server and the Liberty Profile
Using WebSphere MQ with WebSphere Application Server and the Liberty Profilet_quigly
 
IBM Impact Session 2351 hybrid apps
IBM Impact Session 2351 hybrid appsIBM Impact Session 2351 hybrid apps
IBM Impact Session 2351 hybrid appsnick_garrod
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsVMware vFabric
 
IBM WebSphere application server
IBM WebSphere application serverIBM WebSphere application server
IBM WebSphere application serverIBM Sverige
 
Whats new in was liberty security and cloud readiness
Whats new in was liberty   security and cloud readinessWhats new in was liberty   security and cloud readiness
Whats new in was liberty security and cloud readinesssflynn073
 

Tendances (14)

Customer solutions with zVSE Connectors
Customer solutions with zVSE ConnectorsCustomer solutions with zVSE Connectors
Customer solutions with zVSE Connectors
 
News to Development Environments and for RDz for z/VSE
News to Development Environments and for RDz for z/VSENews to Development Environments and for RDz for z/VSE
News to Development Environments and for RDz for z/VSE
 
Magic Quadrant for On-Premises Application Platforms
Magic Quadrant for On-Premises Application PlatformsMagic Quadrant for On-Premises Application Platforms
Magic Quadrant for On-Premises Application Platforms
 
Was liberty
Was libertyWas liberty
Was liberty
 
IBM Solution for WebSphere Mobile and Web Applications on PowerLinux
IBM Solution for WebSphere Mobile and Web Applications on PowerLinuxIBM Solution for WebSphere Mobile and Web Applications on PowerLinux
IBM Solution for WebSphere Mobile and Web Applications on PowerLinux
 
Java on IBM z15
Java on IBM z15Java on IBM z15
Java on IBM z15
 
WAS Support & Monitoring Tools
WAS Support & Monitoring ToolsWAS Support & Monitoring Tools
WAS Support & Monitoring Tools
 
Z os connect v2 ee vs v1 - 1 page
Z os connect v2 ee vs v1 - 1 pageZ os connect v2 ee vs v1 - 1 page
Z os connect v2 ee vs v1 - 1 page
 
Using WebSphere MQ with WebSphere Application Server and the Liberty Profile
Using WebSphere MQ with WebSphere Application Server and the Liberty ProfileUsing WebSphere MQ with WebSphere Application Server and the Liberty Profile
Using WebSphere MQ with WebSphere Application Server and the Liberty Profile
 
IBM Impact Session 2351 hybrid apps
IBM Impact Session 2351 hybrid appsIBM Impact Session 2351 hybrid apps
IBM Impact Session 2351 hybrid apps
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
 
1812 icap-v1.3 0430
1812 icap-v1.3 04301812 icap-v1.3 0430
1812 icap-v1.3 0430
 
IBM WebSphere application server
IBM WebSphere application serverIBM WebSphere application server
IBM WebSphere application server
 
Whats new in was liberty security and cloud readiness
Whats new in was liberty   security and cloud readinessWhats new in was liberty   security and cloud readiness
Whats new in was liberty security and cloud readiness
 

Similaire à Java on z overview 20161107

Reasons to love IBM Java and Websphere Application Server on z system
Reasons to love IBM Java and Websphere Application Server on z systemReasons to love IBM Java and Websphere Application Server on z system
Reasons to love IBM Java and Websphere Application Server on z systemElena Nanos
 
Reasons to Love IBM Java and WebSphere Application Server on z System
Reasons to Love IBM Java and WebSphere Application Server on z SystemReasons to Love IBM Java and WebSphere Application Server on z System
Reasons to Love IBM Java and WebSphere Application Server on z SystemElena Nanos
 
SemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSumanMitra22
 
What's New in IBM Java 8 SE?
What's New in IBM Java 8 SE?What's New in IBM Java 8 SE?
What's New in IBM Java 8 SE?Tim Ellison
 
OpenStack and z/VM – What is it and how do I get it?
OpenStack and z/VM – What is it and how do I get it?OpenStack and z/VM – What is it and how do I get it?
OpenStack and z/VM – What is it and how do I get it?Anderson Bassani
 
z/VSE - News - Announcements -Trends
z/VSE - News - Announcements -Trendsz/VSE - News - Announcements -Trends
z/VSE - News - Announcements -TrendsIBM
 
J9: Under the hood of the next open source JVM
J9: Under the hood of the next open source JVMJ9: Under the hood of the next open source JVM
J9: Under the hood of the next open source JVMDanHeidinga
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFrançois Le Droff
 
Great cup of java
Great  cup of javaGreat  cup of java
Great cup of javaCIB Egypt
 
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...0xdaryl
 
Concierge - Bringing OSGi (back) to Embedded Devices
Concierge - Bringing OSGi (back) to Embedded DevicesConcierge - Bringing OSGi (back) to Embedded Devices
Concierge - Bringing OSGi (back) to Embedded DevicesJan S. Rellermeyer
 
JVMs in Containers - Best Practices
JVMs in Containers - Best PracticesJVMs in Containers - Best Practices
JVMs in Containers - Best PracticesDavid Delabassee
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...IBM UrbanCode Products
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsDavid Delabassee
 

Similaire à Java on z overview 20161107 (20)

Reasons to love IBM Java and Websphere Application Server on z system
Reasons to love IBM Java and Websphere Application Server on z systemReasons to love IBM Java and Websphere Application Server on z system
Reasons to love IBM Java and Websphere Application Server on z system
 
Reasons to Love IBM Java and WebSphere Application Server on z System
Reasons to Love IBM Java and WebSphere Application Server on z SystemReasons to Love IBM Java and WebSphere Application Server on z System
Reasons to Love IBM Java and WebSphere Application Server on z System
 
S109 cics-java
S109 cics-javaS109 cics-java
S109 cics-java
 
SemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptxSemeruRuntimesUnderTheCover .pptx
SemeruRuntimesUnderTheCover .pptx
 
Maximize o valor do z/OS
Maximize o valor do z/OSMaximize o valor do z/OS
Maximize o valor do z/OS
 
What's New in IBM Java 8 SE?
What's New in IBM Java 8 SE?What's New in IBM Java 8 SE?
What's New in IBM Java 8 SE?
 
OpenStack and z/VM – What is it and how do I get it?
OpenStack and z/VM – What is it and how do I get it?OpenStack and z/VM – What is it and how do I get it?
OpenStack and z/VM – What is it and how do I get it?
 
SunMicroSystems
SunMicroSystemsSunMicroSystems
SunMicroSystems
 
Sunstate
SunstateSunstate
Sunstate
 
z/VSE - News - Announcements -Trends
z/VSE - News - Announcements -Trendsz/VSE - News - Announcements -Trends
z/VSE - News - Announcements -Trends
 
JVMs in Containers
JVMs in ContainersJVMs in Containers
JVMs in Containers
 
J9: Under the hood of the next open source JVM
J9: Under the hood of the next open source JVMJ9: Under the hood of the next open source JVM
J9: Under the hood of the next open source JVM
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
Java8 - Under the hood
Java8 - Under the hoodJava8 - Under the hood
Java8 - Under the hood
 
Great cup of java
Great  cup of javaGreat  cup of java
Great cup of java
 
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
JavaOne 2015 CON7547 "Beyond the Coffee Cup: Leveraging Java Runtime Technolo...
 
Concierge - Bringing OSGi (back) to Embedded Devices
Concierge - Bringing OSGi (back) to Embedded DevicesConcierge - Bringing OSGi (back) to Embedded Devices
Concierge - Bringing OSGi (back) to Embedded Devices
 
JVMs in Containers - Best Practices
JVMs in Containers - Best PracticesJVMs in Containers - Best Practices
JVMs in Containers - Best Practices
 
Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...Helping Organizations Realize the Value of DevOps with Continuous Software De...
Helping Organizations Realize the Value of DevOps with Continuous Software De...
 
Serverless Java - Challenges and Triumphs
Serverless Java - Challenges and TriumphsServerless Java - Challenges and Triumphs
Serverless Java - Challenges and Triumphs
 

Dernier

A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 

Dernier (20)

A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 

Java on z overview 20161107

  • 1. © 2016 IBM Corporation Overview of Java on z Marcel Mitran – DE, CTO LinuxONE Joran Siu – Lead Arch, IBM Runtimes on z November 2016 @JavaOnZ
  • 2. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 222 IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of other IBM trademarks is available on the web at "Copyright and trademark information" at http://www.ibm.com/legal/copytrade.shtml Other company, product, or service names may be trademarks or service marks of others. 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 OR SOFTWARE. © Copyright International Business Machines Corporation 2016. All rights reserved. Trademarks, Copyrights, Disclaimers
  • 3. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 3 Evolving Java as a Workload Optimized System on IBM z Portable and consumable  First-class IBM Java SDK for z/OS and Linux on z  Providing seamless portability across platforms Pervasive and integrated across the z eco-system  Java business logic runs with all z middleware (IMS, CICS, WAS etc)  Inter-operability with legacy batch and OLTP assets Deep System Z exploitation  SDK extensions enabled z QoS for full integration with z/OS  zAAP/zIIP/IFL specialty engines provide low-cost Java capacity Performance  A decade of hardware/software innovation and optimization  Industry leading performance with IBM J9 Virtual Machine  Enabling tight data locality for high-performance and simplified systems Enable integration of Java-based applications with core z/OS backend database environment for high performance, reliability, availability, security, and lower total cost of ownership
  • 4. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 4 Java Execution Environments and Interoperability  IBM Java Execution Offerings – Transactional/Interactive • zOS Connect • WebSphere for z/OS (WAS z/OS) • WebSphere Process Server for z/OS (WPS) • JCICS/Liberty • IMS Java • DB2 Stored Procedures • ODM – Batch oriented • WebSphere Compute Grid (WAS-CG) • WAS/JEE runtime extensions • IMS Java Batch regions (JMP) • JZOS component of z/OS SDK • JES/JSE-based environment • z/OS V1R13 Java/COBOL Batch Runtime* JES/JSE-based, designed to inter-op with DB2 while maintaining transaction integrity  Open Source or non-IBM vendor Application Server and Frameworks – Tomcat, JBoss – iBatis, Hibernate, Spring – Ant – Kafka – Spark Capitalize on pre-existing assets, artifacts, processes, core competencies, platform strengths  COBOL/Native Interoperability – COBOL Invoke maps to JNI – RDz and JZOS** have tooling to map COBOL copy books to Java classes – JCICS – IMS Java, JMP/JBP – WAS CG, WOLA – etc * See http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?subtype=ca&infotype=an&supplier=897&letternum=ENUS211-252 ** Alphaworks only, and hence currently un-supported
  • 5. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 5 z/OS – System z Java Extensions All SDKs support the ‘standards’, Java on z/OS extends the SDK  Access to z/OS services  Access to all types of data  Access under control of z/OS security mechanisms  Integration into existing operational infrastructure Services available in JEE and JSE environments under the restrictions of the container. SDK z/OS Extensions SDK Base Function System specific extension allow you to write robust middleware and applications that integrate with traditional z/OS operating environment  Allow for maintaining platform independent design development.  Platform specific implementations when required  Allows for operational and resource optimization e.g. JAAS wrapper of SAF (RACF, ACF2, or TopSecret), Traditional OS dataset access, Cryptographic hardware (Cards and CPACF), z/OS Console (modify and messages), z/OS system logger, JES job submission, DFSORT, SMF, etc.
  • 6. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java Road Map 6 Language Updates Java 5.0 • New Language features: • Autoboxing • Enumerated types • Generics • Metadata Java 6.0 • Performance Improvements • Client WebServices Support • Support for dynamic languages • Improve ease of use for SWING • New IO APIs (NIO2) • Java persistence API • JMX 2.x and WS connection for JMX agents • Language Changes Java 7.0 IBM Java Runtimes IBM Java 5.0 (J9 R23) • Improved performance • Generational Garbage Collector • Shared classes support • New J9 Virtual Machine • New Testarossa JIT technology • First Failure Data Capture • Full Speed Debug • Hot Code Replace • Common runtime technology • ME, SE, EE IBM Java 6.0 (J9 R24) • Improvements in • Performance • Serviceability tooling • Class Sharing • XML parser improvements • z10™ Exploitation • DFP exploitation for BigDecimal • Large Pages • New ISA features 5.0 6.0 2005 2009 SE5.0 18platforms SE6.0 20platforms EE 5 WAS 6.1 WAS 7.0 2006 2008 WAS 6.0 200704 EE 6.x 2010 2011 IBM Java 6.0.1/Java 7 (J9 R26) • Improvements in • Performance • GC Technology • z196™ Exploitation • OOO Pipeline • 70+ New Instructions • JZOS/Security Enhancements WAS 8.5 2012 2013 2014 7.0 • Language improvements • Closures for simplified fork/join Java 8.0 SE601/7.x >=20platforms IBM Java 7 (J9 R26 SR3) • Improvements in • Performance • zEC12™ Exploitation • Transactional Execution • Flash 1Meg pageable LPs • 2G large pages • Hints/traps IBM Java 7.1 (J9 R27) • Improvements in • Performance • RAS • Monitoring • zEC12™ Exploitation • zEDC for zip acceleration • SMC-R integration • Transactional Execution • Runtime instrumentation • Hints/traps • Data Access Accelerator SE601/7.x >=20platforms 2015 IBM Java 8 (J9 R28) • Improvements in • Performance • RAS • Monitoring • z13™ Exploitation • SIMD • SMT • Crypto acceleration SE8 >=20platforms
  • 7. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ IBM SDK for z/OS, Java Tech. Edition, Version 8 (IBM Java 8) 7  New Java8 Language Features – Lambdas, virtual extension methods  IBM z13 exploitation – Vector exploitation and other new instructions – Instruction scheduling  General throughput improvements – Up-to 9% better application throughput – Significant improvements to ORB  Improved crypto performance for IBMJCE – Block ciphering, secure hashing and public key • Up-to 4x improvement to Public Key using ECC • CPACF instructions: AES, 3DES, SHA1, SHA2, etc  Significantly improved application ramp-up – Up-to 50% less CPU to ramp-up to steady-state – Improved ahead-of-time compiled code  Improved Monitoring – JMX beans for precise CPU-time monitoring  Enhancements to JZOS Toolkit for Java batch
  • 8. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ IBM z13 – Taking Java Performance to the Next Level 8 Continued aggressive investment in Java on Z Significant new hardware features tailored and co-designed with Java Simultaneous Multi-Threading (SMT) – 2x hardware threads/core for improved throughput – Available on zIIPs and IFLs Single Instruction Multiple Data (SIMD) – Vector processing unit – Accelerates loops and string operations Cryptographic Function (CPACF) – Improved performance of crypto co-processors New Instructions – Packed Decimal Decimal Floating Point – Load Immediate on Condition – Load Logical and Zero Rightmost Byte Up to 2X improvement in throughput per core for security enabled applications Up to 50% improvement in throughput for generic applications New 5.0 GHz 8-Core Processor Chip 480MB L4 cache : Optimized for data serving
  • 9. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ z zIIPs DayTrader 3 * DayTrader3 t DayTrader2 1.0 1.6 2.2 3.1 3.9 5.2 6.0 6.6 9.6 11.7 12.3 0.0 2.0 4.0 6.0 8.0 10.0 12.0 Version 6.1 on z9 Version 6.1 on z10 Version 7.0 on z10 Version 7.0 on z196 Version 8.5 on z196 Version 8.5 on EC12 Version 8.5 on EC12 Version 8.5.5.2 on EC12 Version 8.5.5.9 on z13 wo/SMT Version 8.5.5.9 on z13 w/SMT Version 8.5.5.9 on z13 w/SMT AggregatePerformanceEstimate History of Classic WAS on z/OS Hardware/Software Performance +16%t +40%t +25%t +10%* +43%t +57%t +32%t +45%z +22%zHardwareImprovement Software Improvement Java 7.1 SR3 Java 7.1 SR3 Java 7.1 SR1 Java 7 SR4 Java 601 Java 601 Java 6 Java 6 Java 5Java 5 Java 8 SR2 +5%z 9 WAS on z/OS – DayTrader : Aggregate Improvements on 4 Cores (Controlled measurement environment, results may vary) 12.3x aggregate hardware and software improvements WAS 6.1 IBM Java5 on z9  WAS 8.5.5.9 IBM Java 8 SR2 FP10 on z13 with SMT
  • 10. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 10 z/OS - Java Store, Inventory and Point-of-Sale App with IBM Java 8 and z13 z/OS - 1.9x improvement in throughput with IBM Java 8 and IBM z13 (Controlled measurement environment, results may vary)
  • 11. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Business Rules Processing – IBM z13 vs Intel Haswell IBM z13 up-to 1.56x better throughput/core processing business rules than Intel Haswell 11 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 Haswell - Linux - Java8 z13 - zOS - Java8 BusinessRules Processing with IBM z13 with Java8 -Small Ruleset 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 Haswell - Linux - Java8 z13 - zOS - Java8 BusinessRules Processing with IBM z13 with Java8 -Large Ruleset (Controlled measurement environment, results may vary)
  • 12. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java on z Survey 12 Classified Java projects as >= successful now have Java applications in production 95 client responses 68% Java Project on z 85% within 3 years 145 surveys returned In 1 week… What are you waiting for? How Successful was your project? Enterprise Architects System programmers Application Developers had the most influence On Java on z projects
  • 13. © 2016 IBM Corporation Java on IBM z13 @JavaOnZFollow on twitter @JavaOnZ Java on z Systems?
  • 14. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 14
  • 15. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Reasons to Love IBM Java and WAS on z Systems HCSC – 14.5 million health insurance members WebSphere on z/OS has been selected at HCSC as a preferred platform to support development and deployment of mission-critical Java applications for the following reasons: Co-location: WASz minimizes physical tiers 3-4x improvement for one of HCSC’s largest WAS applications when moving from distributed to z/OS High Volume Transaction Rates: Could not meet business needs with distributed Qualities of Service Horizontal scaling Continuous availability and fail-over www.slideshare.net/elenan3403/reasons-to-love-ibm-java-and-web-sphere-application-server-on-z-system IBM JVM Performance Dividends 30% improvement with Java601 10% improvement with Java7.1
  • 16. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ How Java became the NextGen Application of Choice for Fiducia Fiducia IT AG - Full service provider for 750 Banks with about 10,550 Points of sales •Java support in IMS MPRs and BMPs oSupport of Java SE (31 bit) for building “Business logic“ oJVM is resident in the MPR for its hole life •In MPRs: the main program is COBOL •Inter Language Communication (ILC) between COBOL and Java allows: • COBOL to call Java and Java to call COBOL (cascading) •Java and COBOL run within the same transaction (UOW) with database support for: oDB2 from COBOL (static SQL) and Java (JDBC Type-2) oDL1 from COBOL and Java oMQ access from Java (future) 16 JZOS in use for mission critical applications since 2013 •Huge amounts of data is manipulated •Throughput is very important •Strict timing window for the business
  • 17. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Questions? 17
  • 18. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ
  • 19. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 1919 Important references  z/OS Java web site – http://www.ibm.com/systems/z/os/zos/tools/java/  IBM SDK Java Technology Edition Version 7 Information Center – http://publib.boulder.ibm.com/infocenter/java7sdk/v7r0/index.jsp  IBM SDK Java Technology Edition Version 6 Supplement – http://public.dhe.ibm.com/common/ssi/ecm/en/zsl03118usen/ZSL03118USEN.PDF  JZOS Batch Launcher and Toolkit Installation and User’s Guide (SA38-0696-00) – For JZOS function included in IBM Java SE 7 SDKs for z/OS – http://publibz.boulder.ibm.com/epubs/pdf/ajvc0110.pdf  JZOS Batch Launcher and Toolkit Installation and User’s Guide (SA23-2245-03) – For JZOS function included in IBM Java SE 6 and SE 5 SDKs for z/OS – http://publibfi.boulder.ibm.com/epubs/pdf/ajvc0103.pdf
  • 20. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 2020 New and existing supported Java products – z/OS  IBM 31-bit SDK for z/OS, Java Technology Edition, Version 8.0 – Web available on March 6th, 2015 at Java SE 8 level – Product 5655-DGG, supported on z/OS V1.13 and above  IBM 64-bit SDK for z/OS, Java Technology Edition, Version 8.0 – Web available on March 6th, 2015 at Java SE 8 level – Product 5655-DGH, supported on z/OS V1.13 and above  IBM 31-bit SDK for z/OS, Java Technology Edition, Version 7 Release 1 – Web available on December, 2013 at Java SE 7 level – Product 5655-W43, supported on z/OS V1.12 and above  IBM 64-bit SDK for z/OS, Java Technology Edition, Version 7 Release 1 – Web available on December, 2013 at Java SE 7 level – Product 5655-W44, supported on z/OS V1.12 and above  IBM 31-bit SDK for z/OS, Java Technology Edition, Version 7.0 – Web available on October 4, 2011 at Java SE 7 level – Product 5655-W43, supported on z/OS V1.10 and above  IBM 64-bit SDK for z/OS, Java Technology Edition, Version 7.0 – Web available on October 4, 2011 at Java SE 7 level – Product 5655-W44, supported on z/OS V1.10 and above  IBM 31-bit SDK for z/OS, Java Technology Edition, Version 6.0.1 – Web available on March 15, 2011 at Java SE 6 level – Product 5655-R31, supported on z/OS V1.10 and above  IBM 64-bit SDK for z/OS, Java Technology Edition, Version 6.0.1 – Web available on March 15, 2011 at Java SE 6 level – Product 5655-R32, supported on z/OS V1.10 and above  IBM 31-bit SDK for z/OS, Java Technology Edition, Version 6.0.0 – Web available on December 14, 2007 at Java SE 6 level – Product 5655-R31  IBM 64-bit SDK for z/OS, Java Technology Edition, Version 6.0.0 – Web available on December 14, 2007 at Java SE 6 level – Product 5655-R32  IBM 31-bit SDK for z/OS, Java 2 Technology Edition, Version 5.0 – Web available on November 30, 2005 – Product 5655-N98  IBM 64-bit SDK for z/OS, Java 2 Technology Edition, Version 5.0 – Web available on November 30, 2005 – Product 5655-N99  All products are delivered via the z/OS Java website in non-SMP/E format and via ShopIBM in SMP/E format  All products are independently orderable and serviceable and follow the z/OS RFA rules for Withdrawal from Marketing and End of Service
  • 21. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 21
  • 22. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 2222 z/OS - IBM Business Rules Processing with IBM Java 8 and z13 (Controlled measurement environment, results may vary) z/OS - aggregate 2x improvement from IBM Java 8 and IBM z13
  • 23. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 2323 Linux on z - IBM Business Rules Processing with IBM Java 8 and z13 (Controlled measurement environment, results may vary) z/VM IFL aggregate 2x improvement from IBM Java 8 and IBM z13
  • 24. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java in CICS – zEC12, z13 and z13 with SMT2  CICS Transaction Server for z/OS V5.2 with Java V7.1  Measurements on both IBM z13 and zEC12 obtained using 3 GPs and 1 zIIP 24 Disclaimer Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 25. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ z/OS Connect with CICS – Hardware Improvements 35% ITR increase zEC12  z13 Disclaimer Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. Some measurements were obtained used beta developmental code. • CICS TS V5.3 open beta developmental code with Liberty V8.5.5.3 • Java V7.1 with IBMJCECCA support enabled • Measurements on both IBM z13 and zEC12 obtained using 3 GPs and 1 zIIP 25
  • 26. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ z/OS Connect with CICS – Java Improvements Disclaimer Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. Some measurements were obtained used beta developmental code. • CICS TS V5.3 with Liberty V8.5.5.7 + z/OS Connect 1.2 • Java V7.1 SR3 + Java 8 SR2 with IBMJCECCA support enabled • Measurements on IBM z13 obtained using 3 GPs and 1 zIIP 26
  • 27. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 27 (Controlled measurement environment, results may vary) IMS Mobile Feature Pack 73% aggregate improvement in throughput from z13 and IBM Java8 z/OS Connect with IMS (Mobile Feature Pack)
  • 28. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ IMS JMP Regions Overhead 28 (Controlled measurement environment, results may vary) JMP regions 25% better throughput on z13 vs zEC12 JMP regions 34% better through on zEC12 vs z196
  • 29. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 29 IMS JMP Speed-Test Over 9.3x aggregate throughput improvement from 2009 to 2015 due to the following enhancements  Java version to version performance improvements  IMS improvements  Hardware improvements  DASD improvements (Controlled measurement environment, results may vary)
  • 30. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 30 Linux on z - Java Store, Inventory and Point-of-Sale App with IBM Java 8 and z13 2x improvement in throughput with IBM Java 8 and IBM z13 (Controlled measurement environment, results may vary)
  • 31. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 3131 z/OS WAS/Liberty 8.5.5.5 – SSL-Enabled DayTrader 3.0 (Controlled measurement environment, results may vary) z/OS - 2.6x improvement in throughput with IBM Java 8 and IBM z13
  • 32. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 3232 z/VM IFLs WAS/Liberty 8.5.5.5 – SSL-Enabled DayTrader 3.0 (Controlled measurement environment, results may vary) z/VM Linux on z - 2.6x improvement in throughput with IBM Java 8 and IBM z13
  • 33. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Linux on z – DayTrader 3 on Liberty SMT Improvements 33 (Controlled measurement environment, results may vary)
  • 34. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 3434 WebSphere – Linux on z Virtualized Cluster (Controlled measurement environment, results may vary) Between 1.36x and 1.66x improved throughput for a virtualized WAS cluster running DayTrader on z13 when compared to zEC12 0.00 0.20 0.40 0.60 0.80 1.00 1.20 1.40 1.60 1.80 zEC12 z13 SMT vs zEC12 Linux on z - SLES 11 SP3, WAS 8.5.5 Java 7.1, DayTrader3 8 CP - 16 guests 0.00 0.20 0.40 0.60 0.80 1.00 1.20 1.40 1.60 1.80 zEC12 z13 SMT vs zEC12 Linux on z - SLES 11 SP3, WAS 8.5.5 Java 7.1, DayTrader3 32 CP - 64 guests
  • 35. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Transform your Data - Data Access Accelerator in IBM Java 7R1 35 A Java library for bare-bones data conversion + arithmetic Operates directly on byte arrays Orchestrated with JIT for deep platform opt. Avoids expensive Java object instantiation Library is platform and JVM-neutral Current Approach: byte[] addPacked(array a[], array b[]) { BigDecimal a_bd = convertPackedToBd(a[]); BigDecimal b_bd = convertPackedToBd(b[]); a_bd.add(b_bd); return (convertBDtoPacked(a_bd)); } Proposed Solution: byte[] addPacked(array a[], array b[]) { DAA.addPacked(a[], b[]); return (a[]); } Marshalling and Un-marshalling Transform primitive type (short, int, long, float, double)  byte array Support both big/little endian byte arrays Packed Decimal (PD) Operations Arithmetic: +, -, *, /, % on 2 PD operands Relation: >,<,>=,<=,==,!= on 2 PD operands Error checking: checks if PD operand is well-formed Other: shifting, and moving ops on PD operand Decimal Data Type Conversions Decimal  Primitive: Convert Packed Decimal(PD), External Decimal(ED), Unicode Decimal(UD)  primitive types (int, long) Decimal  Decimal: Convert between dec. types (PD, ED, UD) Decimal Java: Convert dec. types (PD, ED, UD)  BigDecimal, BigInteger www-01.ibm.com/support/knowledgecenter/SSYKE2_8.0.0/com.ibm.java.zos.80.doc/user/daa.html
  • 36. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ JZOS Medicare Record Benchmark : With and without DAA http://www.ibm.com/developerworks/java/zos/javadoc/jzos/index.html?com/ibm/jzos/sample/fields/MedicareRecord.html (Controlled measurement environment, results may vary) CPU-time processing 5 million medical records • Aggregate 2.2x improvement from DAA with IBM Java8 and z13 • 83% improvement from DAA on Java8 (vs 55% with Java7.1 SR1) on z13
  • 37. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ © 2015 IBM Corporation 37 Linux on z Systems : Spark Up to 1.5x Faster Insights for Real-time Analytics using Spark’s Core Primitives Use cases (relative to Financial Transactions demo) Sentiment analysis on streaming twitter data for real-time decisions Batch sentiment analysis on news article databases Streaming and batch analytics on Geospatial data for location based decisions Co-locate Spark Analytics and Data stores for accelerated query and analytic operations Speedup core Spark primitives for accelerated Spark based execution Key Messages / Results – up to 1.5x faster insights for real-time analytics using Spark’s core primitives on z13 – up to 1.5x more data processed for model building, leading to real- time insights with higher accuracy within a given batch window Benchmark – Out-of-box, default Spark parameters, Scale Factor 0.65 – 1 Spark worker – 8 ‘Spark’ core benchmarks in Spark-perf consist of scheduling- throughput, scala-agg-by-key, scala-agg-by-key-int, scala-agg-by- key-naïve, scala-sort-by-key, scala-sort-by-key-int, scala-count, scala-count-w-fltr System Stack – z13 running RHEL 7.1 with 6 cores, 565GB memory, IBM JDK 1.8 SR1-FP10, Spark 1.4 – x86 6 cores, Intel(R) Xeon(R) CPU E5-2698 v3 @ 2.30GHz, 565GB memory running Ubuntu, IBM JDK 1.8 (SR1), Spark 1.4 * *Composite Mean Across 8 ‘Spark’ Core Benchmarks
  • 38. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ © 2015 IBM Corporation 38 Linux on z Systems : Spark Co-locate Spark with Database on Linux on z13 outperforms running Spark off-platform up to 3x for aggregation analytical query Use case – Operational Analytics for a Brokerage running reports on top of OLTP Trading data Key message: – Co-locating Spark on z13 to run Analytical queries on top of OLTP database running in z13 outperforms running Spark off-platform Results – Spark on z13 provides up to 3x for aggregation analytical query Configuration – z13 guest running RHEL 6.5 on z/VM 6.3 with 32 vCPUs (16 IFLs with SMT) and 512GB memory, Spark 1.5.0, IBM JDK1.7 SR3 – x86: 16 cores of Intel(R) Xeon(R) CPU E5-2698 v3 @2.30GHz, 512GB memory running SLES 11.3, Spark 1.4.1, JDK 1.8 Test – Scala map-reduce script (aggregation query) on TPC-E 20K scale Trade table using 1 master and 4 worker JVMs – Out-of-box, default parameters, no tuning 3.1x 2.3x 1.9x
  • 39. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ © 2015 IBM Corporation 39 Linux on z Systems: ODM ODM 1.5x higher rule processing rate on z13 Use Case – IBM ILOG Optimization Decision Manager (ODM) Enterprise makes optimization technology accessible to business, enabling intelligent planning and scheduling decisions. Results – ODM on z13 has up to 1.5x better rule processing rate than alternative platform Benchmark – ILOG ODM benchmark: Segmentation300RulesFastpathRVEJB System Stack – z13 z/VM guest running SLES 11.3 on z/VM 6.3 with 4 vCPUs (2 IFLs with SMT) – Lenovo x3550 M4 (x86 with 2 cores of Intel(R) Xeon(R) CPU E5-2640 v3 @ 2.60GHz running RHEL 7.1
  • 40. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ © 2015 IBM Corporation 40 Linux on z Systems: WAS Liberty DayTrader 3 WAS Liberty 1.5x better throughput on z13 Use Case – The DayTrader 3 benchmark provides a suite of workloads for characterizing performance of a Java EE 6 Application Server. The workloads consist of an end-to-end Web application and a full set of Web primitives. Key Messages / Results – z13 1.5x better throughput than alternative platform running WAS/DayTrader Benchmark – Websphere Application Server (WAS) Liberty profile DayTrader3 using JMeter to simulate clients. System Stack – z13 native LPAR on 4 IFL cores with SLES 12 using HiperSockets to client/db2 server – Lenovo x3550 M4 (x86 with 4 cores of Intel(R) Xeon(R) CPU E5-2640 v3 @ 2.60GHz running RHEL 7.1 and 10gb Ethernet to client/db2 server Intel Haswell LinuxONE
  • 41. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ zOS Liberty Ramp-up with IBM Java 8 DayTrader 3 Throughput zOS 64-bit, 4 zEC12 cores, Liberty 8.5.5.5 Java 8 Java 7.1 Java 8 -Xtune:virt (warm) Java 7.1 -Xtune:virt (warm)Elapsed Time (sec) Throughput(pg/sec) (Controlled measurement environment, results may vary)  IBM Java 8 Ramp-up on DayTrader3/Liberty 8.5.5.5 over Java 7.1:  –Xtune:virtualized improves by 88%  Default improves by 22%
  • 42. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ IBM z13: SMT – Simultaneous Multi-Threading  Double the number of hardware threads per core – Independent threads can more effectively utilize pipeline  Threads share resources – may impact single thread perf – Pipeline (e.g. physical registers, FXU, FPU, LSU, etc.) – Cache  Throughput improvement is workload dependent Two zIIP lanes handle more traffic overall
  • 43. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Vector Processing - Single Instruction Multiple Data (SIMD) Operate on multiple data-elements (vectors) simultaneously Can offer dramatic speed-up to data-parallel operations i.e. Matrix ops, string processing, etc. Vector registers are 128-bits wide and operate concurrently on: •Two 64-bit integer or floating point values •Four 32-bit integer or floating point values •Sixteen 8-bit characters, etc. Vector registers are 128-bits wide and operate concurrently on: •Two 64-bit integer or floating point values •Four 32-bit integer or floating point values •Sixteen 8-bit characters, etc.
  • 44. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 44 (Controlled measurement environment, results may vary) Primitive operations are between 1.6x and 60x faster with SIMD! IBM Java 8 - String, Character Conversion, Loop Acceleration with SIMD IBM z13 running Java 8 on zOS Single Instruction Multiple Data (SIMD) vector engine exploitation java/lang/String  compareTo  compareToIgnoreCase  contains  contentEquals  equals  indexOf  lastIndexOf  regionMatches  toLowerCase  toUpperCase  getBytes java/util/Arrays  equals (primitive types) String encoding converters  ISO8859-1  ASCII  UTF-8 / UTF-16 Auto-SIMD  Simple loops (i.e. Matrix Multiplication)
  • 45. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ IBM Java 8: CPU-Intensive Benchmark 4545 (Controlled measurement environment, results may vary) IBM z13 + IBM Java 8 show composite improvements of 61% over zEC12 + Java7 SR4 running the CPU Intensive benchmark
  • 46. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 4646 Mobile on z – z/OS Connect on IBM Java 8 and zEC12 (Controlled measurement environment, results may vary) 5 - 16.4% throughput improvement from IBM Java 8 on IBM zEC12 JMeter Client Driver z/OS Connect Liberty Profile 8.5.5.3 WOLA CICS 5.1 8 to 40 AORs 8 OTE Tasks/region DB2 10 for z/OS RTW COBOL z/OS 2.1 on zEC12Linux on z
  • 47. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Minecraft on z 47
  • 48. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java 8 Summary of Crypto Acceleration • Certificate (Public key) • RSA • ECDSA • Forward Security (Diffie-Hellman): • DHE • ECDHE • ECC Named curves (NIST, Brainpool, Koblitz…) • NIST P192 • NIST P224 • NIST P256 • Many more... • Cipher: • AES • 3DES • DES • RC4 • Mode: • CBC • CFB • OFB • CTR • GCM • CCM • ECB • SHA1 • SHA2 • SHA224 • SHA256 • SHA384 • SHA512 • MD5 • SHA3
  • 49. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 49 IBM and Java  Java is critically important to IBM – Fundamental infrastructure for IBM’s software portfolio – WebSphere, Lotus, Tivoli, Rational, Information Management (IM)  IBM is investing strategically for Java in virtual machines – As of Java 5.0, single JVM support • JME, JSE, JEE – New technology base (J9/TR Compiler) on which to deliver improved performance, reliability, serviceability  IBM also invests in, and supports public innovation in Java – OpenJDK, Eclipse, Apache (XML, Aries, Derby, Geronimo, Harmony, Hadoop …) – Broad participation in relevant open standards (JCP, OSGi)
  • 50. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 50 JVM Architectural Overview Debugger Profilers Java Application Code JVMTI JSE7 Classes JSE8 Classe s Harmony Classes User Natives GC / JIT / Class Lib. Natives Java Native Interface (JNI) Core VM (Interpreter, Verifier, Stack Walker) Trace & Dump Engines Port Library (Files, Sockets, Memory) Thread Library AIX Linux Windows z/OS PPC-32 PPC-64 x86-32 x86-64 PPC-32 PPC-64 zArch-31 zArch-64 x86-32 x86-64 zArch-31 zArch-64 Operating Systems Java Runtime Environment e.g. J9 R28 Java API e.g. Java7/Java8 User Code = User Code = Java Platform API = VM-aware = Core VM
  • 51. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Key Differences between Oracle and IBM Java IBM and Oracle use the same reference implementation of Java Class Libraries (e.g. OpenJDK) Key differences to be aware of: 1. Security: Standards do not impose strong separation of interest 2. ORB: OMG CORBA standard rules 3. XML: Xerces/Xalan used by both vendors as of Java5, although different levels may be used. IBM uses the J9/TR runtime, Oracle uses Hotspot –Different JIT/GC/VM tuning and controls –Tooling is distinct (e.g. IBM Health Center) 51
  • 52. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ 52 IBM Java Runtime Environment  IBM’s implementation of Java 5/6/7/8 are built with IBM J9 Virtual Machine and IBM Testarossa JIT Compiler technology • Independent clean-room JVM runtime & JIT compiler  Combines best-of breed from embedded, development and server environments… from a cell-phone to a mainframe! • Lightweight flexible/scalable technology • World class garbage collection – gencon, balanced GC policies • Startup & Footprint - Shared classes, Ahead-of-time (AOT) compilation • 64-bit performance - Compressed references & Large Pages • Deep System z exploitation – z13/zEC12/z196/z10/z9/z990 exploitation • Cost-effective for z - zIIP Ready!  Millions of instances of J9/TR compiler
  • 53. © 2015 IBM Corporation Java on IBM zEC12 Java Road Map 53 Language Updates Java 5.0 • New Language features: • Autoboxing • Enumerated types • Generics • Metadata Java 6.0 • Performance Improvements • Client WebServices Support • Support for dynamic languages • Improve ease of use for SWING • New IO APIs (NIO2) • Java persistence API • JMX 2.x and WS connection for JMX agents • Language Changes Java 7.0 IBM Java Runtimes IBM Java 5.0 (J9 R23) • Improved performance • Generational Garbage Collector • Shared classes support • New J9 Virtual Machine • New Testarossa JIT technology • First Failure Data Capture • Full Speed Debug • Hot Code Replace • Common runtime technology • ME, SE, EE IBM Java 6.0 (J9 R24) • Improvements in • Performance • Serviceability tooling • Class Sharing • XML parser improvements • z10™ Exploitation • DFP exploitation for BigDecimal • Large Pages • New ISA features 5.0 6.0 2005 2009 SE5.0 18platforms SE6.0 20platforms EE 5 WAS 6.1 WAS 7.0 2006 2008 WAS 6.0 200704 EE 6.x **Timelines and deliveries are subject to change. 2010 2011 IBM Java 6.0.1/Java 7 (J9 R26) • Improvements in • Performance • GC Technology • z196™ Exploitation • OOO Pipeline • 70+ New Instructions • JZOS/Security Enhancements WAS 8.5 2012 2013 2014 7.0 • Language improvements • Closures for simplified fork/join Java 8.0** SE601/7.x >=20platforms IBM Java 7 (J9 R26 SR3) • Improvements in • Performance • zEC12™ Exploitation • Transactional Execution • Flash 1Meg pageable LPs • 2G large pages • Hints/traps IBM Java 7R1 (J9 R27) • Improvements in • Performance • RAS • Monitoring • zEC12™ Exploitation • zEDC for zip acceleration • SMC-R integration • Transactional Execution • Runtime instrumentation • Hints/traps • Data Access Accelerator SE601/7.x >=20platforms
  • 54. © 2015 IBM Corporation Java on IBM zEC12 54 zEC12 – More Hardware for Java Continued aggressive investment in Java on Z Significant set of new hardware features tailored and co-designed with Java Hardware Transaction Memory (HTM) Better concurrency for multi-threaded applications eg. ~2X improvement to juc.ConcurrentLinkedQueue Run-time Instrumentation (RI) Innovation new h/w facility designed for managed runtimes Enables new expanse of JRE optimizations 2GB page frames Improved performance targeting 64-bit heaps Pageable 1M large pages with Flash Express Better versatility of managing memory Shared-Memory-Communication RDMA over Converged Ethernet zEnterprise Data Compression accelerator gzip accelerator New software hints/directives/traps Branch preload improves branch prediction Reduce overhead of implicit bounds/null checks New 5.5 GHz 6-Core Processor Chip Large caches to optimize data serving Second generation OOO design Up-to 60% improvement in throughput amongst Java workloads measured with zEC12 and IBM Java 7 Engineered Together—IBM Java and zEC12 Boost Workload Performance http://www.ibmsystemsmag.com/mainframe/trends/whatsnew/java_compiler/
  • 55. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Linux on System z and IBM Java 7 on zEC12: 64-Bit Java Multi-threaded Benchmark on 16-Way 5555 (Controlled measurement environment, results may vary) ~12x aggregate hardware and software improvement from IBM Java5SR4 on z9 to IBM Java7 on zEC12 • LP=Large Pages for Java heap CR= Java Compressed References • IBM Java7SR3 using -Xaggressive + 1Meg large pages Linux on System z - Multi-Threaded 64 bit Java Workload 16-Way ~12x Improvement in Hardware and Software 0 20 40 60 80 100 120 140 160 1 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 Threads NormalizedThroughput zEC12 SDK 7 SR3 Aggressive + LP Code Cache zEC12 SDK 7 SR1 z196 SDK 7 SR1 z196 SDK 6 SR9 z10 SDK 6 SR4 z9 SDK 5 SR4 NO (CR or Heap LP)
  • 56. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java 8 -- Lambdas New syntax to allows for concise and expressive code snippets - can be thought of as ‘anonymous methods’ http://www.dzone.com/links/presentation_languagelibraryvm_coevolution_in_jav.html
  • 57. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java 8 – Lambdas for Streaming Operations Lambdas can be pipelined to enable data stream operations – Intermediate operations on streams produce new streams – Terminal operations produce results 57 Enables exploitation of parallelism and supports multi-core programming int totalWeight = widgets.stream() .filter(w->w.getColor() == RED) .matToInt(w->w.getWeight()) .SUM();
  • 58. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java 8 Summary of Crypto Acceleration • Certificate (Public key) • RSA • ECDSA • Forward Security (Diffie-Hellman): • DHE • ECDHE • ECC Named curves (NIST, Brainpool, Koblitz…) • NIST P192 • NIST P224 • NIST P256 • Many more... • Cipher: • AES • 3DES • DES • RC4 • Mode: • CBC • CFB • OFB • CTR • GCM • CCM • ECB • SHA1 • SHA2 • SHA224 • SHA256 • SHA384 • SHA512 • MD5 • SHA3
  • 59. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ Java 8 - JMX Beans for Precise CPU Monitoring New JMX Beans for reporting CPU usage categorized by: 1. JVM System threads (JIT, GC, etc) 2. Application threads 3. Monitoring threads (to be able to excl. monitoring overhead) Intended use-cases – Reporting transaction cpu usage – Identifying "expensive" transactions – Reporting JVM overhead over specific intervals – Foundation for future work on tracking idle behaviour New classes 1. com.ibm.lang.management.JVMCpuMonitorMXBean (Bean to request Data) • getThreadsCpuUsage() • setThreadCategory()/getThreadCategory() – com.ibm.lang.management.JVMCpuMonitorInfo (Object with Data) Overhead may be visible on some platforms Option to trade-off more precise GC-time reporting vs. reduced overhead -XX:+ReduceCPUMonitorOverhead(default.)/-XX:-ReduceCPUMonitorOverhead (z/OS cannot enable more precise GC-time reporting today) 59
  • 60. © 2016 IBM Corporation Java on IBM z13 @JavaOnZ JZOS – SMF Logging SMF Logging to Record type 121 subtype 1 JZOS_JVM_SMF_LOGGING environment variable to enable Captures JVM runtime information – Uptime, number of live threads and GC statistics Record is logged during JVM shutdown FUTURE function being considered** SMF records to include breakdown of Application, JVM system, GC and JIT CPU-time Information available on a per-thread basis Captured periodically at user-defined intervals 60 **Timelines and deliveries are subject to change.

Notes de l'éditeur

  1. IBM continues to invest aggressively in its Java on System z technology with on-going deep vertical integration of Java with the z eco-system. As such, the evolution of Java on Z shows consistent delivery of deep co-design and exploitation of next generation hardware function, industry leading runtime support with IBM J9 Virtual Machine, and evolution of the Java language demonstration outstanding and impressive release-to-release improvements in perfomance, consumability and function.
  2. Language: Java8 brings over 34 new significant language features to the Java. The two that are likely the most notable are Lamdbas for streams and parallelism Virtual extension functions for enabling transparent extension to existing libraries z13: New 5.0 GHz 8-Core Processor Chip – best single thread perf out there 480Mb L4 cache to optimize for data serving – best cache/thread ratio out there Simultaneous Multi Threading (SMT) – two h/w threads/core allow independent execution of two software threads per-core. Provides more efficient use of core resources. Vector Processing – Single Instruction Multiple Data (SIMD) to exploit data parallelism (array processing, strings, loops) Crypto: Public key function for Elliptic Curve Cryptography (ECC) accelerated by up-to 4X. CP Assist for Cryptographic Function (CPACF) is hardware co-processor technology on the z chips. The IBM Java Crypto Engine (IBMJCE) in Java 8 leverages CPACF transparently to accelerate a significant set of crypto function. This includes: Block cipher algorithms: AES/DES/3DES Block cipher modes: CBC/CFB/ECB/OFB Secure hashing: SHA1/SHA2 JMX – Java Management Extensions A new set of probes (Beans) have been added to enable precise CPU breakdown across JVM System threads (JIT, GC etc) JVM application threads JVM monitoring threads
  3. The importance of Java on System z Java is a critically important language for System z. For data serving and transaction serving, which are traditional strengths of the z platform, Java has become foundational. For instance, WebSphere applications, written in Java and running on System z, provides a key advantage through co-location. The latter results in better response-times, greater throughput and reduced system complexity when driving CICS, IMS and DB2 transactions. Beyond this, as clients seek to extend and modernize their business logic, Java has become a language of choice for CICS, IMS and DB2 transactions. Java is also critical for enabling next generation workloads in cloud, analytics, mobile and security (CAMS). Cloud and mobile applications can access data and transaction on z/OS using z/OS Connect (http://www-01.ibm.com/support/docview.wss?uid=tss1wp102439), and other WebSphere solutions – which are all inherently Java-based. IBM Operation Decision Manager (ODM) is written in Java. ODM is a platform for managing and executing business rules and business events to help make decisions faster, improve responsiveness, minimize risks and seize opportunities. The IBM MobileFirst Platform Developer Edition, formerly known as IBM Worklight Developer Edition, provides developers with the tools to quickly deploy mobile solutions using Java. System z Java also provides a full set of cryptographic functions to implement secure solutions. A key strength of Java applications is the ability to immediately benefit from the latest hardware performance improvements using the Just In-Time JIT compiler in the latest Java SDK release. Highlights for IBM Java 8 on IBM z13 IBM z13 and IBM Java 8 are taking Java performance to new heights! The combined benefits of IBM Java 8 and z13 features – including Single Instruction Multiple Data (SIMD) vector engine, Symmetric Multi-Threading (SMT) and improved CP Assist for Cryptographic Function (CPACF) -- are providing up-to 2X improvement in throughput-per-core for security-enabled applications and up-to 50% improvement for other generic applications. Java 8 exploitation of System z CPACF is the default for System z9 and above on both z/OS and Linux on System z. The Java 8 SIMD exploitation requires z13 and z/OS 2.1 with PTFs. z13 zIIP SMT enablement also requires z/OS 2.1 with PTFs.
  4. Java Store Inventory and Point of Sale Application The Java Store Inventory and Point of Sale Application is a stand-alone Java application based on the IT infrastructure used by a real-world retail company. The benchmark combines mixed point-of-sale, online purchases and data-mining, and exercises many new language features as well as compression and cryptographic functions. This figure shows the z/OS aggregate improvement in throughput from IBM Java 8 exploitation of cryptographic functions (CPACF), z13 SIMD, and z13 SMT for zIIPs. Some highlights of the measurements show 1) a 40% improvement for zEC12 Java 8 versus Java 7 SR4, and 2) an additional 35% improvement for Java 8 z13 SMT versus Java 8 zEC12 Data presumes 3 other CPs are already configured for other workloads
  5. References 9 million Java developers http://www.oracle.com/technetwork/articles/java/afterglow2013-2030343.html 80% corporate data on mainframe - http://mainframe50.tumblr.com/post/80674751403/80-of-the-worlds-corporate-data-resides-or#.VCFwFmP5xEM DATEV performance figures – see case study http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?subtype=AB&amp;infotype=PM&amp;appname=SWGE_ZS_SW_USEN&amp;htmlfid=ZSC03135USEN&amp;attachment=ZSC03135USEN.PDF#loaded Quotes http://www.techrepublic.com/article/the-mainframe-evolves-into-a-new-beast-in-the-cloud-era/ http://www.cmg.org/publications/measureit/2011-2/mit78/ (links to http://www.cmg.org/wp-content/uploads/2011/04/m_78_5.pdf) http://enterprisesystemsmedia.com/article/three-reasons-the-mainframe-is-in-trouble-not-so-fast#&amp;ts=undefined
  6. Business Rules Processing Business Rules Processing applications feature easy-to-use platform for capturing, automating and governing frequent repeatable operational business rules. The building blocks of decision services are the business rules that drive and support your decision making approach and the analytics that ensure that decision-making is accurate.   Business rules processing with Java 8 takes advantage of the z13 SIMD vector instructions and SMT for zIIPs to achieve significant improvements in throughput-per-core. Some highlights of the measurements show 1) a 60% improvement for z13 no SMT Java 8 versus zEC12 Java 7 SR4, and 2) an additional 31% improvement from z13 SMT zIIPs with Java 8. Data presumes 3 other CPs are already configured for other workloads
  7. Business Rules Processing Business Rules Processing applications feature easy-to-use platform for capturing, automating and governing frequent repeatable operational business rules. The building blocks of decision services are the business rules that drive and support your decision making approach and the analytics that ensure that decision-making is accurate.   Business rules processing with Java 8 takes advantage of SMT for IFLs to achieve significant improvements in throughput-per-core. Some highlights of the measurements show 1) a 40% improvement for z13 no SMT Java 8 versus zEC12 Java 7 SR4, and 2) an additional 42% improvement from z13 SMT IFLs with Java 8.
  8. A 15.8% improvement switching from Java 7.1 SR3 to Java 8, using CICS V5.3 GM candidate build, comprising Liberty 8.5.5.7 with z/OS Connect 1.2.
  9. This graph shows the improvement in JMP performance for z13 over zEC12 over z196. The Java component of the test is minimal, so the improvement is really a measure of the JMP region overhead and represents an expected lower bound on a real-world scenario where the Java work in the tran would typically be more representative.
  10. This graph shows the improvement in JMP performance for z13 over zEC12 over z196. The Java component of the test is minimal, so the improvement is really a measure of the JMP region overhead and represents an expected lower bound on a real-world scenario where the Java work in the tran would typically be more representative.
  11. Extended zAAP support also added for type 2 connectivity across the z platform
  12. Java Store Inventory and Point of Sale Application The Java Store Inventory and Point of Sale Application is a stand-alone Java application based on the IT infrastructure used by a real-world retail company. The benchmark combines mixed point-of-sale, online purchases and data-mining, and exercises many new language features as well as compression and cryptographic functions. This figure shows the aggregate improvement in throughput from IBM Java 8 exploitation of cryptographic functions (CPACF), and z13 SMT for zIIPs. Some z/VM Linux on z highlights of the measurements show 1) a 60% improvement for z13 Java 8 versus Java 7 SR4, and 2) an additional 30% improvement for Java 8 z13 SMT versus Java 8 zEC12
  13. Secure Application Serving z/OS Websphere Application Server (WAS) 8.5.5.5 with Secure Socket Layers (SSL) will exploit the new Java 8 Clear Key CPACF and SIMD vector instructions for string manipulation. This graph shows improvements when using Java 8 CPACF exploitation on both zEC12 and z13. This graph also shows the Java 8 exploitation of z13 SIMD and other new z13 machine instructions. The bar on the far right shows the improvement gained from enabling SMT-2 on the specialty zIIP processing units. Although the measurements were obtained on z/OS 2.1 on z13, SSL will also exploit clear key CPACF by default with Java 8 on System z9 and higher. Some highlights of the measurements show a 50% improvement for zEC12 Java 8 versus Java 7 SR4. more than half of which came from cryptographic functions exploiting CPACF System z hardware instructions, and an additional 75% improvement for Java 8 on z13 SMT versus Java 8 zEC12 Data presumes 1 other CP is already configured for other workloads
  14. Secure Application Serving z/VM Linux on z Websphere Application Server (WAS) 8.5.5.5 with Secure Socket Layers (SSL) will exploit the new Java 8 Clear Key CPACF. This graph shows improvements when using Java 8 CPACF exploitation on both zEC12 and z13. This graph also shows the Java 8 exploitation new z13 machine instructions. The bar on the far right shows the improvement gained from enabling SMT-2 on the z/VM IFL processing units. Although the measurements below were obtained on z13, SSL will also exploit clear key CPACF by default with Java 8 on System z9 and higher. Some highlights of the measurements show a 40% improvement for zEC12 Java 8 versus Java 7 SR4. more than half of which came from cryptographic functions exploiting CPACF System z hardware instructions an additional 85% improvement for Java 8 on z13 SMT versus Java 8 zEC12
  15. Simultaneous Multi-threading (SMT) is available on IFLs on z13. The graph shows the relative improvements with SMT-1 and SMT-2 on WAS V8.5.5.7 Liberty Profile with IBM Java 8. The results shows up to 1.5x performance improvements with SMT-2 up through 8 IFLs.
  16. Scala based map reduce operations on Spark provide can provide up to 3x better performance on LoZ under z/VM on a z13 versus Linux on x86 Haswell. Can assume process of colocation can be similar to other SQL open source databases
  17. Analytics oper decision mgmt
  18. Analytics oper decision mgmt
  19. CPU-Intensive Benchmark The CPU-Intensive benchmark suite includes a range applications that exercise core Java functions such as compression, cryptography, scientific floating point computing, serialization, graphics and XML processing. The benchmark is by-design CPU-intensive, and hence, reflects CPU and cache/memory performance. Key observations of the CPU-Intensive suite are 1) A 61% composite improvement from IBM Java 8 and z13 was observed   2) Some Java applications have more significant improvements than others 3) The cryptography suite observed a 4x improvement, a reflection of IBM Java 8 leveraging CPACF to accelerate the default Java Cryptography Engine 4) With the exception of MP3 Library, all other suites observed a 30% or better improvement from IBM Java8 and z13
  20. Start at the bottom of the picture: Thread and Port Libraries are the secret to portability and consistency. Note the hard API boundaries between Core VM and pluggable components: secret to customization Application code sits atop portable Java Platform API (validated by compliance suites) Class Library agnostic: -Xj9 in 1.4.2 using Java 5 JVM.
  21. IBM continues to invest aggressively in its Java on System z technology with on-going deep vertical integration of Java with the z eco-system. As such, the evolution of Java on Z shows consistent delivery of deep co-design and exploitation of next generation hardware function, industry leading runtime support with IBM J9 Virtual Machine, and evolution of the Java language demonstration outstanding and impressive release-to-release improvements in perfomance, consumability and function.
  22. * Beyond better caches and core technology for Java, we also have lots of innovative new architecture in zEC12. This includes Hardware Transaction Memory: IBM’s zEnterprise EC12 is the first general-purpose IBM server to incorporate transactional memory technology, first used commercially to help make the IBM Blue Gene/Q-based “Sequoia” system at Lawrence Livermore National Lab the fastest supercomputer in the world. In zEC12, IBM adapted this technology to enable software to better support concurrent operations that use a shared set of data such as financial institutions processing transactions against the same set of accounts. Runtime Instrumentation: An innovative new facility used by the JVM to gather trace execution and heavy event data (d-cache-miss, branch miss etc) at runtime. The information can be used by the JVM to adapt to the behaviour of the application more efficiently. 2 Gig Pages: There has been a consistent noted trend for growth in Java application heap sizes. Today, it is not un-common to see heap sizes that are greater than 16G, with some customers using heaps that are on the order of 100G. 2G pages were added to help address this noted trend in growing storage. 1Meg Pageable Large Pages Using Flash Express The JVM will exploit pageable large pages for the JIT code-cache and the object heap. The use of 1M pageable large pages for the JIT codecache has been observed to enhance the runtime performance of some Java applications. The use of 1M pageable pages for the object heap provides much of the same runtime performance benefits as non-pageable 1M pages, with the additional benefit of also offering better versatility for managing memory to improve system availability and responsiveness The 1M pageable large page size is available only with the the following minimum requirements: IBM zEnterprise EC12 with the Flash Express feature (#0402) z/OS V1.13 with PTFs and the z/OS V1.13 RSM Enablement Offering web deliverable installed. The web deliverable is planned to be available at http://www.ibm.com/systems/z/os/zos/downloads/ Hints/directives Enable more efficient use of the core resources for branch prediction and data/instruction cache hierarchy by the JVM Traps Reduce the overhead incurred by implicit checks (NULL and array-bounds) that are required by the Java language Statement of Direction IBM has made a statement of direction regarding exploitation of these features by the JVM IBM plans for future maintenance roll-ups of IBM 31-bit and 64-bit SDK7 for z/OS Java(TM) Technology Edition, Version 7 (5655-W43 and 5655-W44) (IBM SDK7 for z/OS Java), to provide exploitation of new IBM zEnterprise EC12 features, including: Flash Express and pageable large pages, Transactional Execution Facility, Miscellaneous-Instruction-Extension Facility, and 2 GB pages. In addition, IBM SDK7 for z/OS Java is available for use by IBM middleware products running Java, such as IBM IMS 12 (5635-A03), IBM DB2 10 for z/OS (5605-DB2), and the Liberty profile of IBM WebSphere Application Server for z/OS v8.5 (5655-W65); and is planned for use by a future release of CICS Transaction Server for z/OS.
  23. A multi-threaded benchmark that performs business logic for an online transaction processing framework. The benchmark incrementally increases the number of worker threads, hence increasing the system transaction processing throughput, up until the number of worker threads out-numbers the number of hardware threads (16-way). zEC12 provides a 45% improvement in throughput to this benchmark Java7SR3 provides an additional 13% improvement to this benchmark when exploiting the –Xaggressive and –Xlp options. zEC12 and Java7SR3 provide an impressive 60% aggregate improvement to the Multi-threaded benchmark! Linux on System z does not currently provide support for exploiting Flash Express for 1M paging. Performance improvements provided by Java7SR3 were a result of addition exploitation of fixed pages for backing the JIT code-cache when the –Xlp option is used.