I'm very beginner with OpenCL. To learn the basics of the library I tried to execute the first program at the following URL :
https://www.olcf.ornl.gov/tutorials/opencl-vector-addition/
I previously linked the openCL include and libraries from the NVIDIA GPU Computing SDK and of course the compilation of the program is ok. However if I run it the execution fails within the clCreateContext function.
// Bind to platform
err = clGetPlatformIDs(1, &cpPlatform, NULL);
// Get ID for the device
err = clGetDeviceIDs(cpPlatform, CL_DEVICE_TYPE_GPU, 1, &device_id, NULL);
// Create a context
context = clCreateContext(0, 1, &device_id, NULL, NULL, &err);
The problem comes from the previous method clGetDeviceIDs which seems not feel the device_id variable (if a replace in the function clGetDeviceIDs the flag CL_DEVICE_TYPE_GPU by CL_DEVICE_TYPE_CPU the program works perfectly). Nevertheless, my graphic card drivers have been updated. According to the execution, it would appear that I don't have any GPU device on my computer. It's very strange. Do you think my drivers are not correct and there is a miss of dependencies? I'm really lost. Does anyone can help me, please?
Thanks a lot in advance for your help.