User Guide

  • 2022.3
  • 09/27/2022
  • Public Content
Contents

Resources Pane

Resource List
Displays all resources used by the selected graphics API functions.
Resource Viewer
Displays details about the resource selected in
Resource List
.

Resource List

All resources are grouped by
Input
,
Execution
, and
Output
stages.
By default, Frame Analyzer shows all resources attributed to the current selection. Use the
Filter
menu to filter resources by type:
  • Geometry
  • Textures
  • Shaders
  • Data buffers
  • Graphics/Compute Pipeline States
  • Samplers
  • API call arguments
To filter resources by name, type the desired name or parameter into the
Type filter expression
field.
Some resources support previews. To see the preview, hover over the resource thumbnail in the
Resource List
.
Use
Back
and
Next
buttons to navigate back and forth between recently selected resources and events.
For textures, shaders, or geometry, you can choose the following view types:
  • Table View
    To see resources in a tabular view, click the
    Show Resource Table
    button.
    To configure table columns, click the button.
    To select a resource and open it in the
    Resource Viewer
    , click the row with the required resource.
  • Tile View
    Tile view shows only resource thumbnails. To open tile view, click the button. Resources can be sorted by resource type, name, ID, or stage.
    To select a resource and open it in the
    Resource Viewer
    , click the row with the required resource.

Resource Notations

Resource names, except texture and buffer names, are abbreviated and shown in the
Resource List
and
Resource Viewer
in the following format:
<resource type>:<resource ID> [<user-defined name>]
Texture names and buffer names are shown in the following format:
<resource type>:<resource ID> (<view type><view ID>)
Resources Names for DirectX API
Name Component
Description
<resource type>
Can be B (buffer) or T (texture).
<resource ID>
Any positive integer. 0 is an exception used to identify a synthetic DirectX 12 root constant resource.
<view type>
Depends on the resource type.
Texture
  • RTV - render target view
  • DSV - depth-stencil view
  • UAV - unordered access view
  • SRV - shader resource view
  • genmips - subresources generated automatcally by GenerateMips call
  • copy - subresources used in copy calls
Buffer
  • VBV - vertex buffer view
  • copy - subresources used in copy calls
  • args - draw and dispatch indirect arguments
  • IBV - index buffer view
  • count - query results buffer
  • UAV - unordered access view
  • SRV - shader resource view
  • CBV - constant buffer view
  • Shader binding table view types:
    • raygen - shader binding table for ray generation shaders
    • hit - shader binding table for hit shaders
    • miss - shader binding table for miss shaders
<view ID>
Any non-negative integer number. Continuous numbering is used, that is a view ID value does not depend on a view type.

Resource Viewer

Resource Viewer
displays details of the resource selected in
Resource List
.
Resource Viewer
layout depends on the resource type.

Resource Viewer: Geometry

Geometry Viewer
panel
Visualization Mode
drop-down list - switches between view modes to analyze various geometry aspects of the selected geometry object. There are the following visualization modes available:
Solid
(default) - view the object as a solid model.
Wireframe
- view a wireframe model to inspect the backside of the object and to understand how it is built from triangles.
Solid Wireframe
- view a wireframe model on top of the solid model.
Normals
- view a normal map for your object to analyze how the normal vectors are plotted.
Output Geometry View Mode
drop-down list is available for output geometry. It toggles between the
Post-transform mesh
mode and
Screen space view
mode.
  • Post-transform mesh
    mode displays an object with transformed vertexes.
  • Screen space view
    mode displays a projected object to a 2D screen space.
Save Geometry to File
button exports geometry data in the Wavefront OBJ format.
Geometry Layout
button (specific for DirectX 11, DirectX 12, and Vulcan) displays geometry details. The
Geometry Layout
pane contains general information, such as topology and bounding box, as well as the attached vertex buffers and their layout:
Geometry Viewer
window
Shows a mesh for the selected call.
For DirectX 11 and 12, output geometry can be selected for several calls within one render target region.
You can rotate the object in any direction by clicking and holding the mouse pointer. To invert normals by 180 degrees, right-click the geometry object. To flip vertical and horizontal planes, middle-click the geometry object.

Resource Viewer: Texture

Texture Viewer
pane
Open in Separate Window
button - displays the selected in a separate window.
Resource History
button - shows in the API Log pane only the graphics API functions that use the selected resource.
Resource Creation Parameters
button - shows the descriptor with available parameters for DirectX resources.
Texture Info
field - shows the resource type and internal ID; view type and ID; and debug name, if available.
Format
field - shows the original texture format.
Dimensions
field - shows the resource dimensions, such as width, height, depth - or layer count and sample count for multisample textures.
Texture Viewer
toolbar
Render Target State
drop-down list toggles between the following modes of the selected render target:
  • Normal Mode
    shows the render target state for the last event, which writes to this render target before reading the render target or before the frame end.
  • Scrub Mode
    shows the render target state for the last selected event.
