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

(excerpt below from http://java.sun.com/j2se/1.3/docs/tooldocs/solaris/java.html#options)
Set the maximum native stack size, in bytes, for any thread. Each Java™ thread has
two stacks: one for Java™ code and one for C code. This option sets the maximum stack
size that can be used by C code in a thread. Every thread spawned during the execution
of the program passed to java will have the number you specify in this option as its C
stack size. This flag is appropriate for programs that have small thread stack size
requirements and/or create several thousand threads, with the potential for running
out of virtual memory. Append the letter k or K to indicate kbytes, and m or M for
megabytes. <size> must be > 1000 bytes.
-Xss512k (Java™ 1.3, 1.4, and 5.0 32-bit mode)
Defaults:
-Xss1m (Java™ 1.4 and 5.0 64-bit mode)
NOTE: The default stack size for 1.4 and 5.0 64-bit mode JVM - created threads is
1MB. On PA-RISC 32 and 64-bit systems, the default stack size is 64 KB. Therefore, if
you are using C language main programs that attach with JNI, you will want to adjust
the stack size to avoid overflows.
-Xusealtsigs (replaces -XX:+UseSIGUSR2 beginning with SDK 1.3.1.13, 1.4.1
and 1.4.2)
Instructs the JVM to avoid using SIGUSR1 and SIGUSR2 for internal operations (like
Thread.interrupt() calls). In SDK 1.4.1 and later, by default the JVM uses both
SIGUSR1 and SIGUSR2. In SDK 1.3.1.13 only SIGUSR1 is used. If -Xusealtsigs is
used, then two signals halfway between SIGRTMIN and SIGRTMAX will be chosen
instead.
-Xverbosegc<options>
The -Xverbosegc option prints out detailed information about the spaces within the
Java™ Heap before and after garbage collection.
Beginning with 1.3.1.14 and 1.4.2.05, the process id will be automatically appended to
the verbosegc filename you specify. This helps you to associate a verbosegc output
with the corresponding Java™ process, especially in cases where an application executes
several Java™ processes.
The syntax of the option is:
-Xverbosegc[:help]|[0|1][:file=[stdout|stderr|<filename>]]
• For Java™ 1.2 and 1.3 -Xverbosegc:help detailed explanation
• For Java™ 1.4.0, -Xverbosegc:help detailed explanation
• For Java™ 1.4.1 and 1.4.2, -Xverbosegc:help detailed explanation
• For Java™ 5.0, -Xverbosegc:help detailed explanation
20 HotSpot Technology Tools and Commands