Telemetry View Section

   


The telemetry view section shows a number of historic graphs which display cumulated information about the profiled JVM.
  There are several views in this section:
  • Memory

    Shows the maximum heap size and the amount of used and free space in it. This view can be displayed as a line graph or area graph.

    When you profile a Java 1.5+ JVM, the drop down list at the top offers all available memory pools. Please see the article on tuning garbage collection for more information on heap memory pools. In addition, there are several memory pools for non-heap data structures. The drop down list shows all available memory pools in a tree-like structure, so you can display the sum of all heap pools (the default selection) or the sum of all non-heap pools in the graph.

  • Recorded objects
    Shows the total number of objects on the heap, divided into arrays and non-arrays. This view can be displayed as a line graph or area graph. Note that this view only displays recorded objects and is unavailable if no objects have been recorded so far. Objects that have been recorded are tracked even after recording has been stopped.
  • Recorded throughput
    Shows how many objects are garbage collected and created. The plotted values are time rates, so the total numbers in a time interval are given by the area under the respective lines. Note that this view only displays recorded objects and is unavailable if no objects have been recorded so far. Objects that have been recorded are tracked even after recording has been stopped.
  • GC activity
    Shows the garbage collector activity in percent of the elapsed time. This view is only available when profiling with a Java 1.5+ JVM. The combo box at the top allows you to show the activity for specific GC types. Sun JVMs implement a "Copy" and a "MarkSweepCompact" that apply to different object generations.
  • Classes
    Shows the total number of classes loaded by the JVM, divided into CPU-profiled and non-CPU-profiled classes. This view can be displayed as a line graph or area graph.
  • Threads
    Shows the total number of alive threads in the JVM, divided into the different thread states. This view can be displayed as a line graph or area graph.
  • CPU load
    Shows the CPU load of the profiled process in percent of the elapsed time. This view is only available when profiling with a Java 1.5+ JVM.
  The graph type is a persistent view setting separate for each view and is thus also accessible through the VM telemetry view settings dialog. Where possible, switching between line and area graph is done by
  • Choosing View->Graph type->Line graph or View->Graph type->Area graph from JProfiler's main menu.
  • Choosing Line graph or Area graph from the context menu.
  • Choosing Line graph or Area graph in the VM telemetry view settings dialog.

When a view is shown as an area graph, the line which shows the total value is given by the upper bound of the filled area while the single contributions are shown as stacked area segments.

  When you move the mouse across a telemetry view, the time at the position of the mouse cursor and the corresponding value on the vertical axis will be shown in JProfiler's status bar. The current value of each data line is always shown next to the corresponding legend entry.
  The VM telemetry views have two different display modes. The display mode is a persistent view setting and is also accessible through the VM telemetry view settings dialog.
  • fixed time scale
    If you are currently in the "scale to fit window" mode, you can switch to this mode by
    • choosing the scale mode selector button in the lower right corner of the view.
    • choosing View->Scale to fit window from JProfiler's main menu.
    • choosing Scale to fit window from the context menu.
    • checking Scale to fit window in the VM telemetry view settings dialog.

    In this mode, the time scale on the time axis does not change with time and the time axis can be scrolled with the scrollbar on the bottom which appears if the total time span does not fit into the current view size. If the current time is visible, the view is in auto-follow mode where the time axis is scrolled automatically when new data arrives to always show the current time. If you are not in auto-follow mode, because you scrolled back in time, just move the scrollbar to the right end of the time scale to re-enable auto-following.

    You can adjust the scale of the time axis by zooming in or out.  Zooming in increases the level of detail while  zooming out decreases it. You change the zoom level by

    • using the zoom controls in the lower right corner of the view.
    • choosing View->Zoom in and View->Zoom out from JProfiler's main menu.
    • choosing Zoom in and Zoom out from the context menu.

  • scale to fit window
    If you are currently in the "fixed time scale" mode, you can switch to this mode by
    • choosing the scale mode selector button in the lower right corner of the view.
    • choosing View->Continue at fixed scale from JProfiler's main menu.
    • choosing Continue at fixed scale from the context menu.
    • unchecking Scale to fit window in the VM telemetry view settings dialog.

    The time scale on the time axis is adjusted continuously in order to show the total time span in the current size of the view. Zooming is not possible in this mode.

  Horizontal and vertical grid lines of the VM telemetry views can be configured in the VM telemetry view settings dialog.
  Note that you can use a trigger and the "Start recording" and "Stop recording" actions to control VM telemetry recording for offline profiling.