JProfiler's memory view section offers dynamically updated views on memory usage and allocations. All views can show live and garbage collected objects.
Class monitor Shows classes and their instances. You can mark current values and show differences.
Allocation monitor Shows a call tree with annotated allocations of selected classes.
Allocation hot spots Shows a list of methods that allocate selected classes. You can mark current values and show differences. The tree of backtraces can be shown for each hot spot.
Memory statistics Shows package statistics of objects and allocations.
In JProfiler's heap walker you can take a snapshot of the heap and drill down to objects of interest by performing selection steps. The heap walker has four views:
Classes Shows all classes and their instances.
Allocations Shows allocation tree and allocation hot spots.
References Shows a graph of references for individual objects and offers a "show path to garbage collector root" functionality. Also offers cumulated views for incoming and outgoing references.
Data Shows instance and class data for individual objects.
JProfiler offers various ways to record the call tree to optimize for performance or detail. The thread or thread group as well as the thread status can be chosen for all views. The CPU view section contains:
Invocation tree Shows a cumulated top-down tree of all recorded call sequences in the JVM.
Hot spots Shows the list of the most time consuming methods. The tree of backtraces can be shown for each hot spot.
Method graph Shows a graph of call sequences starting from selected methods.
CPU statistics Shows package, class and method statistics.
For thread profiling, JProfiler offers the following views:
Thread history Shows a timeline with thread activity and thread status.
Thread monitor Shows a list of all live threads with their current activity.
Deadlock detection graph Shows a graph of all deadlocks in the JVM.
Current monitor usage Shows the currently used monitors and their associated threads.
Monitor usage history Shows the history of significant waiting and blocking events.
Monitor usage statistics Shows statistics for monitors grouped by monitors, threads and classes of monitors.
border="0" width="32" height="32"> VM telemetry
To observe the internal state of your JVM, JProfiler offers various telemetry views:
Heap Shows a timeline with a graph of the used heap and the heap size.
Objects Shows a timeline with a graph of live objects and arrays.
Garbage collector Shows a timeline with a graph of garbage collector activity.
Classes Shows a timeline with a graph of loaded classes.
Threads Shows a timeline with a graph of active threads.