Output Texture Visualization Mode
drop-down list switches between the following viewing modes of the selected output texture:
  • Current
    shows the render target with modifications.
  • Original
    shows the render target without modifications.
  • Diff
    shows the difference between the current and original modes.
  • Overdraw
    shows the render target with a blue scale overdraw visualization. The brighter the color, the more times the pixel was updated. Hover over the pixel to see the hit count below.
Selected Calls
drop-down list switches between the following ways to render the selected calls:
  • Original
    renders all selected events with no modifications.
  • Highlight
    sets all selected events to a pink solid color fill mode.
  • Wireframe
    (only for DirectX 11, DirectX 12, and Vulcan) shows all selected events in a pink wireframe mode.
  • Hide
    does not show all selected events.
Other Calls
drop-down list switches between the following options to show non-selected calls:
  • Original
    renders all non-selected events with no modifications.
  • Highlight
    sets all non-selected events to a blue solid color fill mode.
  • Wireframe
    (only for DirectX 11, DirectX 12, and Vulcan) shows all non-selected events in a blue wireframe mode.
  • Hide
    does not show all non-selected events.
Selected Calls
and
Other Calls
viewing options apply only to the draw calls that render into the selected render target.
Save Texture to File
button - saves a texture image or render target in the Direct Draw Surface (DDS) format, Khronos Texture (KTX) format, or PNG format.
Flip Image
button - turns a texture image or render target upside down.
Histogram
button - opens a color histogram of a texture or render target.
Texture Viewer
window
Shows a texture image or render target.
For textures with mipmaps, 3D textures, and texture arrays, you can select a particular subresource in the
MIP-level selector
or the
Layer selector
:
Grayed-out values in the
MIP-level selector
or in the
Layer selector
mean that the corresponding subresources are not defined in the selected resource view.
You can experiment with SRV textures using the following elements:
  • Texture 2x2
    button - replaces the opened texture with a simple 2x2 pixel texture for the selected events. The experiment creates a new texture with the same name and of the same type, and denoted as [modified].
  • Clamp to Selected MIP Level
    button - disables all mipmaps of the opened textures that are greater than the current mipmap level of the texture for the selected events. The experiment creates a new texture with the same name and of the same type, and denoted as [modified].
  • Format
    drop-down list - shows the original texture format and enables texture format replacement (DirectX 11 only).
To disable the applied experiments, click the button on the texture thumbnail in
Resource List
.
For cube map textures, you can open one face of a cube map by selecting the desired face from the drop-down list. The
Default
option is a cube map layout.
Cube map layout for a MIP-level, where a face size is greater than 4096px, is unavailable.

Resource Viewer: Shader

Shader Viewer
pane
Resource History
button shows in the
API Log
pane only the draw calls that use the selected shader set.
Shader Profiler
button - switch to Shader Profiling mode.
Show source-assembly mapping
button - enable side-by-side view of shader and assembly code.
Shader Type
drop-down list - shows the type of the opened shader.
Shader Viewer
toolbar
Shader Code
drop-down list - shows different code representations of the opened shader. Supported
Shader Code
types:
  • DirectX: HLSL; DXBC/DXIL; ISA
  • Vulkan: GLSL; HLSL; SPIR-V
  • OpenGL:GLSL
For DirectX frames, you can choose Compiler Flags from the
Shader Code
list to see what options are used to compile the source code.
Apply
button - compiles a modified shader source code and applies it to the selected draw calls or dispatch calls.
Revert
button - discards all changes made to the opened shader.
Type Filter Expression
field - filters shader code values.
Format
button - applies default formatting to the opened shader code.
Preprocess
button - preprocesses the opened shader code by applying all defines from the list of definitions.
Load source code
button - replaces the current shader source code with the imported code.
Export shader profile to CSV
button - saves the shader code currently displayed in the Shader Editor, in the CSV format.
Bindings
button - displays a list of resources and constants that are used in the opened shader.
Shader Editor
Enables you to view a shader code, change it and apply changes to the selected draw calls or dispatch calls.
Shader Resource List
Lists bound resources and constants used in the opened shader.
Notification
pane
Displays errors and warnings that relate to the selected shader code.

Resource Viewer: Shader Table

