sbike

SDK v2.2 with openCL 1.1 support on ubuntu lucid

Discussion created by sbike on Aug 13, 2010
Latest reply on Aug 13, 2010 by genaganna
Trying to get the new SDK working on lucid.

Anyone have the new sdk working with ubuntu lucid (10.04) working?  I have a radeon 5770.  amdcccle reports my card as a "ATI Radeon HD 5700 Series".  
Said card is listed as supported by the new SDK. 

I got close, I used the ATI_Stream_SDK_Installation_Note.fm docs and ran:

$ export ATISTREAMSDKROOT=~/src/ati-stream-sdk-v2.2-lnx64

$ export ATISTREAMSDKSAMPLESROOT=~/src/ati-stream-sdk-v2.2-lnx64

$ export LD_LIBRARY_PATH=$ATISTREAMSDKROOT/lib/x86:$ATISTREAMSDKROOT/lib/x86_64:$LD_LIBRARY_PATH
# cd /
# tar xfz /tmp/icd-registration.tgz
That worked:
$ ls /etc/OpenCL/vendors/
atiocl32.icd  atiocl64.icd
The docs don't mention it but you will likely need:
# apt-get install mesa-common-dev libglu1-xorg-dev libglut3-dev
I did a make which compiled a ton of stuff but failed with:
g++ -o build/debug/x86_64/cal_idct build/debug/x86_64//cal_idct.o build/debug/x86_64//Timer.o build/debug/x86_64//Samples.o -lpthread -ldl -L/usr/X11R6/lib   -laticalrt  -laticalcl    -L../../../../lib/x86_64  -L../../../../TempSDKUtil/lib/x86_64  
/usr/bin/ld: cannot find -laticalrt
Is there some missing environment variable not mentioned in the docs?
$ find /usr/lib/fglrx/ -name 'libatical*'
/usr/lib/fglrx/libaticaldd.so
/usr/lib/fglrx/libaticalcl.so
/usr/lib/fglrx/libaticalrt.so
Quite a few things did compile, like:
$ cd $ATISTREAMSDKROOT/samples/opencl/bin/x86_64
$ ./HelloCL
HelloCL!
Getting Platform Information
Creating a context AMD platform
Getting device info
Loading and compiling CL source
Running CL program
Done
Passed!
$ ./CLInfo 
Number of platforms: 1
  Platform Profile: FULL_PROFILE
  Platform Version: OpenCL 1.1 ATI-Stream-v2.2 (302)
  Platform Name: ATI Stream
  Platform Vendor: Advanced Micro Devices, Inc.
  Platform Extensions: cl_khr_icd cl_amd_event_callback
  Platform Name: ATI Stream
Number of devices: 1
  Device Type: CL_DEVICE_TYPE_CPU
  Device ID: 4098
  Max compute units: 8
  Max work items dimensions: 3
    Max work items[0]: 1024
    Max work items[1]: 1024
    Max work items[2]: 1024
  Max work group size: 1024
  Preferred vector width char: 16
  Preferred vector width short: 8
  Preferred vector width int: 4
  Preferred vector width long: 2
  Preferred vector width float: 4
  Preferred vector width double: 0
  Max clock frequency: 1200Mhz
  Address bits: 64
  Max memory allocation: 1073741824
  Image support: No
  Max size of kernel argument: 4096
  Alignment (bits) of base address: 1024
  Minimum alignment (bytes) for any datatype: 128
  Single precision floating point capability
    Denorms: Yes
    Quiet NaNs: Yes
    Round to nearest even: Yes
    Round to zero: Yes
    Round to +ve and infinity: Yes
    IEEE754-2008 fused multiply-add: No
  Cache type: Read/Write
  Cache line size: 64
  Cache size: 32768
  Global memory size: 3221225472
  Constant buffer size: 65536
  Max number of constant args: 8
  Local memory type: Global
  Local memory size: 32768
  Profiling timer resolution: 1
  Device endianess: Little
  Available: Yes
  Compiler available: Yes
  Execution capabilities:  
    Execute OpenCL kernels: Yes
    Execute native function: Yes
  Queue properties:  
    Out-of-Order: No
    Profiling : Yes
  Platform ID: 0x7fca6acceb20
  Name: Intel(R) Xeon(R) CPU           X3450  @ 2.67GHz
  Vendor: GenuineIntel
  Driver version: 2.0
  Profile: FULL_PROFILE
  Version: OpenCL 1.1 ATI-Stream-v2.2 (302)
  Extensions: cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_device_fission cl_amd_device_attribute_query cl_amd_printf 
Passed!
But nothing else seems to work:
$ ./URNG
Error: clCreateContextFromType failed. Error code : CL_DEVICE_NOT_FOUND
$ ./HistogramError: clCreateContextFromType failed. Error code : CL_DEVICE_NOT_FOUND
$ ./Mandelbrot
Error: clCreateContextFromType failed. Error code : CL_DEVICE_NOT_FOUND
$ ./SobelFilter
Error: clCreateContextFromType failed. Error code : CL_DEVICE_NOT_FOUND
Ideas?

 

Outcomes