when I set CL_DEVICE_TYPE_CPU, my code will exit with “device not found” error with nvidia opencl implementation. the code worked fine on CPU/GPU with ATI opencl implementation. can anyone confirm me that this is a limitation in nvidia’s implementation (or some magic I missed)?
NVIDIA’s OpenCL does not support CPU, that’s correct behavior.
thanks for confirming this. I wish this feature be added to nvidia opencl soon.
Nvidia has no interest in implementing support for CPUs I’m affraid, they don’t produce them (unlike AMD/ATI who sells both CPUs and GPUs). They also aren’t specialists in CPU optimization.
The idea with OpenCL is that vendors will supply implementations for their hardware (ie. hardware they know and can optimize for). In the near future you’ll be able to have several implementations side-by-side.
I see. I guess what you are saying is that Intel should be the one to fill the hole. But not sure how will they overload the libOpenCL libraries if one want to write code to utilize CPU+ nvidia GPU as a heterogeneous platform.