大家好......
我是opencl的新手,并试图探索更多@它。
openCL 程序中 local_work_size 的工作是什么以及它对性能的影响。
我正在研究一些图像处理算法,对于我的 openCL 内核,我给出了
size_t local_item_size = 1;
size_t global_item_size = (int) (ceil((float)(D_can_width*D_can_height)/local_item_size))*local_item_size; // Process the entire lists
ret = clEnqueueNDRangeKernel(command_queue, kernel, 1, NULL,&global_item_size, &local_item_size, 0, NULL, NULL);
当我改变时,对于相同的内核
size_t local_item_size = 16;
保持一切不变。
我的性能提高了大约 4-5 倍。