Shader Table
is a tool for deep analysis of ray tracing shaders. The table visualizes all shaders that can be potentially executed as a result of a
DispatchRays
call. Shader Table also contains performance metrics for each shader.
Shader Table is available for DirectX* Raytracing applications starting with Intel® Arc™ high-performance GPUs code named Alchemist, and previously known as DG2.
When you select a
DispatchRays
call in Graphics Frame Analyzer, Shader Table becomes available in the Resource List as a separate item. Click the Shader Table resource to view detailed information about shaders:​
  • Export Name(s)
    - unique shader names, which are exported from the raytracing pipeline state object and used to generate the shader identifier.
  • DXIL Entrypoint
    - shader name from the HLSL source code.
  • Hit Group(s)
    - names of hit groups where the shader is used. Only
    closest hit,
    any hit,
    and
    intersection
    shaders can be included in a hit group. Cells in the Hit Group(s) column are always empty for
    ray generation,
    miss,
    and
    callable
    shaders.​
  • HW Thread Count
    - number of hardware threads executing instances of a shader. If the number is zero, the shader was bound to the pipeline but not executed. Maximum number of shader instances in a hardware thread depends on SIMD width (8, 16, or 32).
  • Duration %
    - relative duration of a shader, where 100% is the sum of durations for all shaders.
  • SIMD Occupancy %
    - number of SIMD lanes executing a shader, in relation to the total number available across all threads.​ If SIMD occupancy is low, the hardware scheduler could not aggregate different shader instances in one thread. Developer and Optimization Guide describes how to improve SIMD occupancy.
  • SIMD Active Channels
    - the number of rays processed by the shader. The value of SIMD Active Channels metric equals to HW Thread Count * SIMD width * SIMD occupancy / 100%.
  • Type
    - shader type as defined in the DXIL library.​
  • DXIL Library
    - identifier of the DXIL library where a shader is declared. You can use the identifier to find a proper shader code from the Resource List.

Resource Viewer: Buffer

Buffer Viewer
pane
Show Resource in Separate Window
button - opens
Buffer Viewer
in a separate window.
Resource History
button - shows in the
API Log
pane only the graphics API functions that use the selected buffer.
Resource Creation Parameters
button - shows the descriptor with available parameters for DirectX resources.
Offset and Size
field - shows the offset value and size of the opened buffer block in the original buffer object.
Buffer Viewer
toolbar
View
toggle button - toggles between the list view and table view of the
Buffer Viewer
.
Buffer Layout
field - enables you to view and edit the opened buffer layout. The layout is written in the buffer markup language.
Export buffer to CSV
button - exports the contents off the buffer in .csv file format. Your are prompted to specify the file name and the location.
Restore Default Layout
button - reverts any buffer layout modifications made by the user and restores the default shader-defined or pipeline state-defined buffer layout or a default format (float4 or xuint4), if the buffer layout was not received from shader.
Info
button - opens the layout editor help with the markup language help.
Buffer Viewer
window
Shows the opened buffer details in a table or list format.

Resource Viewer: Graphics/Compute Pipeline State

The
Graphics/Compute Pipeline State Viewer
shows settings for fixed function blocks of the graphics/compute pipeline. The settings can be changed.
For DirectX and OpenGL applications,
State Viewer
shows API-agnostic data. The data can be modified for several draw calls simultaneously:
For Vulkan, State Viewer shows Vulkan-specific data only for one draw call:
For frames opened from stream files, Graphics Frame Analyzer provides a combined state view that unifies both Pipeline State Object (PSO) and non-PSO states:

Resource Viewer: Samplers

Sampler Viewer
pane
Resource History
button - shows in the
API Log
pane only the graphics API functions that use the selected sampler.
Show Resource in Separate Window
button - opens
Sampler Viewer
in a separate window.
Sampler Viewer
window
Shows read-only settings for sampling textures.

Resource Viewer: API Call Arguments

The
API Call Arguments Viewer
lists arguments of the selected graphics API function. The viewer shows data only for a single function.
  • For the DirectX 11 and DirectX 12 frames, you can change arguments to change input geometry, clear color or the number of computing threads.
  • You can change arguments for the following calls:
    • ClearRenderTargetView
    • ClearDepthStencilView
    • ClearUnorderedAccessViewFloat
    • Dispatch calls
    • For DirectX 11, all draw calls except DrawIndexedInstancedIndirect and DrawInstancedIndirect
    • For DirectX 12, DrawIndexedInstanced and DrawInstanced

Resource Viewer: Root Signatures and Descriptors (DirectX 12 and Vulkan only)

This resource view enables you to explore the internals of DirectX 12 Root Signatures and Vulkan Descriptor Sets. This can be useful for debugging sporadic rendering issues, like a wrong texture being used for an object.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.