Dont use blitter for local memory transfer if not available

Change-Id: I5f43113498b59e3f1b8cb280c9feeccae8ff6140
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
Bartosz Dunajski
2020-10-07 13:39:45 +02:00
committed by sys_ocldev
parent 0848d62592
commit 595f374634
4 changed files with 17 additions and 11 deletions

View File

@@ -433,14 +433,14 @@ bool KernelInfo::createKernelAllocation(const Device &device) {
auto &hwInfo = device.getHardwareInfo();
auto &hwHelper = HwHelper::get(hwInfo.platform.eRenderCoreFamily);
bool status = false;
if (kernelAllocation->isAllocatedInLocalMemoryPool() && hwHelper.isBlitCopyRequiredForLocalMemory(hwInfo)) {
auto status = BlitHelperFunctions::blitMemoryToAllocation(device, kernelAllocation, 0, heapInfo.pKernelHeap, {kernelIsaSize, 1, 1});
if (status != BlitOperationResult::Unsupported) {
return status == BlitOperationResult::Success;
}
status = (BlitHelperFunctions::blitMemoryToAllocation(device, kernelAllocation, 0, heapInfo.pKernelHeap, {kernelIsaSize, 1, 1}) == BlitOperationResult::Success);
} else {
status = device.getMemoryManager()->copyMemoryToAllocation(kernelAllocation, heapInfo.pKernelHeap, kernelIsaSize);
}
return device.getMemoryManager()->copyMemoryToAllocation(kernelAllocation, heapInfo.pKernelHeap, kernelIsaSize);
return status;
}
void KernelInfo::apply(const DeviceInfoKernelPayloadConstants &constants) {