Skip to main content

Measurement User Interface

Contents List


User Interface 

The User Interface is divided in 3 areas:

  • Ribbon bar
  • View area
  • Status bar

The ribbon bar is subdivided into groups of controls dedicated to a specific task - ribbon groups. The View Ribbon Group for example allows configuring the display of, opening of, and switching between views.

drawing-4-1676513010.png

Analyzer allows Performance Logs to be viewed from different vantage points (views). Each view abstracts from the total amount of data and information to allow the user to easier concentrate on and find the information he searches.

The following views are supported and described in the subsequent sections:

  • Performance Dashboard View: An overview of key performance indicators
  • Chart View: A view of the trajectories of all value recordings
  • Time Bars View: A chronological as well as hierarchical view of all recordings
  • Grid Views: Views in table form
    > Flat View: A flat view on all recordings
    > Hierarchical View: A hierarchical (nested) view on all recordings
  • Treemap View: A nested view of the timing recorders Access to opening and switching between views, as well as configuration of views is provided by the View Ribbon Group.
drawing-4-1676513032.png

Back to the menu



Application Menu 

The application menu holds commands for opening and closing a performance log, as well as exporting performance log data.

drawing-5-1708678940.png

Back to the menu


Configuration 

The display of performance logs can be configured using the Performance Log Configuration dialog. The dialog can be opened from the "View" Ribbon Group.

The configuration dialog (depicted in Figure 4) allows the configuration of recording appearances in views as well as how the recordings are interpreted.

On the left side of the dialog, there is a list of all recorder names used. The recorder names displayed are fully qualified, consisting of the recorder class as prefix and the display name of the recorder. On the right side, the properties of the currently selected recorder are displayed and can be changed.

Changeable for all recorders are the following properties:

  • Name: The name of the recorder displayed in all views
  • Foreground color: Text color for recordings in Time Bars View
  • Background color: Background color for recordings in Time Bars View, Color for trajectory of recordings in Chart View

Changeable properties for value recorders are:

  • Data values are signed: The displayed values are treated as signed values
  • Value relationship:
    > Unrelated: Recorded values are unrelated
    > Differential: The recorded values are only the difference from the last recorded value, not the total (absolute) value.
    > Absolute: The values recorded are always equal to the absolute values.
drawing-4-1676514012.png

Back to the menu


Performance Log Export 

Export of Performance Log

The export of the currently open performance log is available via the application menu.

Currently, exporting of performance log data is supported in the following formats:

  • Microsoft Excel 2007 (XLSX)
  • Comma Separated Values (CSV)

Since Excel worksheets allow only a limited number of rows, data is distributed over several worksheets. Using this approach, a theoretical total number of 65000x255 rows can be stored in one Excel file. The export of data takes some time, so please be patient.

Back to the menu


Sampling 

The figure shows the Ribbon Group for sampling. All sampling functionality is available via these controls.

drawing-4-1676514083.png

Usage of sampling requires two steps:

  • Configuration of sampling for a given view. The sampling configuration dialog can be opened via the "Configure" button.
  • Enabling of sampling for the view. Sampling can be enabled via the "enable" checkbox

Navigation between samples is supported by the navigation buttons in the Sampling Ribbon Group or keyboard shortcuts (see the end of this document for a list).
Also, the user can directly jump to a desired sample by pressing the "Goto Sample" button and specifying the desired sample in the provided dialog.

drawing-4-1676514099.png

Back to the menu


Measurement Views

Back to the menu

Performance Dashboard View

The Performance Dashboard View is the first view, automatically displayed when opening a performance log. It displays recordings of up to four Value Recorders. The actual Value Recorders used here can be customized. After installation, however, CPU load, GPU load and memory allocations are displayed (if available). The figure shows a typical Dashboard View.

drawing-4-1676514715.png

For every chart, the x-axis represents the elapsed time and the y-axis a value scale. To the right of each chart, there is a legend for the values displayed in this chart. There are no interactions possible with this view type. Only the values are displayed upon hovering over graphs.

