UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
D3D12Submission.cpp File Reference

Classes

class  FD3D12Thread
 
struct  FD3D12FinalizedCommands
 

Macros

#define D3D12_PLATFORM_SUPPORTS_BLOCKING_FENCES   1
 
#define D3D12_USE_SUBMISSION_THREAD   (1)
 
#define D3D12_USE_INTERRUPT_THREAD   (1 && D3D12_PLATFORM_SUPPORTS_BLOCKING_FENCES)
 
#define D3D12_PREFER_QUERIES_FOR_GPU_TIME   0
 

Functions

 DECLARE_CYCLE_STAT (TEXT("Submit"), STAT_D3D12Submit, STATGROUP_D3D12RHI)
 
 DECLARE_CYCLE_STAT (TEXT("GPU Total Time [All Queues]"), STAT_RHI_GPUTotalTime, STATGROUP_D3D12RHI)
 
 DECLARE_CYCLE_STAT (TEXT("GPU Total Time [Hardware Timer]"), STAT_RHI_GPUTotalTimeHW, STATGROUP_D3D12RHI)
 
 DECLARE_CYCLE_STAT (TEXT("GPU Total Time [Graphics]"), STAT_RHI_GPUTotalTimeGraphics, STATGROUP_D3D12RHI)
 
 DECLARE_CYCLE_STAT (TEXT("GPU Total Time [Async Compute]"), STAT_RHI_GPUTotalTimeAsyncCompute, STATGROUP_D3D12RHI)
 
 DECLARE_CYCLE_STAT (TEXT("GPU Total Time [Copy]"), STAT_RHI_GPUTotalTimeCopy, STATGROUP_D3D12RHI)
 
 DECLARE_STATS_GROUP (TEXT("D3D12RHIPipeline"), STATGROUP_D3D12RHIPipeline, STATCAT_Advanced)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU IA Vertices"), STAT_D3D12RHI_IAVertices, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU IA Primitives"), STAT_D3D12RHI_IAPrimitives, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU VS Invocations"), STAT_D3D12RHI_VSInvocations, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU GS Invocations"), STAT_D3D12RHI_GSInvocations, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU GS Primitives"), STAT_D3D12RHI_GSPrimitives, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU C Invocations"), STAT_D3D12RHI_CInvocations, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU C Primitives"), STAT_D3D12RHI_CPrimitives, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU PS Invocations"), STAT_D3D12RHI_PSInvocations, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU HS Invocations"), STAT_D3D12RHI_HSInvocations, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU DS Invocations"), STAT_D3D12RHI_DSInvocations, STATGROUP_D3D12RHIPipeline)
 
 DECLARE_DWORD_ACCUMULATOR_STAT (TEXT("GPU CS Invocations"), STAT_D3D12RHI_CSInvocations, STATGROUP_D3D12RHIPipeline)
 
D3D12_QUERY_DATA_PIPELINE_STATISTICSoperator+= (D3D12_QUERY_DATA_PIPELINE_STATISTICS &LHS, D3D12_QUERY_DATA_PIPELINE_STATISTICS const &RHS)
 

Macro Definition Documentation

◆ D3D12_PLATFORM_SUPPORTS_BLOCKING_FENCES

#define D3D12_PLATFORM_SUPPORTS_BLOCKING_FENCES   1

◆ D3D12_PREFER_QUERIES_FOR_GPU_TIME

#define D3D12_PREFER_QUERIES_FOR_GPU_TIME   0

◆ D3D12_USE_INTERRUPT_THREAD

#define D3D12_USE_INTERRUPT_THREAD   (1 && D3D12_PLATFORM_SUPPORTS_BLOCKING_FENCES)

◆ D3D12_USE_SUBMISSION_THREAD

#define D3D12_USE_SUBMISSION_THREAD   (1)

Function Documentation

◆ DECLARE_CYCLE_STAT() [1/6]

DECLARE_CYCLE_STAT ( TEXT("GPU Total Time [All Queues]")  ,
STAT_RHI_GPUTotalTime  ,
STATGROUP_D3D12RHI   
)

◆ DECLARE_CYCLE_STAT() [2/6]

DECLARE_CYCLE_STAT ( TEXT("GPU Total Time [Async Compute]")  ,
STAT_RHI_GPUTotalTimeAsyncCompute  ,
STATGROUP_D3D12RHI   
)

◆ DECLARE_CYCLE_STAT() [3/6]

DECLARE_CYCLE_STAT ( TEXT("GPU Total Time [Copy]")  ,
STAT_RHI_GPUTotalTimeCopy  ,
STATGROUP_D3D12RHI   
)

◆ DECLARE_CYCLE_STAT() [4/6]

DECLARE_CYCLE_STAT ( TEXT("GPU Total Time [Graphics]")  ,
STAT_RHI_GPUTotalTimeGraphics  ,
STATGROUP_D3D12RHI   
)

◆ DECLARE_CYCLE_STAT() [5/6]

DECLARE_CYCLE_STAT ( TEXT("GPU Total Time [Hardware Timer]")  ,
STAT_RHI_GPUTotalTimeHW  ,
STATGROUP_D3D12RHI   
)

◆ DECLARE_CYCLE_STAT() [6/6]

DECLARE_CYCLE_STAT ( TEXT("Submit")  ,
STAT_D3D12Submit  ,
STATGROUP_D3D12RHI   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [1/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU C Invocations" ,
STAT_D3D12RHI_CInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [2/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU C Primitives" ,
STAT_D3D12RHI_CPrimitives  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [3/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU CS Invocations" ,
STAT_D3D12RHI_CSInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [4/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU DS Invocations" ,
STAT_D3D12RHI_DSInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [5/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU GS Invocations" ,
STAT_D3D12RHI_GSInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [6/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU GS Primitives" ,
STAT_D3D12RHI_GSPrimitives  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [7/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU HS Invocations" ,
STAT_D3D12RHI_HSInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [8/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU IA Primitives" ,
STAT_D3D12RHI_IAPrimitives  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [9/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU IA Vertices" ,
STAT_D3D12RHI_IAVertices  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [10/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU PS Invocations" ,
STAT_D3D12RHI_PSInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_DWORD_ACCUMULATOR_STAT() [11/11]

DECLARE_DWORD_ACCUMULATOR_STAT ( TEXT("GPU VS Invocations" ,
STAT_D3D12RHI_VSInvocations  ,
STATGROUP_D3D12RHIPipeline   
)

◆ DECLARE_STATS_GROUP()

DECLARE_STATS_GROUP ( TEXT("D3D12RHIPipeline")  ,
STATGROUP_D3D12RHIPipeline  ,
STATCAT_Advanced   
)

◆ operator+=()