Task Graph scheduler behavior during concurrent async loading in UE5.x
0 reputation · 13 May 2023, 00:31 UTC
Dependency Resolution under High Load
Unreal Engine 5.x utilizes a task-based architecture where the Task Graph system manages parallel execution across worker threads. While this allows for efficient distribution of physics and animation logic, high-concurrency scenarios—specifically during the simultaneous loading of multiple actors—can introduce non-deterministic frame latency jitter.
Worker Thread Contention
The U-registration phase of Async Loading requires synchronization with the Game Thread. When the worker thread pool is saturated with concurrent requests, high-priority tasks may experience starvation, leading to unpredictable spikes in DeltaTime that are distinct from standard frame-budget overruns.
Given the non-deterministic nature of the scheduler when resolving complex dependency chains, what mechanisms determine task priority when the worker pool is fully saturated? Is there a documented configuration to mitigate thread starvation specifically during concurrent asset U-registration?