Reads and helps analyze memory heap dumps. This is a postprocessing utility.
Provides heap dumps and other information about JVM memory usage. Suitable for
scripting, though the heap dumps must be used in a postprocessing tool.
Provides visibility into the system properties of the JVM, and allows some system prop-
erties to be set dynamically. Suitable for scripting.
Dumps the stacks of a Java process. Suitable for scripting.
Provides information about GC and class-loading activities. Suitable for scripting.
A GUI tool to monitor a JVM, profile a running application, and analyze JVM heap
dumps (which is a postprocessing activity, though jvisualvm can also take the heap
dump from a live program).
These tools fits into these broad areas:
▪ Basic VM information
▪ Thread information
▪ Class information
▪ Live GC analysis
▪ Heap dump postprocessing
▪ Profiling a JVM
As you likely noticed, there is not a one-to-one mapping here; many tools perform functions
in multiple areas. So rather than exploring each tool individually, we'll take a look at the