Visualization Panel

This panel displays the sequence and duration of captured events in graphical format. You can adjust the manner of displaying events by using the Visualization Settings Tool Bar.

Erg Graph and Render Targets Graph

Intel® GPA Frame Analyzer supports the following views of the bar chart:

  • Erg Graph – shows metrics associated with each erg
  • Render Targets Graph – shows metrics associated with sets of ergs, grouped by render target.

On traditional rendering architectures, you can toggle between the two views.

On tile-based rendering architectures, only the Render Targets Graph is available. This is because work is processed in batches, and per-erg metrics are not meaningful in tile-based rendering.

Render Targets  

Each bar on the Render Targets Graph corresponds to a set of contiguous ergs drawing to a single render target. The boundaries between bars are defined by when the application switches render targets.

There is a one-to-one correspondence between the bars and the render target thumbnails that appear in Render Target Viewer field when “Show All Render Targets” is selected, or all ergs are selected.

Bars on the Render Targets Graph can be of three colors:

  • Blue bars – represent render targets in which no erg is selected
  • Yellow bars – represent render targets in which all ergs are selected
  • Dark yellow bars – represent render targets where at least one, but not all ergs are selected

Intel Graphics Performance Analyzers fa yellow bars Visualization Panel
 

To select render targets (and all of the ergs that they contain), use Ctrl+Click and Shift+Click on the bars.  

Ergs

An erg is any item in the frame that potentially renders pixels to the frame buffer, such as “draw” calls or “clear” calls. Once you load the capture file, ergs are visualized as vertical bars, which can be of one of the following types:

  • Draw Call (colored Dark Blue)
  • Clear (colored Light Blue)
  • Surface Copy (colored Purple)
  • Dispatch Call/DirectCompute ergs (colored Orange), shown below:
    Intel Graphics Performance Analyzers fa dispatch Visualization Panel

Ergs are shown in chronological order starting from the left. If the “GPU Breakdown” metric is selected, each erg bar consists of the following parts:

  • Dark Blue/Light Blue/Purple part stands for erg type

  • White part stands for Vertex Shader Time

  • Dark Gray part stands for Geometry Shader Time

  • Black part stands for Pixel Shader Time

By default, the height of the erg bar indicates the duration of the erg execution on the GPU.

To get information on an erg and GPU duration, put the cursor on a required erg, as shown in the figure below.
 

Intel Graphics Performance Analyzers fa erg info Visualization Panel  

NOTE

GPU time is measured in microseconds.

Ergs are grouped into regions: ergs written to the same render target appear in the same region. This matches the information provided in the Scene Overview Panel.

NOTE

When analyzing a game that includes multiple D3D devices, the Intel® GPA Frame Analyzer only displays ergs associated with the first device that Intel GPA encounters in the stream of DirectX* calls in your capture file. However, when running experiments the Intel GPA Frame Analyzer still renders all ergs for all D3D devices. Since Intel GPA displays total rendering time on a per-region basis, the total rendering time for each region is accurate if you interleave calls to all D3D devices within a region. However, Intel GPA may not capture all of the rendering time when you render to the other devices outside the regions defined by the first device.

Red Bars

When the Intel GPA Frame Analyzer renders a frame, it performs multiple rendering passes on the selected ergs, and displays the minimum and maximum rendering time for each erg.

The red bars associated with each erg provide a visual representation of three things:

  • Variance – indicated by the red bar height

  • Minimum value –  indicated by the bottom line of the red variance line

  • Maximum value – indicated by the top line of the red variance line

Regions

A frame is subdivided into regions displayed in a light gray color and separated by thin white lines.

Regions are delineated by the shading of the chart’s background. 

Intel Graphics Performance Analyzers fa 18 Visualization Panel  

Regions are generated when:

  • A new render target is used; such regions are delineated when the graphics application is drawing to something new.

  • A new portion of the scene, defined by D3DPERF_BeginEvent() and D3DPERF_EndEvent() API calls, is created. This isolates the work for specific portions. For example, if the D3DPERF_*Event() API calls define the “Drawing a car” portion, the work for the various parts of the scene used in car drawing is easily grouped and analyzed.
    Since these D3DPERF_*Event calls can be nested, regions can be also nested. The region color corresponds to the level of nesting, and cycle through light gray, medium gray, and dark gray:
     

    • level 0 = light gray
    • level 1 = medium gray
    • level 2 = dark gray
    • level 4 = light gray
    • level 5 = medium gray
    • levels 6 and greater = dark gray, light gray, medium gray, … 

    The following code shows a sample of nested D3DPERF_*Event() calls:

    <dx_call(s)>

    D3DPERF_BeginEvent(<color>, L”Draw Car”);

    <dx_call(s)>

    D3DPERF_BeginEvent(<color>, L”Draw Car Body”);

    <dx_call(s)>

    D3DPERF_EndEvent(); // end of car body drawing

    <dx_call(s)>

    D3DPERF_BeginEvent(<color>, L”Draw Car Wheels”);

    <dx_call(s)>

    D3DPERF_EndEvent(); // end of car wheels drawing

    <dx_call(s)>

    D3DPERF_EndEvent(); // end of car drawing

    <dx_call(s)>

Markers

On the bar chart, vertical orange lines between ergs serve as markers.
 Intel Graphics Performance Analyzers fa markers Visualization Panel
A marker is an event that you can include to denote that something has happened, such as “Finished Drawing Trees.” As a marker is not something that the graphics hardware processes; markers do not have metrics associated with them. To set a marker, use the D3DPERF_SetMarker() API in the Microsoft* DirectX* code. The following code shows an example:

<dx_call(s)>

D3DPERF_SetMarker(<color>, L “My marker “);

<dx_call(s)>

 

If the number of ergs exceeds what can be displayed with the GUI’s current width, a horizontal scroll bar appears. 

See Also

Configuring the Erg Chart
Scene Overview Panel
D3D Events and Markers

Visualization Panel