14#define RDG_DUMP_GRAPH_PRODUCERS 1
15#define RDG_DUMP_GRAPH_RESOURCES 2
16#define RDG_DUMP_GRAPH_TRACKS 3
18#define RDG_ASYNC_COMPUTE_DISABLED 0
19#define RDG_ASYNC_COMPUTE_ENABLED 1
20#define RDG_ASYNC_COMPUTE_FORCE_ENABLED 2
22#ifndef RDG_ENABLE_PARALLEL_TASKS
23#define RDG_ENABLE_PARALLEL_TASKS 1
26#define RDG_RECURSION_COUNTER_SCOPE(Counter) Counter++; ON_SCOPE_EXIT { Counter--; }
57#define RDG_ALLOW_RHI_ACCESS_SCOPE() FRDGAllowRHIAccessScope RDGAllowRHIAccessScopeRAII;
82#define RDG_ALLOW_RHI_ACCESS_SCOPE()
94#if RDG_ENABLE_PARALLEL_TASKS
119#if CSV_PROFILER_STATS
127#define RDG_STATS STATS || COUNTERSTRACE_ENABLED
200 return TEXT(
"Epilogue (For Graphics)");
202 return TEXT(
"Epilogue (For AsyncCompute)");
204 return TEXT(
"Epilogue (For All)");
247template <
typename ResourceRegistryType,
typename FunctionType>
#define check(expr)
Definition AssertionMacros.h:314
#define DECLARE_CYCLE_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:679
#define DECLARE_DWORD_COUNTER_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:682
#define DECLARE_FLOAT_COUNTER_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:681
#define DECLARE_MEMORY_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:687
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define TRACE_DECLARE_INT_COUNTER_EXTERN(CounterName)
Definition CountersTrace.h:448
#define TRACE_DECLARE_FLOAT_COUNTER_EXTERN(CounterName)
Definition CountersTrace.h:452
#define TRACE_DECLARE_MEMORY_COUNTER_EXTERN(CounterName)
Definition CountersTrace.h:456
#define CSV_DECLARE_CATEGORY_EXTERN(CategoryName)
Definition CsvProfiler.h:79
#define DEFINE_LOG_CATEGORY_STATIC(CategoryName, DefaultVerbosity, CompileTimeVerbosity)
Definition LogMacros.h:380
FRHIGlobals GRHIGlobals
Definition RHIGlobals.cpp:6
#define GSupportsEfficientAsyncCompute
Definition RHIGlobals.h:812
#define GRHISupportsSeparateDepthStencilCopyAccess
Definition RHIGlobals.h:834
#define GTriggerGPUProfile
Definition RHIGlobals.h:844
ERHIPipeline
Definition RHIPipeline.h:13
int32 GRDGTransientExtractedResources
Definition RenderGraphPrivate.cpp:258
const int32 GRDGClobberResources
Definition RenderGraphPrivate.h:73
int32 GRDGMergeRenderPasses
Definition RenderGraphPrivate.cpp:240
const int32 GRDGTransitionLog
Definition RenderGraphPrivate.h:78
int32 GRDGAsyncCompute
Definition RenderGraphPrivate.cpp:211
int32 GRDGParallelSetup
Definition RenderGraphPrivate.cpp:297
bool IsParallelSetupEnabled(EShaderPlatform ShaderPlatform)
Definition RenderGraphPrivate.cpp:635
int32 GRDGParallelSetupTaskPriorityBias
Definition RenderGraphPrivate.cpp:321
int32 GRDGAsyncSetupQueue
Definition RenderGraphPrivate.cpp:313
int32 GRDGParallelCompile
Definition RenderGraphPrivate.cpp:305
FORCEINLINE bool IsAsyncComputeSupported(EShaderPlatform ShaderPlatform)
Definition RenderGraphPrivate.h:231
void EnumerateExtendedLifetimeResources(ResourceRegistryType &Registry, FunctionType Function)
Definition RenderGraphPrivate.h:248
FORCEINLINE bool IsRenderPassMergeEnabled(EShaderPlatform ShaderPlatform)
Definition RenderGraphPrivate.h:226
FORCEINLINE bool IsImmediateMode()
Definition RenderGraphPrivate.h:221
bool SkipUAVBarrier(FRDGViewHandle PreviousHandle, FRDGViewHandle NextHandle)
Definition RenderGraphPrivate.h:210
int32 GRDGParallelExecute
Definition RenderGraphPrivate.cpp:327
int32 GRDGParallelExecutePassTaskModeThreshold
Definition RenderGraphPrivate.cpp:363
const int32 GRDGDebugExtendResourceLifetimes
Definition RenderGraphPrivate.h:76
const int32 GRDGVerboseCSVStats
Definition RenderGraphPrivate.h:122
int32 GRDGTransientAllocator
Definition RenderGraphPrivate.cpp:249
const int32 GRDGDebugFlushGPU
Definition RenderGraphPrivate.h:75
int32 GRDGParallelExecutePassMin
Definition RenderGraphPrivate.cpp:351
const TCHAR * GetEpilogueBarriersToBeginDebugName(ERHIPipeline Pipelines)
Definition RenderGraphPrivate.h:194
int32 GRDGCullPasses
Definition RenderGraphPrivate.cpp:231
const int32 GRDGDebugDisableTransientResources
Definition RenderGraphPrivate.h:77
bool IsParallelExecuteEnabled(EShaderPlatform ShaderPlatform)
Definition RenderGraphPrivate.cpp:616
int32 GRDGParallelDestruction
Definition RenderGraphPrivate.cpp:289
int32 GRDGAsyncComputeTransientAliasing
Definition RenderGraphPrivate.cpp:267
bool IsExtendedLifetimeResource(FRDGViewableResource *Resource)
Definition RenderGraphPrivate.cpp:701
const int32 GRDGImmediateMode
Definition RenderGraphPrivate.h:79
int32 GRDGParallelExecutePassMax
Definition RenderGraphPrivate.cpp:357
bool IsAsyncComputeTransientAliasingEnabled()
Definition RenderGraphPrivate.h:242
const int32 GRDGOverlapUAVs
Definition RenderGraphPrivate.h:80
const int32 GRDGValidation
Definition RenderGraphPrivate.h:74
int32 GRDGTransientIndirectArgBuffers
RDG_ENABLE_PARALLEL_TASKS.
Definition RenderGraphPrivate.cpp:417
Definition RenderGraphResources.h:291
bool IsValid() const
Definition RenderGraphDefinitions.h:361
bool SupportsAsyncComputeTransientAliasing
Definition RHIGlobals.h:261