Jinsight Guided Tour
Method Histogram View
Table View, Call Tree View and Navigation

Method Table · Invocation Table · Call Tree

This section takes you through two views showing numeric summaries: the Table View and the Call Tree View .  The Table view shows summaries of execution attributes in tabular form. The Call Tree view summarizes the cumulative time contributions along calling paths from or to a set of method invocations. This section also shows how you can select items in one view and navigate to see more detailed information in another view. We'll first examine a table of methods, then "drill down" to see a table of the individual invocations of one method, and then look at a call tree of one of those invocations.


next: Invocation Table Method Table

Start Jinsight afresh on TwoThreadsTest.
 
To start Jinsight with the TwoThreadsTest trace:
  1. Choose Start => Programs => Jinsight2.0 => Jinsight Visualizer.
  2. Choose Workspace Window => File => Open Trace File....  An "Open trace..." dialog box will appear.
  3. Go to the traces subdirectory.
  4. Double-click on TwoThreadsTest.trc.

We'll load the trace through to the end before viewing it.
 

To load the trace:
  1. Press Workspace Window => Load.
  2. Wait until the end of the trace is reached (i.e., when all trace events have been read, as indicated by the Workspace Window).
  3. Choose Workspace Window => Views => Table => Methods.

A Method Table View appears. Each line of the table represents all the occurrences of the method listed. The columns show attributes of each method in the trace, including the method name, the class name, and the cumulative time spent in the method.

To see which methods spent the most cumulative time, sort the table by that attribute.
 

To sort the table:
  1. Left click on the column heading cumulative time


next: Call Tree Invocation Table

The Method Table above summarizes all of the occurrences of each method. In the next example we use an Invocation Table view to investigate a particular method more closely, and show each of the occurrences of that method.
 

To bring up a table of all invocations of a particular method:
  1. With the above method table sorted by cumulative time, select the println (String) method by right clicking on that line.
  2. Follow the menu selections Drill Down from Selected Items => Table => Invocations, finally clicking on Invocations.

A new table view appears, this time an Invocation Table View of all 22 of the calls to the println(String) method in class java/io/PrintStream. The numeric data in this (or any) table can also be displayed in bar format.
 

To sort tabular data and display it in bar format:
  1. Left click on the column heading cumulative time
  2. Click on the menu bar Columns => Display Bars
  3. Click on the menu bar Rows => Compress Rows to display more rows in the window.


next: bottom of page Call Tree

The topmost row in the Invocation Table View above shows that the first invocation of println(String) is much more expensive than the others. We can learn more about that particular invocation by displaying a Call Tree View for that invocation. The Call Tree view will summarize in an outline format the cumulative time contributions of the various calls made from that particular println(String) invocation.
 

To show a Call Tree for a particular method invocation:
  1. With the above invocation table sorted by cumulative time, select the first println (String) invocation by right clicking on the top entry.
  2. Follow the menu selections Drill Down from Selected Items => Call Tree.

A new view appears, this time a Call Tree View showing the outline of calls made by this particular invocation of println(String). The time contributions of each call from println(String) are shown.
 

To expand the call tree for any particular call:
  1. Click on the plus symbol to the left of the call. This expands the call into its subcomponent calls.

The calls are colored according to the class to which the method belongs. The time contributions of each call from println(String) are shown in numeric and percentage terms. The percentages shown are all measured in terms of the "root" of the call tree, i.e. relative to the println(String) call. Alternatively, the percentages can be measured relative to the next higher node on the tree.

With the Tree menu bar item, you can experiment with manipulating the display by tree depth, and by tree node grouping and sort order. The tree can even be "inverted" to show the time contributions of callers to println(String).


Method Histogram View
Jinsight Home