These tools collect and/or analyze data from a single JVM-instance.
HPjmeter
HPjmeter was created by HP to analyze performance data from any standard JVM, though the HP-UX implementation of Java provides more functionality than those from other vendors. The latest revision allows you attache remotely to a running JVM and start and stop measurement on the fly. You can analyze your application for cpu usage, lock contention, excessive exceptions and more. Also new with HPjmeter 3.0 is the ability to set alerts, monitor memory usage dynamically, and interrogate various JVM MBeans for information about the current state of the JVM.
HPjmeter has evolved from a tool focused on performance profiling to an all-encompassing JVM monitoring and management console. Features from HPjtune for analyzing Java heap usage have been migrated into HPjmeter.
One of the more useful features of HPjmeter is its ability to show you the Java method call stack, so troubleshooting unfamiliar programs is made easier.
The current download of HPjmeter (3.0, as of this writing) is packaged as a install package or a single jar file. If you have troubles unpacking and installing the package version, download the jar file and follow the instructions for running the HPjmeter console.
On HP-UX, you should always install from the software depot version because in addition to providing the HPjmeter console, it also installs the infrastructure necessary to allow a remote console to attach to an already running JVM.
HPjtune
HPjtune is a Java Garbage Collection (GC) visualization tool for analyzing garbage collection activity in a Java program. The analysis is carried out off-line or on-line, based on the output of the JVM via the -Xloggc or -Xverbosegc output file. The functionality of HPjtune has largely been migrated into the 3.0 version of HPjmeter, but the standalone version remains available.
HPjtune lets you view this data in the following ways:
- Several predefined graphs which show the utilization of garbage collector resources and the impact of the garbage collector on application performance.
- User-configurable graphs for access to selected garbage collection metrics.
- Separate predefined graphs for garbage collection behavior pertaining to threads.
HPjtune also includes a unique feature which allows you to use the data collected with the
-Xverbosegc option to predict the effect of new garbage collector parameters on future application runs.
Samurai Thread Stack Dump Viewer
If your program uses threads, and are having either performance or hang issues that you suspect are related to lock contention between threads, you may want to check out the tool Samurai.
If you are using SDK 1.3.1 or later, you can also use HPjmeter's lock contention metric to analyse lock contention between threads. This can help you find a contention issue that impacts performance but probably won't be of help in debugging a situation where the JVM hangs due to deadlock.
Quest JProbe
Quest's JProbe Suite is a complete solution Java profiler tool used by thousands of companies around the world. JProbe allows you to easily test your applications without any code changes and pinpoint Java or J2EE performance problems down to the line of code. In addition to the officially supported commercial version, Quest has made available a free version of JProbe for profiling Java applications on Windows and Linux.
ej-technologies JProfiler
JProfiler is an award-winning all-in-one Java profiler. JProfiler's intuitive GUI helps you find performance bottlenecks, pin down memory leaks and resolve threading issues. (Currently only supports HP-UX running on PA-RISC).
JVMPI and JVMTI
With the Java Virtual Machine Profiler Interface introduced in Java 1.4.2, anyone can write a Java profiling tool. A web search for "Java performance tools" will turn up a wealth of open source or freeware tools implemented using JVMPI.
Java 1.5 deprecates JVMPI in favor of the JVM Tool Interface. Java 1.5 also includes an MBean management interface that can be accessed with the included jconsole command. |