cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

wudee
Journeyman III

OpenCL does not recognize multiple GPU cards on Linux

Hi! I've been using ATI driver 10.8 on Ubuntu 9.10, and I have a HD 5870 and a HD 5850 running together. When I use aticonfig --list-adapters I get two devices, and hwinfo also returns that there are two cards running. However, in OpenCL I can only see two devices, CPU and the 5870 GPU. In the CLInfo program I see the same problem, as well as in SimpleMultipleDevices, where there are only the results of CPU + GPU. Also, in CCC I cannot find the other card.

Moreover, I have problems for ATI drivers. When I try to update my driver, I get a fglrx(0): firegl_setSuspendResumeState failed -9 error. So I tried several driver version for different Linux kernel version. 10.9 works on kernel 2.6.31-22 and 2.6.31-22, but not properly. The display setting cannot be changed, and OpenCL cannot find valid platform. 10.7 and 10.8 does not work on kernel 2.6.31-22, but works fine on kernel 2.6.31-21.

The problem has driven me crazy for days. Hope you guys could help me. Thanks!

 

wudee

0 Likes
6 Replies
nou
Exemplar

o you run aticonfig --initial --adapter=all ?

there are some kernel update which broke fglrx driver. try find hotfix and install that.

0 Likes

wudee,

Refer to http://forums.amd.com/forum/messageview.cfm?catid=328&threadid=140074&forumid=9

0 Likes

Hi wudee,

 

After setting up all the things you just have to set one enviornment variable "export DISPLAY=:0"

After this CLInfo will show total 3 devices (2 gpu).

--Ramandeep

VizExperts

0 Likes

Thank you guys!

I solve the first problem by exporting DISPLAY=:0. It seems a basic problem, it's a shame that I didn't know this.

The driver problem remains. I will look deeper into the linux system configurations.

I do find some interesting results when I test the multiple GPUs. I use multiple contexts and multiple devices, and when I execute the kernel programs serially, the total time is more than the sum of executing them separately. So when I use two threads for the two devices, the running time is considerabally slower than any of the devices. It seems that when OpenCL tries to schedule multiple devices, it has some extra overhead. In my implementation, the two GPU can totally operate independently, so I think the performance should be better.

0 Likes

Thank you eklund.n!

The driver problem has been fixed. Hope AMD would provide more support for multiple devices in the future.

0 Likes