HP-UX Programmer's Guide for Java 2
Table Of Contents
- Table of Contents
- 1 Introduction
- 2 HotSpot Technology Tools and Commands
- 3 Configuration for Java™ Support
- 4 Performance and Tuning
- 5 Measuring System Performance
- 6 Using Threads
- 7 Using Signals
- 8 Using Java™ 2 JNI on HP-UX
- 9 Expanding Memory
- Determine your requirements
- Memory layout under HP-UX 11.0 (PA-RISC only)
- Additional memory available under HP-UX 11i (PA-RISC only)
- Allocating physical memory and swap in the Java™ heap
- Useful key command-line options for allocating memory
- Application-dependent considerations using large heap size HP-UX 11i PA-RISC
- Expanding heap size in native applications on PA-RISC HP-UX 11.11 and later releases
- Expanding heap size in native applications on Integrity HP-UX 11.23 and later releases
- Expanding heap size in HP-UX PA-RISC
- Expanding heap size in HP-UX Integrity
- 10 Diagnosing Memory Leaks
- A JDK/JRE 6.0.n and 7.0.n Usage Notes
- Using Java 2 JNI on HP-UX
- Garbage collection
- Asian TrueType fonts and Asian locales
- Date/Time methods defaults
- Profiling
- Compatibility with previous releases
- Java Cryptography Extension (JCE) policy files
- Configuring the Java Runtime Plug-In
- CLASSPATH environment variable
- Java Web Start technology usage
- Upgrading from a previous Java Web Start version
- IPv6 support
- Allocation Site Statistics and Zero Preparation -Xverbosegc
- JDK 6.0.04 flags
- GC log-rotation support
- NUMA collector enhancements
- ThreadDumpPath support
- Garbage-First garbage collector (-XX:+UseG1GC)
- jmap, jinfo, and jstack tools included in JDK 6.0.03
- Additional Java Web Start documentation
- B JDK/JRE 5.0.n Usage Notes
- Using Java 2 JNI on HP-UX
- Garbage collectors: Parallel and Concurrent Mark Sweep
- Allocating physical memory and swap in the Java heap
- Asian TrueType fonts and Asian locales
- Date/Time methods defaults
- Profiling
- Closing a socket (PA-RISC only)
- Compatibility with previous releases
- Java Cryptography Extension (JCE) policy files
- Allocation Site Statistics and Zero Preparation -Xverbosegc
- IPv6 support on Java 5.0
- GC log-rotation support in 5.0
- ThreadDumpPath support in 5.0
- Dynamically loaded libraries in 5.0
- Performance improvement for String.intern()
- Configuring the Java Runtime Plug-In
- CLASSPATH environment variable
- Java Web Start technology usage
- C SDK/RTE 1.4.2.n Usage Notes
- Removing support for unwanted architectures in the JRE
- Support for dynamic thread local storage (TLS)
- Signal Chaining functionality
- Using Java 2 JNI on HP-UX
- HotSpot JVM options
- Garbage collectors: Parallel and Concurrent mark sweep
- Allocating physical memory and swap in the Java heap
- Asian TrueType fonts and Asian locales
- Date/Time methods defaults
- Profiling
- Closing a socket when accept or read is pending (PA-RISC) - new patch information!
- Compatibility with previous releases
- Runtime Plug-In usage and configuration
- GC log-rotation support
- ThreadDumpPath support
- D Additional Resources
- Index

For documentation on the new garbage collectors, refer to Tuning Garbage Collection
with the 1.4.2 Java™ Virtual Machine at http://java.sun.com/docs/hotspot/gc1.4.2/
index.html.
-XX:+AggressiveHeap
(excerpt from http://java.sun.com/docs/hotspot/ism.html)
This option instructs the JVM to push memory use to the limit. It sets the overall heap
to around 3850MB, the memory management policy defers collection as long as possible,
and (beginning with J2SE 1.3.1.05) some GC activity is done in parallel. Because this
option sets heap size, do not use the -Xms or -Xmx options in conjunction with
-XX:+AggressiveHeap. Doing so will cause the options to override each other's
settings for heap size.
Because the -XX:+AggressiveHeap option has specific system requirements for
correct operation and may require privileged access to system configuration parameters,
it should be used with caution. We have found it to be useful for certain applications
that create a lot of short lived objects.
-XX:+AllowUserSignalHandlers
Instructs the HotSpot JVM not to complain if the native code libraries install signal
handlers. This only matters if the handlers were installed when the VM is booting.
-XX:CompileCommandFile=<list of .hotspot_compiler files separated
by ":"> (version 1.3.1.10, 1.4.1.06, 1.4.2.00 and later)
Specifies one or more .hotspot_compiler files that you do not want to be compiled
by the JVM. Specifying this option overrides the default behavior of the JVM which is
to scan the libjvm.sl directory or the current directory for a .hotspot_compiler
file.
-XX:+DisableExplicitGC
Disable calls to System.gc(), JVM still performs garbage collection when necessary.
-XX:+ForceMmapReserved
Use this option to reserve the space for all large memory regions used by the JVM. This
includes the Java™ Heap, which is an mmap'ed space. Starting with HP-UX 11.11, the
default behavior is that the memory regions be reserved lazily. Most large server-side
applications will use all of the space, so improved performance can be obtained by
reserving the space at program initialization.
-XX:+HeapDump
The -XX:+HeapDump option can be used to observe memory allocation in a running
Java™ application by taking snapshots of the heap over time. Using the
_JAVA_HEAPDUMP=1 environment variable allows memory snapshots to be taken
without modifying the java command line.
The HeapDump functionality is available starting with SDK 1.4.2.10, JDK 1.5.0.03, and
JDK 6.0.
Standard and non-standard options 21