- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I writing opencl program where i use "enqueue_kernel" command. this command need as parameter device queue.
if i call :
cl_command_queue_properties properties = {CL_QUEUE_PROPERTIES, CL_QUEUE_ON_DEVICE | CL_QUEUE_ON_DEVICE_DEFAULT, CL_QUEUE_SIZE, 20000,0};
cl_queue_properties queue_properties[] = {
CL_QUEUE_PROPERTIES, properties, 0 };
wsp_p->queue = clCreateCommandQueueWithProperties (wsp_p->opencl->ctx, wsp_p->opencl->device,queue_properties, &err);
queue are created , and some kernels(without enqueue_kernel() call) are executed.
but if i call
clSetKernelArg (ocl_prog->kernel, 3, sizeof(cl_command_queue),
&ocl_data->queue);
it return -70 (invalid device queue).
It seems, that always host side command queue are created
I read the number of max device queues via :
err = clGetDeviceInfo (ocldev.device, CL_DEVICE_MAX_ON_DEVICE_QUEUES,
sizeof(cl_uint), &c,
&ret_param_size);
but the result is 0.
I am wondering , because the opencl spec says :
CL_DEVICE_MAX_ON_DEVICE_QUEUES
:
The maximum number of device queues that can be created for this device in a single context.
The minimum value is 1.
attached is the log of clinfo.
any idea ?
best regards
Andreas
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, device-side enqueue and on-device queues were required by OpenCL 2.x, but this is one of the features that became optional in OpenCL 3.0. See:
- The updated description of CL_DEVICE_MAX_ON_DEVICE_QUEUES in the OpenCL 3.0 spec.
- The specific section for device-side enqueue in the OpenCL 3.0 backwards compatibility appendix.
We support most of the optional OpenCL 3.0 features on our GPUs but this is one of the few we've dropped due to engineering and maintenance complexity and lack of adoption.
If you can describe the particular use-case you are trying to solve with this feature we can try to suggest an alternative - thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We haven't heard back from you. Could you please provide an update on your issue?
Thanks & Regards,
Noorjahan.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hello,
thanks for the infos posted before.
i like to use "enqueue_kernel" command which requires queue_t parameter.
https://www.khronos.org/registry/OpenCL/specs/2.2/html/OpenCL_C.html#enqueuing-kernels
I try the examples , but it seems , that this function requires device queue.
get_default_queue() always return 0;
I wrote kernel with parameter queue_t as argument,
but when i call clSetKernelArg with the queue Argument(host queue) is not accepted.
best regards
ANdreas
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@Andreas4 wrote:
I try the examples , but it seems , that this function requires device queue.
Hi, this is correct, and we do not support creating device queues on any of our GPUs with our latest drivers. If you query CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES you should see that we return zero, indicating that we do not support any of the device-side enqueue capabilities.
Can you please describe what you are trying to solve with device-side enqueue and perhaps we can suggest an alternative?
You may also want to try our CPU OpenCL device, which still supports device-side enqueue.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We haven't heard back from you. Could you please provide an update on your issue?
Thanks & Regards,
Noorjahan.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We have not heard back from you, so we will close this inquiry now. If you need further assistance, please post a new question.
Thanks & Regards,
Noorjahan.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page