D3D12_QUERY_DATA_PIPELINE_STATISTICS structure (d3d12.h)

Query information about graphics-pipeline activity in between calls to BeginQuery and EndQuery.

Syntax

typedef struct D3D12_QUERY_DATA_PIPELINE_STATISTICS {
  UINT64 IAVertices;
  UINT64 IAPrimitives;
  UINT64 VSInvocations;
  UINT64 GSInvocations;
  UINT64 GSPrimitives;
  UINT64 CInvocations;
  UINT64 CPrimitives;
  UINT64 PSInvocations;
  UINT64 HSInvocations;
  UINT64 DSInvocations;
  UINT64 CSInvocations;
} D3D12_QUERY_DATA_PIPELINE_STATISTICS;

Members

IAVertices

Number of vertices read by input assembler.

IAPrimitives

Number of primitives read by the input assembler. This number can be different depending on the primitive topology used. For example, a triangle strip with 6 vertices will produce 4 triangles, however a triangle list with 6 vertices will produce 2 triangles.

VSInvocations

Specifies the number of vertex shader invocations. Direct3D invokes the vertex shader once per vertex.

GSInvocations

Specifies the number of geometry shader invocations. When the geometry shader is set to NULL, this statistic may or may not increment depending on the graphics adapter.

GSPrimitives

Specifies the number of geometry shader output primitives.

CInvocations

Number of primitives that were sent to the rasterizer. When the rasterizer is disabled, this will not increment.

CPrimitives

Number of primitives that were rendered. This may be larger or smaller than CInvocations because after a primitive is clipped sometimes it is either broken up into more than one primitive or completely culled.

PSInvocations

Specifies the number of pixel shader invocations.

HSInvocations

Specifies the number of hull shader invocations.

DSInvocations

Specifies the number of domain shader invocations.

CSInvocations

Specifies the number of compute shader invocations.

Remarks

Use this structure with D3D12_QUERY_HEAP_TYPE and CreateQueryHeap.

Requirements

Requirement Value
Header d3d12.h

See also

Core Structures