mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-29 00:58:39 +08:00
[20/n] Internal 4GB allocator.
- Switch to internal heap for kernel ISA allocations. - remove IH from various functions - remove IHState from CSR , IH is never dirty - ISA is no longer copied on enqueue calls. Change-Id: I0099cf2a9ebab6192ea03a74dd35f7da963fd5a5
This commit is contained in:
committed by
sys_ocldev
parent
9f07de306c
commit
9bdf01468e
@@ -71,14 +71,11 @@ HWTEST_P(ParentKernelEnqueueTest, givenParentKernelWhenEnqueuedThenDeviceQueueDS
|
||||
|
||||
MockMultiDispatchInfo multiDispatchInfo(pKernel);
|
||||
|
||||
auto ish = &getIndirectHeap<FamilyType, IndirectHeap::INSTRUCTION>(*pCmdQ, multiDispatchInfo);
|
||||
auto graphicsAllocation = pKernel->getKernelInfo().getGraphicsAllocation();
|
||||
auto kernelIsaAddress = graphicsAllocation->getGpuAddressToPatch();
|
||||
|
||||
size_t initialIsh = ish->getUsed();
|
||||
// instruction heap is aligned o 64 bytes
|
||||
initialIsh = alignUp(initialIsh, 64);
|
||||
|
||||
uint64_t lowPart = initialIsh & 0xffffffff;
|
||||
uint64_t hightPart = (initialIsh & 0xffffffff00000000) >> 32;
|
||||
uint64_t lowPart = kernelIsaAddress & 0xffffffff;
|
||||
uint64_t hightPart = (kernelIsaAddress & 0xffffffff00000000) >> 32;
|
||||
|
||||
pCmdQ->enqueueKernel(pKernel, 1, globalOffsets, workItems, workItems, 0, nullptr, nullptr);
|
||||
|
||||
@@ -95,8 +92,6 @@ HWTEST_P(ParentKernelEnqueueTest, givenParentKernelWhenEnqueuedThenDeviceQueueDS
|
||||
|
||||
const uint32_t blockFirstIndex = 1;
|
||||
|
||||
uint64_t kernelAddressPrevious = hightPart | lowPart;
|
||||
|
||||
for (uint32_t i = 0; i < blockCount; i++) {
|
||||
const KernelInfo *pBlockInfo = blockManager->getBlockKernelInfo(i);
|
||||
|
||||
@@ -117,9 +112,7 @@ HWTEST_P(ParentKernelEnqueueTest, givenParentKernelWhenEnqueuedThenDeviceQueueDS
|
||||
EXPECT_NE((uint64_t)0u, ((uint64_t)idData[blockFirstIndex + i].getKernelStartPointerHigh() << 32) | (uint64_t)idData[blockFirstIndex + i].getKernelStartPointer());
|
||||
|
||||
uint64_t kernelAddress = ((uint64_t)idData[blockFirstIndex + i].getKernelStartPointerHigh() << 32) | (uint64_t)idData[blockFirstIndex + i].getKernelStartPointer();
|
||||
|
||||
EXPECT_LT(kernelAddressPrevious, kernelAddress);
|
||||
kernelAddressPrevious = kernelAddress;
|
||||
EXPECT_EQ(pBlockInfo->getGraphicsAllocation()->getGpuAddressToPatch(), kernelAddress);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user