Enable blitter support for read/write images OpenCL

Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
This commit is contained in:
Kamil Kopryk
2021-01-08 11:02:36 +00:00
committed by Compute-Runtime-Automation
parent ebbd042f1c
commit 38577bed6b
5 changed files with 7 additions and 23 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2020 Intel Corporation
* Copyright (C) 2020-2021 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
@@ -227,7 +227,7 @@ cl_command_queue_capabilities_intel ClDevice::getQueueFamilyCapabilities(EngineG
if (hwHelper.isCopyOnlyEngineType(type)) {
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_KERNEL_INTEL);
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_FILL_BUFFER_INTEL); // clEnqueueFillBuffer
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_TRANSFER_IMAGE_INTEL); // clEnqueueCopyImage
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_TRANSFER_IMAGE_INTEL); // clEnqueueReadImage, clEnqueueWriteImage, clEnqueueCopyImage
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_FILL_IMAGE_INTEL); // clEnqueueFillImage
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_TRANSFER_BUFFER_IMAGE_INTEL); // clEnqueueCopyBufferToImage
disabledProperties |= static_cast<cl_command_queue_capabilities_intel>(CL_QUEUE_CAPABILITY_TRANSFER_IMAGE_BUFFER_INTEL); // clEnqueueCopyImageToBuffer

View File

@@ -675,14 +675,13 @@ bool CommandQueue::blitEnqueueAllowed(cl_command_type cmdType) const {
}
bool CommandQueue::blitEnqueueImageAllowed(const size_t *origin, const size_t *region) {
auto blitEnqueuImageAllowed = false;
auto blitEnqueueImageAllowed = (origin[0] + region[0] <= BlitterConstants::maxBlitWidth) && (origin[1] + region[1] <= BlitterConstants::maxBlitHeight);
if (DebugManager.flags.EnableBlitterForReadWriteImage.get() != -1) {
blitEnqueuImageAllowed = DebugManager.flags.EnableBlitterForReadWriteImage.get();
blitEnqueuImageAllowed &= (origin[0] + region[0] <= BlitterConstants::maxBlitWidth) && (origin[1] + region[1] <= BlitterConstants::maxBlitHeight);
blitEnqueueImageAllowed = DebugManager.flags.EnableBlitterForReadWriteImage.get();
}
return blitEnqueuImageAllowed;
return blitEnqueueImageAllowed;
}
bool CommandQueue::isBlockedCommandStreamRequired(uint32_t commandType, const EventsRequest &eventsRequest, bool blockedQueue) const {