Execution Flow view and table

The Execution Flow view and table both show a representation of the entire program execution. In the view, the threads of the program fit horizontally, and time is scaled so that the entire execution fits vertically.  In the table, the threads are grouped in the first column and time is recorded in successive rows.

Display of view

Here is an example of the Execution Flow view and table:

sets of vertical stripes; method labels at top; controls above that; numbers down the right side; some scattered horizontal lines

Stripes cascade to the right as one method calls another method, whose responding method in turn calls another method, and so on. Stripes are grouped in columns by thread. A thin, black vertical line separates one column from another. The name of each thread appears at the top of its column.

Use the Zoom In tool zoom in to expand the graph.

The Execution Flow view displays the following information:

Stripes piece of orange colored stripe
The stripes indicate methods in threads. The color coding denotes the object's class. The leftmost stripe, indicated GC, is garbage collection.
Time grey chip with a number in it
Time is measured in seconds and it's on the vertical axis, starting at the top. The height of a stripe indicates the time spent executing the method.
Names, arguments, and types black horizontal line with bits of colored stripes hanging down, which are labelled, actionPerformed, addButton, repaint
The top black line indicates that the class, actionPerformed, called the class, addButton, which called the class, repaint.   Lines are black unless the method is a constructor, in which case the line and labels are red.

If the view is open from the monitor object, it shows the execution for all the agents under the monitor. The name of the thread shows the ID of the corresponding process to differentiate between threads of the same name in different processes.

Garbage collection thread

By default, the garbage collection (GC) thread is hidden. It can be made visible by selecting Thread > GC from the Context menu. When visible, the GC thread is displayed in the left most column. The GC thread contains objects collected from all the processes under this monitor. A thin rectangle appears in this column whenever garbage collection for an object occurs. As with other objects and methods in the view, you can click the object for which garbage collection has occurred in order to select it. Large, raised, gray rectangles represent garbage collection phases in the profiling session.

Display of table

Here is an example of the Execution Flow table:

table with 3 columns labelled thread names, instance name, and start time

The same information is available in the table as in the view. The table can be opened by using the Show Execution Table Icon to show invocation table button in the toolbar.

Related concepts
Overview of the Profiling Tool
Profiling resources

Related tasks
Profiling an application
Viewing performance bottlenecks
Viewing invocations and callers of a method
Identifying phases of program execution
Identifying active threads
Identifying resource-intensive methods

Related references
Execution flow view controls