Back to "Measurement Views"


Chart View
Chart View

A Chart View, as shown in the figure displays only Value Recordings.

drawing-4-1676514801.png

On the x-axis, a time scale is displayed, on the y-axis a common scale for all values. To the right there is a legend for the values currently displayed.

Below the x-axis and to the right of the y-axis, there are so-called zoom bars. They allow the user to zoom-in to as well as pan the chart. Panning is also allowed by left-clicking the chart and dragging it to the left or the right.

By pressing the left shift button, clicking the left mouse button, and dragging the mouse, a part of the chart can be selected for zooming in.

Hovering over a trajectory or a marker displays a tooltip with information about the corresponding value.


Associated Ribbon Group
drawing-4-1676514818.png

The Chart Ribbon Group comprises UI elements for configuring the currently active Chart View:

  • Filtering is available via the "Filter" button
  • Chart interpolation settings are available from the combo box.

The following interpolations are supported:

  • Scatter: No interpolation is performed; only markers are displayed
  • Scatter Line: Simple line interpolation is performed by connection successive markers
  • Scatter Spline: Spline interpolation is used.


Filtering, Sampling

Filtering

Filtering allows the user to reduce the set of displayed Value Recorders to a desired subset. The shows the recorder filter editor opened via the "Filter" button in the Chart Ribbon Group.

drawing-4-1676514833.png

En- and disabling of filters is immediately reflected in the chart.

  • "Invert" inverts the current selection of recorders,
  • "Set All" enables all recorders,
  • "Reset All" disables all recorders in the current Chart View.

Sampling

Sampling is available via the Sampling Ribbon Group. See section "Filtering" on page Views - Filtering - Sampling for details.

Back to "Measurement Views"


Grid View

Flat and Hierarchical Grid Views allow display of all recordings in a grid similar to Microsoft Excel. Table 1 lists and explains the displayed columns.

Grid View Columns
Column Header Title Description
# Sequence number of the recording. Numbering starts at zero.
Recorder # Sequence number of the recorder. This is the number of the recorder in the sequence of recorders with same class and name. Numbering starts at zero.
Recorder Class The class of the recorder. See section 4.1.1 for a list of available recorder classes.
Recorder Name The unique name of the recorder within its class
Recording Begin The time, this recording started. Unit is milliseconds.
Recording End The time, this recording ended. Unit is milliseconds.
Recording Duration The difference between Recording Begin and Recording End. Unit is milliseconds.
Self Duration The amount of time, this recording contributed to the recorded duration (if nested). Unit is milliseconds.
Effective Duration

Depending on the recorder class, the effective duration yields the following:

  • Cumulative Timing Recording: The accumulated duration
  • Asynchronous Timing Recording: The asynchronous duration
  • Other recorder classes: The self duration

Unit is milliseconds.

Time To Next Recording Unit is milliseconds.
Annotation A string enabling further differentiation between Recordings with same class and same name. The OpenGL timing recorder uses annotations e.g. to differentiate between calls of different functions.
Call Count Depending on the recorder class, the call count yields the following:
  • Cumulative Timing Recorder: The number of recordings of this recorder
  • Cumulative Value Recorder: The number of recordings of this recorder
  • Other recorder classes: No value
Value Depending on the recorder class, the value yields the following:
  • Value Recorder The value
  • Otherwise no value
Absolute Value Depending on the recorder class, the absolute value yields the following:
  • Cumulative Value Recorder The absolute (up until then cumulated) value
  • Other recorder classes no value


Filtering

Filtering in the grid views is available via the grid column headers as depicted in Figure 11. The filtering options are:

drawing-4-1676514987.png



