Interactive Presentation of Program Traces

The HPCToolkit Performance Tools


Version 2020.08-develop

The Java-based hpctraceviewer interactively presents dynamic behavior of a program.

Table of Contents


Command-line usage:
      hpctraceviewer [options] [hpctoolkit-database]

GUI usage:
      Launch hpctraceviewer and open the Experiment database [hpctoolkit-database].


The Java-based hpctraceviewer interactively presents program traces in a top-down fashion. Since Experiment databases are self-contained, they may be relocated from a cluster for visulization on a laptop or workstation.


An HPCToolkit Experiment database, which is the result of executing hpcprof, hpcprof-mpi or hpcprof-flat.


-h --help
Print help.

-jh, --java-heap
Set the JVM maximum heap size for this execution of hpctraceviewer. The value of size must be in megabytes (M) or gigabytes (G). For example, one can specify a size of 3 gigabytes as either 3076M or 3G.

Detailed Description


hpctraceviewer provides several views:

Trace view

Trace view is divided into two parts: the top part which contains action pane and the information pane, and the main view which displays the traces.

The buttons in the action pane are the following:

The information pane contains some information concerning the range status of the current displayed data.

Depth view

Depthview shows all the call path for a certain time range [t_1,t_2]= {t | t_1 <= t <= t_2} in a specified process rank p. The content of Depth view is always consistent with the position of the cross-hair in Trace view. For instance once the user clicks in process p and time t, while the current depth of call path is d, then the Depth view's content is updated to display all the call path of process p and shows its cross-hair on the time t and the call path depth d.

On the other hand, any user action such as cross-hair and time range selection in Depth view will update the content within Trace view. Similarly, the selection of new call path depth in Call view invokes a new position in Depth view.

In Depth view a user can specify a new cross-hair time and a new time range.

Specifying a new cross-hair time. Selecting a new cross-hair time t can be performed by clicking a pixel within Depth view. This will update the cross-hair in Trace view and the call path in Call view.

Selecting a new time range. Selecting a new time range [t_m,t_n]= {t | t_m <= t <= t_n} is performed by first clicking the position of t_m and drag the cursor to the position of t_n. A new content in Depth view and Trace view is then updated. Note that this action will not update the call path in Call view since it does not change the position of the cross-hair.

Summary view

Summary view presents the proportion of number of calls of time t across the current displayed rank of proces p. Similar to Depth view, the time range in Summary view is always consistent with the time range in Trace view.

Call view

This view lists the call path of process p and time t specified in Trace view and Depth view. This view can show a call path from depth 0 to the maximum depth, and the current depth is shown in the depth editor (located on the top part of the view).

In this view, the user can select the depth dimension by either typing the depth in the depth editor or selecting a procedure in the table of call path.

Mini view

The Mini view shows, relative to the process/time dimensions, the portion of the execution shown by the Trace view. In Mini view, the user can select a new process/time (p_a,t_a),(p_b,t_b) dimensions by clicking the first process/time position (p_a,t_a) and then drag the cursor to the second position (p_b,t_b). The user can also moving the current selected region to another region by clicking the white rectangle and drag it to the new place.


hpctraceviewer provides three main menus:

hpctraceviewer also provides a context menu to save the current image of the view. This context menu is available is three views: trace view, depth view and summary view.

See Also

hpctoolkit(1) .


Version: 2020.08-develop

License and Copyright

© 2002-2020, Rice University.
See README.License.


Rice University's HPCToolkit Research Group
Email: hpctoolkit-forum =at= rice.edu
WWW: http://hpctoolkit.org.