Skip to main content

Measurement User Interface

Contents List

    User Interface 
    Application Menu 
    Configuration 
    Performance Log Export 
    Sampling 

    Measurement Views

      Performance Dashboard View 
      Chart View 
      Grid View 
      Time Bars View 
      Treemap View 


      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.pngdrawing-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.pngdrawing-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.pngdrawing-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.pngdrawing-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.pngdrawing-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.pngdrawing-4-1676514099.png

      Back to the menu


      Measurement Views

      Back to the menu

        Performance Dashboard View 
        Chart View 
        Grid View 
        Time Bars View 
        Treemap View 

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

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

        drawing-4-1676514801.pngdrawing-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.pngdrawing-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

        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.pngdrawing-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.pngdrawing-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.pngdrawing-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.pngdrawing-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.pngdrawing-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.pngdrawing-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.PNGmeasurement_timebar-icon_1.PNG


        Time Recording

        measurement_timebar-icon_2.PNGmeasurement_timebar-icon_2.PNG

        Value Recording

        measurement_timebar-icon_3.PNGmeasurement_timebar-icon_3.PNG

        Event Recording

        measurement_timebar-icon_4.PNGmeasurement_timebar-icon_4.PNG

        Asynchronous Recording

        measurement_timebar-icon_5.PNGmeasurement_timebar-icon_5.PNG

        Cumulative Recording (timing or value)
        drawing-4-1676515293.pngdrawing-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.pngdrawing-4-1676515305.png

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