I'm trying to get OpenCL (APP SDK 2.3) working on Debian Lenny (x86_64) using the latest driver (11.2) and a Radeon HD 6970 - to no avail. Is this card already supported by that driver? Is there a specific device to be found under /dev when the driver's properly installed and it detected the device? I can't seem to find any relevant information about the actual requirements and all SDK samples just return CL_DEVICE_NOT_FOUND errors (CLinfo just lists the CPU, not the 6970).
Any idea?
Thanks
brevilo,
I suggest you to try some other distro of linux. Lenny doesn't seem to be supported as per http://developer.amd.com/gpu/AMDAPPSDK/pages/DriverCompatibility.aspx
Hm, understood. It would be nice to know the actual requirements with regard to the kernel version and/or required libraries. The distro itself shouldn't be important. Any idea?
Update: Ubuntu is a Debian derivative. 9.10 (supported) uses kernel 2.6.31 while my system already runs 2.6.32.28 so that shouldn't be a problem...
Thanks
on my Ubuntu system i have /dev/ati and /proc/ati directory.
for me best method to install catalyst is create deb packages with --buildpkg Debian/lenny parameter.
you can also run FindNumDevices from SDK CAL samples.
and maybe this will help http://www.kanotix.com/files/install-fglrx-debian.sh
Originally posted by: nou on my Ubuntu system i have /dev/ati and /proc/ati directory.
The kernel module (driver) is loaded successfully as /proc/ati exits (see syslog excerpt), however, /dev/ati isn't which tells me that the driver doesn't recognize the device for some reason...
Originally posted by: nou
you can also run FindNumDevices from SDK CAL samples.
I just run CLinfo from the samples. While it does list the CPU device it doesn't list the GPU which makes sense considering the missing /dev/ati entry.
Cheers
[fglrx] Maximum main memory to use for locked dma buffers: 7691 MBytes. [fglrx] vendor: 1002 device: 6718 count: 1 [fglrx] ioport: bar 4, base 0xdc00, size: 0x100 [fglrx] Kernel PAT support is enabled [fglrx] module loaded - fglrx 8.82.8 [Jan 26 2011] with 1 minors
run FindNumDevices just to be sure. what about 3D accelearion. is it working? what is OpenGL version and vendor?
Originally posted by: nou run FindNumDevices just to be sure. what about 3D accelearion. is it working? what is OpenGL version and vendor?
There's no 3D acceleration available/activated since we're talking about a Linux server which doesn't even run a X server. This also means that OpenGL isn't used. However, since I installed the ATI driver I presume that it also provides the OpenGL ICD.
This is the output of FindNumDevices, as expected, it doesn't recognize any devices:
Supported CAL Runtime Version: 1.3.185 Found CAL Runtime Version: 1.4.1016 Use -? for help CAL initialized. Finding out number of devices :- Device Count = 0 CAL shutdown successful.
ok AMD APP for GPU need Xserver runnign. http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=19
Originally posted by: nou ok AMD APP for GPU need Xserver runnign. http://developer.amd.com/support/KnowledgeBase/Lists/KnowledgeBase/DispForm.aspx?ID=19
Yep, just found that one myself! Thanks anyway nou!
IMHO, this is yet another disadvantage compared to NVIDIA 😕 GPUs and OpenCL are getting more and more important in HPC where often no X server is required/installed otherwise. Guys, please get rid of all those hurdles, great hardware needs to be enabled by great software...
I purchased last week an ASUS 990FX Sabertooth and HIS 7970 FAN graphics card. Ubuntu 12.04.
I installed the proprietary AMD Catalyst drivers and then installed the AMDAPP SDK. When I make and run the samples with GL, I get this error: CL_INVALID_GL_OBJECT.
Considering I bought all this hardware in order to do opencl with it, I do hope AMD Developer support can help me with it. Thank you in advance.
I do agree with the user Brevilo about providing better Linux OpenCL support in order to narrow that hurdle gap between the catalyst driver and opencl working properly. I am quite surprised there is no opencl test case suite delivered with the catalyst driver akin to the way AMD has the fgl_glxgears, there should be an equivalent one i.e. fgl_glxOpenCLgears. This would ensure the OpenCL runs correctly as expected with the driver.
MY PREPARATION BEFORE INSTALL
----------------------------
Because of all the countless driver configurations, I followed the removing catalyst instructions here:
http://wiki.cchtml.com/index.php/Ubuntu_Precise_Installation_Guide#Removing_Catalyst.2Ffglrx
655 apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev*
I WANT to use your proprietary drivers to ensure maximum efficiency with the hardware.
MY ACTUAL INSTALL STEPS
-----------------------
I followed manual installation here:
657 apt-get install build-essential cdbs dh-make dkms execstack dh-modaliases fakeroot
658 apt-get install ia32-libs-multiarch:i386 lib32gcc1 libc6-i386
659 cd /usr ; sudo ln -svT lib /usr/lib64
660 ls -lh |more
661 cd ~/; mkdir catalyst12.4; cd catalyst12.4/
662 wget http://www2.ati.com/drivers/linux/amd-driver-installer-12-4-x86.x86_64.run
663 chmod +x amd-driver-installer-12-4-x86.x86_64.run
664 sh ./amd-driver-installer-12-4-x86.x86_64.run --buildpkg Ubuntu/precise
665 dpkg -i fglrx*.deb
666 cp /usr/lib64/switchlib* /usr/lib64/fglrx/
Those files where not there.
They are here:
668 find /usr/lib64/ -name "switch*" -print
/usr/lib64/pxpress/lib/switchlibglx
/usr/lib64/fglrx/switchlibGL
/usr/lib64/fglrx/switchlibglx
669 amdconfig --initial -f
670 reboot
676 fglrxinfo
677 fgl_glxgears
Here is where I run into problems with AMD's OPENCL AMDAPP SDK which is the reason I bought this graphics card in the first place. The samples should all run out-of-the-box:
681 cd /opt/AMDAPP/
683 cd samples/
685 cd opencl/
687 cd bin/
689 cd x86_64/
691 ./BoxFilter
Running SAT version..
Platform 0 : Advanced Micro Devices, Inc.
Platform found : Advanced Micro Devices, Inc.
Selected Platform Vendor : Advanced Micro Devices, Inc.
Device 0 : Tahiti Device ID is 0x15757c0
Executing kernel for 1 iterations
-------------------------------------------
Running Separable version..
Platform 0 : Advanced Micro Devices, Inc.
Platform found : Advanced Micro Devices, Inc.
I'm going to display all the opencl devices
Selected Platform Vendor : Advanced Micro Devices, Inc.
Device 0 : Tahiti Device ID is 0x15757c0
Executing kernel for 1 iterations
-------------------------------------------
692 ./BoxFilterGL
Running SAT version..
Platform 0 : Advanced Micro Devices, Inc.
platform:0platformId:0isPlatformEnabled():0
Platform found : Advanced Micro Devices, Inc.
displaying all opencl devices...
Selected Platform Vendor : Advanced Micro Devices, Inc.
Device 0 : Tahiti Device ID is 0x28593b0
enabling the gl/cl context...
Number of displays 1
glXCreateContextAttribsARB 0x7f92868220e0
Number of interoperable devices 1
Interoperable device found
Interop Device ID is 0x28593b0
enable of gl cl context successful...
about to create cl buffer...
Error: clCreateFromGLBuffer failed. (outputImageBuffer) Error code : CL_INVALID_GL_OBJECT
Location : BoxFilterGLSAT.cpp:463
I am looking forward to resolving this ASAP. Thank you in advance for your quick response.
this is error is caused by that OpenCL open libGL.so from /usr/lib/ which is from MESA. you need libGL.so from fglrx so try
export LD_LIBRARY_PATH=/usr/lib/fglrx
this should resolve it.
Nou,
God bless you. All the OpenCL samples are running on Ubuntu 12.04 with the HIS Radeon 7970 Fan Graphics Card.
I had assumed the Catalyst Driver and OpenCL make install would have done this "export LD_LIBRARY_PATH=/usr/lib/fglrx" on my behalf.
Perhaps the AMD support team could provide catalyst/opencl as a bundled ubuntu/debian .deb package and make this export command as part of its install and setup.
Also, perhaps adding to the error string "CL_DEVICE_NOT_FOUND"...something like "please export LD_LIBRARY_PATH environment variable" to hint how to fix it for others and save the AMD support team time.
Cheers
Message was edited by: David Marceau