Optimize first access to shared allocations

Change-Id: Ia3ce5f1e448128e7c9dfffb9ad49aaee15bdf948
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5059
This commit is contained in:
Maciej Dziuban
2020-09-14 16:39:12 +02:00
committed by sys_ocldev
parent a28e883691
commit 97ec64d22c
9 changed files with 217 additions and 49 deletions

View File

@@ -53,7 +53,7 @@ TEST_F(PageFaultManagerTest, givenUnifiedMemoryAllocWhenSynchronizeMemoryThenEnq
void *alloc = svmAllocsManager->createSVMAlloc(mockRootDeviceIndex, 256, {}, mockDeviceBitfield);
auto cmdQ = std::make_unique<CommandQueueMock>();
pageFaultManager->insertAllocation(alloc, 256, svmAllocsManager.get(), cmdQ.get());
pageFaultManager->insertAllocation(alloc, 256, svmAllocsManager.get(), cmdQ.get(), {});
pageFaultManager->baseCpuTransfer(alloc, 10, cmdQ.get());
EXPECT_EQ(cmdQ->transferToCpuCalled, 1);
@@ -84,7 +84,7 @@ TEST_F(PageFaultManagerTest, givenUnifiedMemoryAllocWhenGpuTransferIsInvokedThen
auto svmAllocsManager = std::make_unique<MockSVMAllocsManager>(memoryManager.get());
void *alloc = svmAllocsManager->createSVMAlloc(mockRootDeviceIndex, 256, {}, mockDeviceBitfield);
auto cmdQ = std::make_unique<CommandQueueMock>();
pageFaultManager->insertAllocation(alloc, 256, svmAllocsManager.get(), cmdQ.get());
pageFaultManager->insertAllocation(alloc, 256, svmAllocsManager.get(), cmdQ.get(), {});
EXPECT_EQ(svmAllocsManager->insertSvmMapOperationCalled, 0);
pageFaultManager->baseGpuTransfer(alloc, cmdQ.get());