OpenCL support difference in cuda 6 vs 7?

I wrote an open-source OpenCL code (GitHub - fangq/mcxcl: Monte Carlo eXtreme for OpenCL (MCXCL)). It has been working well on a variety of GPUs and CPUs. However, I just tested it on a system (Ubuntu 14.04) with CUDA 7 and 3 graphics cards (GTX980Ti, GTX590 and GTX730), I got clBuildProgram error.

Strangely, when build the cl program on 980Ti, clGetProgramBuildInfo returned -2 (CL_BUILD_ERROR) status, the error message is “GeForce GTX 980 Ti” and nothing else; for 590 and 730, clGetProgramBuildInfo returned -1 (CL_BUILD_NONE).

The same code compiles and runs without problem on CUDA 6.0.

anyone has experienced moving from CUDA 6 to 7? how to debug this further?


if you want to test, download the code from the above github link, cd src, run “make”. once compiled, go to “examples/quicktest/”, run “./”, this should list all valid CUs on your system; then you can run “./” (or use -G mask to specify the active CUs to be used; the mask is a 01 string, 1 means enable, 0 means disable). I got error when running

My build handling code can be found here: