1

I've got an AMD FX-8350 CPU and a NVIDIA GeForce GTX 960 GPU on a PC with OpenSUSE Leap x86_64. I want to work with CUDA and OpenCL on it, so I first installed Cuda Toolkit 7.5. That worked fine.

Then, I installed AMD APP SDK 3.0, because I want to work OpenCL on the AMD CPU. That worked fine, it seems. $AMDAPPSDKROOT echoes /opt/AMDAPPSDK-3.0 and $LD_LIBRARY_PATH echoes /opt/AMDAPPSDK-3.0/lib/x86_64/.

After that, I compiled and ran a basic deviceQuery code (basically this one, but modified to show platform name) with the following command:

gcc -L$AMDAPPSDKROOT/lib/x86_64/ -I$AMDAPPSDKROOT/include anotherDeviceQuery.c -lOpenCL

The code compiles and executes, but the output only shows the NVIDIA GPU info.

Platform NVIDIA CUDA found.
 1. Device: GeForce GTX 960
    1.1 Hardware version: OpenCL 1.2 CUDA
    1.2 Software version: 352.39
    1.3 OpenCL C version: OpenCL C 1.2 
    1.4 Parallel compute units: 8

I can't seem to find any solution. What could the problem be?

Chris Schmich
  • 29,128
  • 5
  • 77
  • 94

1 Answers1

1

According to this web page, your AMD CPU FX-8350 is not supported by the AMD APP SDK 3.0 (OpenCL 2.0).

All the devices listed there are either GPUs or CPUs with an integrated graphics core (APU). So, I would not expect that your CPU-only will be supported in the near future, because OpenCL is mainly designed to run kernel code on the faster GPU (part).

Martin Zabel
  • 3,589
  • 3
  • 19
  • 34
  • I knew x86_64 AMD processors supported OpenCL, but, as you said, apparently AMD APP SDK 3.0 does not support said processors. So, I installed 2.8 version instead, and it worked! Thanks – Miguel Ángel Guillén Hernández Jan 25 '16 at 15:36
  • Just a comment: Apparently, when executing an OpenCL code on Linux with a supported AMD CPU, the following text will apeear each time: `Setting of real/effective user Id to 0/0 failed modprobe: FATAL: Module fglrx not found. Error! Fail to load fglrx kernel module! Maybe you can switch to root user to load kernel module directly` Yeah, AMD is wacky. – Miguel Ángel Guillén Hernández Jan 25 '16 at 18:51
  • @MiguelÁngelGuillénHernández I also tried the `fglrx` driver with my AMD GPU, but failed too. Maybe, your problem is that you actually have a NVIDIA GPU. The APP SDK works fine only on my Windows machine. – Martin Zabel Jan 25 '16 at 22:19
  • I didn't install the fglrx driver, because I don't have any AMD GPU, and I don't need it to work with an AMD CPU. My OpenCL codes work fine when using the AMD CPU, but the message always appear. – Miguel Ángel Guillén Hernández Jan 29 '16 at 21:51