我在 OpenCL 中设置了一个卷积核,将 228x228x3 图像与 11x11x3x96 权重进行卷积以生成 55x55x96 过滤器。
我的代码没有分配 localWorkSize 可以完美运行,但是当我分配它时,我开始收到错误
因此,我的问题是,
1) 当我将 localWorkSize 设置为 NULL 时,启动了多少线程?我猜这是隐含的,但有没有办法得到这些数字?
2)我应该如何分配 localWorkSize 以避免错误?
//When localWorkSize is NULL
size_t globalWorkSize[3] = {55,55,96};
//Passing NULL for localWorkSize argument
errNum = clEnqueueNDRangeKernel(command_queue, kernel,3,NULL,globalWorkSize, NULL,0, NULL,&event);
//WORKS PERFECTLY
// When I set localWorkSize
size_t globalWorkSize[3] = {55,55,96};
size_t localWorkSize[3] = {1,1,1};
errNum = clEnqueueNDRangeKernel(command_queue, kernel,3,NULL,globalWorkSize, localWorkSize,0, NULL,&event);
//ERROR CONTEXT CODE 999
我只是想了解当 localWorkSize 为 Null 并且描述 GlobalWorkSize 时创建了多少线程