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.

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.

Application 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.

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.
Sampling
The figure shows the Ribbon Group for sampling. All sampling functionality is available via these controls.

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

Measurement Views
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.

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.
Chart View
Chart View
A Chart View, as shown in the figure displays only Value Recordings.

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

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 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.

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 is available via the Sampling Ribbon Group. See section "Filtering" on page Views - Filtering - Sampling for details.
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:
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:
|
| Value | Depending on the recorder class, the value yields the following:
|
| Absolute Value | Depending on the recorder class, the absolute value yields the following:
|
Filtering
Filtering in the grid views is available via the grid column headers as depicted in Figure 11. The filtering options are:

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 are small evaluations over values in one column. Summaries can be en- and disabled via the grid column headers.

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.

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.

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.

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:

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.

Filtering, Sampling
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 is not supported for the Time Bars View.
Zooming
- 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.
Treemap View
The Treemap View only displays timing recordings along with their nesting. The following figure depicts the Treemap View of a performance log.

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.