API Inspector


When using the Frame Debugger feature of NVIDIA Nsight Graphics, you may wish to do a deep dive into the API state for specific draw calls in order to analyze your application further.

To use the API Inspector:

  1. Start the Frame Debugger by launching the application and going to Pause and Capture Frame.
  2. If not already opened by default, you can open the API Inspector by going to Frame DebuggerAPI Inspector or by clicking the link for the action in the Events View.
  3. Along the left side of the view, you can see the Pipeline State Navigator.
  4. From here, you can further inspect the API state for each pipeline stage, including what textures and render targets are bound, or which shaders are in use in the related constants.

Note that if a stage is not active (either there is nothing bound to that stage or it doesn’t apply for the current action) it will be greyed out. You can still click on it to inspect the state. The following table shows the stages that are available for inspection:

  • IA —The Input Assembler shows the layout of your vertex buffers and index buffers.
  • VS — Shows all of the shader resource views and constant buffers bound to the Vertex Shader stage, as well as links to the HLSL source code and other shader information.
  • HS — This shows all of the shader resource views and constant buffers bound to the Hull Shader stage, as well as links to the HLSL source code and other shader information.
  • DS — This shows all of the shader resource views and constant buffer bound to the Domain Shader stage, as well as links to the HLSL source code and other shader information.
  • GS — Shows all of the shader resource views and constant buffers bound to the Geometry Shader stage, as well as links to the HLSL source code and other shader information.
  • SO — Shows the resources bound for Stream Output.
  • RS — Shows the Rasterizer State parameters, including culling mode, scissor and viewport rectangles, etc.
  • PS — Shows all of the shader resource views, constant buffers, and render target views bound to the Pixel Shader stage, as well as links to the HLSL source code and other shader information.
  • OM — Shows the Output Merger parameters, including blending setup, depth, stencil, render target views, etc.
  • CS — This shows all of the shader resource and unordered access views and constant buffers bound to the Compute Shader stage, as well as links to the HLSL source code and other shader information.

Input Assembler (IA)

The Input Assembler page (shown above) shows the details of your vertex buffers and index buffers, the input layout of the vertices.

Shaders (VS, HS, DS, GS, PS, CS)

The various shader pages display all of the constant buffers, shader resource views, and input/output parameters, as well as links to the HLSL source code and other shader information.

In the constant buffer list, you can expand the buffer to see which HLSL variables are mapped to each entry, as well as the current values.

To enable resolution of HLSL variables, you must enable debug info when compiling the shader. Debug info can be enabled by using the /Zi command line option to fxc.exe or setting the D3DCOMPILE_DEBUG flag in the call to D3DCompile.

Rasterizer State (RS)

The Rasterizer State page displays parameters including culling mode, scissor and viewport rectangles, etc.

Output Merger (OM)

The Output Merger page shows parameters including blending setup, depth, stencil, currently bound render target views, etc.


 

NVIDIA® Nsight Graphics Documentation Rev. 2018.4.180813 ©2018. NVIDIA Corporation. All Rights Reserved.