1
votes

I'm using a server with a CPU Intel Xeon (E5-2620) , a Intel MIC (5110P), and a GPU Nvidia K20m. My OpenCL code was able to see each of the devices of each platforms (Nvidia and Intel).
For some reason I now can see only the Intel devices.
What i can't figure is i compile my code using Nvidia OpenCL libraries.
The content of the /etc/OpenCL/vendors/nvidia.icd file is correct.
In my code I explicitly specify the Nvidia library for OpenCL.
It seem our admin reinstall or update the driver, since then it does not work anymore.

I also tried the test code clInfo.c and got the same issue.

Here is how I built it:

gcc -w -lOpenCL clInfo.c

The output looks like that:

./a.out: /usr/lib64/nvidia/libOpenCL.so.1: no version information available (required by ./a.out)
Found 1 platform(s).
platform[0xa69cc0]: profile: FULL_PROFILE
platform[0xa69cc0]: version: OpenCL 1.2 LINUX
platform[0xa69cc0]: name: Intel(R) OpenCL
platform[0xa69cc0]: vendor: Intel(R) Corporation
... 

Can someone shed light on this?
Thank you.

1
How are you scanning for platforms in clInfo.c? What has changed about your configuration to cause it to spontaneously stop working?Tom Fenech
It's supposed to work, via the ICD mechanism, and you had it working once. Some driver install maybe stomped on the ICD. Try in-installing the missing system's driver to see if it patches up the ICD table.Dithermaster
@Tom I use clGetPlatformIDs and clGetDeviceIDs. I don't know exactly what happened, the admin reinstalled the driver I guess. I've to figure myself since he's not available now.Eric
@Dithermaster Thanks, how to check the status of the ICD. Do you mean just reinstall the Nvidia driver?Eric
@Eric Sorry, I don't know how the ICD table works under Linux. Under Windows the entries are stored in the Registry. Since NVIDIA is the one missing I'd try installing it.Dithermaster

1 Answers

1
votes

actually, I uninstalled the driver and realized that there was some conflicts.
I then installed the latest release and here we go, it's working fine now.
Thank you all for your help.