Component documentationSAP JVM

 

SAP's implementation of a Java Virtual Machine is called SAP JVM. SAP JVM is a certified Java SE 5 Virtual Machine (VM) and Java Development Kit (JDK), based on the Sun HotSpot technology and enhanced with several supportability features. It is built and supported by SAP and is available for all processor architectures and operating systems supported by SAP NetWeaver. It therefore provides a consistent configuration and behavior of essential VM functions.

The SAP JVM aims to be a stable and high performance base for Java application servers, while supporting software developers and system administrators with useful features.

Integration

The SAP JVM is derived from Sun’s HotSpot VM and JDK implementation. Therefore it contains most of the features and functionality covered by Sun’s JDK. However, the SAP JVM is only targeting server-side applications. Certain features related to client environments are intentionally omitted or are not supported for general use. On the other hand, supportability and monitoring enhancements especially designed for server environments are provided in addition to Sun’s original implementation. Customer support is provided directly by SAP for the full maintenance period of SAP applications utilizing the SAP JVM.

Features

The SAP JVM is a standard compliant, certified JDK, supplemented by additional supportability and developer features and extensive monitoring and tracing information. All these features are designed as interactive, on-demand facilities of the Java VM with minimal performance impact. They can be switched on and off without a restart of the VM (or the application server utilizing the VM).

Platforms

Most vendor JDKs are only available for a small range of platforms (operating system & CPU architecture combinations). Writing truly platform independent code therefore often means handling of specific issues of different vendor JDKs on different platforms. This includes different configuration options due to a different VM architecture, sometimes fragile checks for VM or class library capabilities as well as workarounds for specific bugs or missing features, resulting in a multiplication of testing efforts.

The SAP JVM offers uniform configuration settings, the same set of VM extensions, a similar set of analysis tools as well as the same class library on all supported 14 platforms.

Beside the 6 platforms already supported by Sun’s JDK, the SAP JVM is available on 8 additional platforms including 4 additional CPU architectures. These are set in emphasis in the following table.

Supported platforms

Operating System

Architecture

Windows

x86, x86–64, IA–64

Solaris

x86–64, SPARC

Linux

x86, x86–64, IA–64, PowerPC, System z (formerly Z-Series)

HP-UX

PA-RISC, IA–64

i5/OS

PowerPC

AIX

PowerPC

Supportability & Developer Features
Profiling

The SAP JVM offers features that ease the development and support of complex Java applications. An integrated Java profiler back end for performance and memory analyses is included that complements the features of existing standard Java profiling tools. Profiling can be enabled on-demand without VM configuration changes and works reliable even for very large Java applications.

Extended Information

Critical Java exceptions (such as ClassCastException, NoClassDefFoundError or OutOfMemoryError) provide additional hints and further details to better understand the reason of the exception.

Thread dumps not only contain a Java execution stack trace, but also user names (provided by the SAP NetWeaver Application Server Java), information about monitors/locks, consumed CPU & memory resources, I/O activities and a description of communication partners (in case of network communication).

Debugging on Demand

With SAP JVM’s debugging on demand, Java developers can turn on (and off) Java debugging on the fly — there is no need to start the SAP JVM (or the application server on top of it) in a special mode. Java debugging in the SAP JVM can be switched on and off with the SAP NetWeaver Developer Studio or the monitoring and management tools provided with the SAP NetWeaver Application Server Java. There is no performance impact by this feature if debugging is turned off. The SAP JVM JDK is delivered with full source code providing debugging information, making Java debugging even more convenient.

Extensive Monitoring and Tracing Information

The SAP JVM provides comprehensive statistics about threads, memory consumptions, garbage collections and I/O activities. This information is visualized in the monitoring and management tools provided with the SAP NetWeaver Application Server Java. For solving issues with SAP JVM, several traces may be enabled on demand. They provide additional information and insight into integral VM parts like the class loading system, the garbage collection algorithms and I/O.

More Information

The documentation covers the following topics:

Section

Content

Architecture of the SAP JVM

Basic structure of the SAP JVM, standard and SAP-added components and tools

Administrating SAP JVM

Administrative tasks concerning SAP JVM:

  • Download and installation the newest SAP JVM

  • Initial configuration of memory layout and security-relevant settings

  • Monitoring the Garbage Collection, monitoring and administration tools

Developing with SAP JVM

Debugging, profiling, tracing, tools and commands, troubleshooting

Reference

All standard and non-standard options of SAP JVM

Was this page helpful to you?