是clGetKernelWorkGroupInfo - CL_KERNEL_WORK_GROUP_SIZE OpenCL在clEnqueueNDRange Kernel中未指定它时使用的大小?

Sim*_*mbi 7 opencl

我读到,在排队内核时没有指定工作组大小时,OpenCL为我选择了一个.

例如:

//don't know which workgroup size OpenCl will use!
clEnqueueNDRangeKernel(queue, kernel, 1, NULL, &global_size, NULL, 0, NULL, NULL);
Run Code Online (Sandbox Code Playgroud)

有没有办法获得OpenCL在这里使用的工作组大小?工作组大小OpenCL是否选择clGetKernelWorkGroupInfo返回的大小?

先感谢您!

mfa*_*mfa 0

您可以在调用 clEnqueueNDRangeKernel 时指定大小。文档在这里。在这种情况下重要的参数是“local_work_size”。

“工作组中工作项的总数计算为 local_work_size[0] *... * local_work_size[work_dim - 1]”