Skip to content

Overview#

gr__busy_pct signal on the graph. High percentage => GPU bound

Range Profiler#

  • Finding most expensive drawcall: Capture frame and click action details in range info section. Sort table by draw call times

  • Optimize range of draw calls: Pipeline section in Range details shows virtual GPU pipeline. Red bars indicate unused GPU units

  • Draw calls common state: Range profiler’s grouping capability to make new ranges based on common state

IA Bottleneck & SOL IA is the unit that handles vertex attribute assembly
FB Bottleneck & SOL The FB or frame buffer unit handles all requests for reading memory that missed any possible L1/L2 caches.
Primitive Setup Bottleneck & SOL Primitive setup happens right before rasterization and handles jobs like edge equation calculations
Rasterization Bottleneck & SOL Rasterization is when the primitives are split up into individual fragments to be shaded.
ROP Bottleneck & SOL ROP is the blending unit and handles both color blending and Z/stencil buffer handling.
SHD Bottleneck & SOL SHD (or SM) is the unified shader unit and handles processing of all shader types on various inputs.
Stream Out Bottleneck & SOL Stream out is the unit responsible for optionally writing data output from the geometry shader to memory
Tessellator SOL Tessellator is the unit between the hull and domain shaders. This SOL does not include the shader.
TEX Bottleneck & SOL The TEX unit is responsible for reading samples from the L2 and frame buffer and calculating the texel value based on the current filtering mode.**
ZCull Bottleneck & SOL ZCull happens before the fragment shader is run and is able to discard fragments because they won’t pass the z-test.

Last update: November 14, 2019