Grid Filtering Options
Filter Option Description Only Numeric
All Displays all recordings No
Custom Displays a dialog for constructing a custom filter expression No
Empty Display all recordings that contain no value in this column No
Not Empty Display all recordings that contain a value No
Below Average All recordings that have values below average in this column Yes
Above Average All recordings that have values above average in this column Yes
Lower 10 The 10 lowest values in this column Yes
Upper 10 The ten highest values in this column Yes
Lower 10-Quantile In descriptive statistics, a 10-quantile (also known as decile) is any of the nine values that divide the sorted data into ten equal parts, so that each part represents 1/10 of the sample or population.
Thus, the lower 10-Quantile is the 1st decile and contains the lowest 10% of data, i.e. the 10th percentile.
Yes
Upper 10-Quantile The upper 10-Quantile is the 10th decile and contains the highest 10% of data. Yes


Summaries

Summaries are small evaluations over values in one column. Summaries can be en- and disabled via the grid column headers.

drawing-4-1676515039.png



Grid View Summary Options
Summary Option Description Only Numeric
Count Number of rows displayed No
Average The average over all displayed values Yes
Maximum The highest value No
Minimum The lowest value No
Sum The sum over all values Yes


Grouping

A grouping is a planned arrangement of all recordings by values in one column. Using this feature, it is possible to impose a hierarchical structure on the recordings. Grouping is accomplished by dragging a column header to the group-by-area. By default the group by area is collapsed.

drawing-4-1676515075.png

In order to restore the group by area, left-click on it or drag a column header and drop in on the collapsed group by area.

drawing-4-1676515112.png

Groupings can be chained, i.e. the recordings can first be grouped by values of one column, than by values of another column, and so on. The next figure shows recordings first grouped by recorder class and then by recorder name in order to collect all OpenGL recorders in one group.

drawing-4-1676515132.png

Back to "Measurement Views"

Time Bars View

Time Bars View displays all recordings arranged along a timeline. Below the actual time bars, there is a scrollbar for panning the displayed time frame. The time ruler is situated between time bars and the scrollbar. Here, time values in milliseconds and a cursor with the current time under the mouse pointer are displayed.

These icons are used to distinguish the different recorder classes:

measurement_timebar-icon_1.PNG


Time Recording

measurement_timebar-icon_2.PNG

Value Recording

measurement_timebar-icon_3.PNG

Event Recording

measurement_timebar-icon_4.PNG

Asynchronous Recording

measurement_timebar-icon_5.PNG

Cumulative Recording (timing or value)
drawing-4-1676515293.png


Associated Ribbon Group

The next figure shows the ribbon group associated with the Time Bars View. It contains only one button for displaying the recorder filtering dialog.

drawing-4-1676515305.png

Filtering, Sampling

Filtering

Filtering here works analogous to filtering in the Chart View. Via the "Filter" button on the associated ribbon group the filter editor dialog is opened. En- and disabling of filters is immediately reflected in the chart.

  • "Invert" inverts the current selection of recorders,
  • "Set All" enables all recorders,
  • "Reset All" disables all recorders in the current Chart View.

Sampling

Sampling is not supported for the Time Bars View.


Zooming
Zooming is supported via two mechanisms:
  • Mouse wheel
  • Keyboard shortcuts

Point the mouse pointer to the time you wish to zoom into. By using the mouse wheel or pressing Ctrl and the "+" or "-" button, you can zoom in to or out of this point in time. See section Keyboard Shortcuts for a list of all available keyboard shortcuts.

Back to "Measurement Views"

Treemap View

The Treemap View only displays timing recordings along with their nesting. The following figure depicts the Treemap View of a performance log.

drawing-4-1676515425.png

This view shows all timing recordings ordered by decreasing recording duration. The timing recording with the highest performance impact on one nesting level is drawn in the upper left corner, the recording with the lowest impact in the lower right corner.

Left-clicking an item in the treemap drills into this item. Right-clicking an item returns to its parent.

Filtering

Filtering is not available for the Treemap View.

Sampling

Sampling is available via the Sampling Ribbon Group.

Back to "Measurement Views"