OpenCL Queue Families extension 7/n

Update enum values to official ones
Delete redundant CL_DEVICE_NUM_QUEUE_FAMILIES_INTEL
Rename CL_QUEUE_CAPABILITY_ALL_INTEL to CL_QUEUE_DEFAULT_CAPABILITIES_INTEL
Add capabilities for cross queue events and single queue events
Add capabilities for buffer to image and image to buffer transfers

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
This commit is contained in:
Maciej Dziuban
2020-12-08 12:40:04 +00:00
committed by Compute-Runtime-Automation
parent 05ab806126
commit 384e47f438
10 changed files with 53 additions and 51 deletions

View File

@@ -539,13 +539,15 @@ bool CommandQueue::setupDebugSurface(Kernel *kernel) {
}
bool CommandQueue::validateCapability(cl_command_queue_capabilities_intel capability) const {
return this->queueCapabilities == CL_QUEUE_CAPABILITY_ALL_INTEL || isValueSet(this->queueCapabilities, capability);
return this->queueCapabilities == CL_QUEUE_DEFAULT_CAPABILITIES_INTEL || isValueSet(this->queueCapabilities, capability);
}
bool CommandQueue::validateCapabilityForOperation(cl_command_queue_capabilities_intel capability, const cl_event *waitList, const cl_event *outEvent) const {
const bool operationValid = validateCapability(capability);
const bool waitListValid = waitList == nullptr || validateCapability(CL_QUEUE_CAPABILITY_EVENT_WAIT_LIST_INTEL);
const bool outEventValid = outEvent == nullptr || validateCapability(CL_QUEUE_CAPABILITY_EVENTS_INTEL);
const bool outEventValid = outEvent == nullptr ||
validateCapability(CL_QUEUE_CAPABILITY_SINGLE_QUEUE_EVENTS_INTEL) ||
validateCapability(CL_QUEUE_CAPABILITY_CROSS_QUEUE_EVENTS_INTEL);
return operationValid && waitListValid && outEventValid;
}

View File

@@ -364,7 +364,7 @@ class CommandQueue : public BaseObject<_cl_command_queue> {
cl_command_queue_properties commandQueueProperties = 0;
std::vector<uint64_t> propertiesVector;
cl_command_queue_capabilities_intel queueCapabilities = CL_QUEUE_CAPABILITY_ALL_INTEL;
cl_command_queue_capabilities_intel queueCapabilities = CL_QUEUE_DEFAULT_CAPABILITIES_INTEL;
cl_uint queueFamilyIndex = 0;
cl_uint queueIndexWithinFamily = 0;
bool queueFamilySelected = false;