mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-04 23:56:39 +08:00
performance: don't wait for paging fence on user thread
Related-To: NEO-12197 Currently for new resources user thread must wait before submitting actual workload. With this commit, instead of waiting on user thread, request is sent to background ULLS controller thread and additional semaphore is programmed. ULLS controller will perform actual wait and signal semaphore when paging fence reaches required value. Signed-off-by: Szymon Morek <szymon.morek@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
d071fd7e9a
commit
d4c1631ac7
@@ -19,6 +19,11 @@ class Event;
|
||||
class FlushStampTracker;
|
||||
class GraphicsAllocation;
|
||||
|
||||
struct PagingFenceSemaphoreInfo {
|
||||
bool requiresBlockingResidencyHandling = true;
|
||||
uint64_t pagingFenceValue = 0u;
|
||||
};
|
||||
|
||||
struct BatchBuffer {
|
||||
BatchBuffer(GraphicsAllocation *commandBufferAllocation,
|
||||
size_t startOffset,
|
||||
@@ -53,6 +58,8 @@ struct BatchBuffer {
|
||||
void *endCmdPtr = nullptr;
|
||||
uint32_t numCsrClients = 0;
|
||||
|
||||
PagingFenceSemaphoreInfo pagingFenceSemInfo{};
|
||||
|
||||
bool hasStallingCmds = false;
|
||||
bool hasRelaxedOrderingDependencies = false;
|
||||
bool disableFlatRingBuffer = false;
|
||||
|
||||
Reference in New Issue
Block a user