I'm having this error when trying to run the BitonicSort example of the SDK2.1:
Error: clCreateContextFromType failed. Error code : CL_DEVICE_NOT_FOUND
And we learned that 4890 is only *beta* supported.
So any clue what could have caused this error and what does it mean by "beta support"?
I've also tried the HelloCL example and change line 147 to
cl_context_properties cps[3] = { CL_CONTEXT_PLATFORM, (cl_context_properties)(*i)(), 0 };
cl::Context context(CL_DEVICE_TYPE_GPU, cps, NULL, NULL, &err);
and the run of this gives this error:
HelloCL!
Getting Platform Information
Creating a context AMD platform
Context::Context() failed (-1)
Thanks!
what is print CLInfo and FindNumDevices
pdgetrf,
Did you install the Catalyst driver?
Which OS are you using?
this is what uname tells me
Linux 2.6.18-164.15.1.el5 #1 SMP Wed Mar 17 11:30:06 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
Did you install drivers? Please post output of samples CLInfo and FindNumDevices.
yes, the Catalyst driver is installed
this is CLINfo's output:
xx : dasher ~/das-home/lib/ati-stream-sdk-v2.1-lnx64/samples/opencl/cpp_cl/app/CLInfo> make <- 11:42AM
install -D build/debug/x86_64/CLInfo ../../../../../samples/opencl/bin/x86_64/CLInfo
xx : Dasher ~/das-home/lib/ati-stream-sdk-v2.1-lnx64/samples/opencl/cpp_cl/app/CLInfo> build/debug/x86_64/CLInfo <- 11:43AM
Number of platforms: 1
Platform Profile: FULL_PROFILE
Platform Version: OpenCL 1.0 ATI-Stream-v2.1 (145)
Platform Name: ATI Stream
Platform Vendor: Advanced Micro Devices, Inc.
Platform Extensions: cl_khr_icd
Platform Name: ATI Stream
Number of devices: 1
Device Type: CL_DEVICE_TYPE_CPU
Device ID: 4098
Max compute units: 4
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: 2493Mhz
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: No
Round to +ve and infinity: No
IEEE754-2008 fused multiply-add: No
Cache type: Read/Write
Cache line size: 0
Cache size: 0
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: No
Queue properties:
Out-of-Order: No
Profiling : Yes
Platform ID: 0x2ab1bbbe3228
Name: Intel(R) Core(TM)2 Quad CPU Q9300 @ 2.50GHz
Vendor: GenuineIntel
Driver version: 1.1
Profile: FULL_PROFILE
Version: OpenCL 1.0 ATI-Stream-v2.1 (145)
Extensions: cl_khr_icd 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
ok OpenCL is seems working. but there is problem with driver.
pdgetrf,
Which driver are you using? Try doing a clean reinstall.
Which flavor of Linux are you using?
just installed the 10.5 version of the Catalyst driver and still seeing exactly the same problem, and the flavor of linux is redhat...
okay, sorry the linux is actually CentOS 5.4.
Is there any way to verify the driver is installed correctly?
pdgetrf,
If driver gets installed properly, FindNumDevices will return a non-zer value(# of GPUs present) and CLInfo sample will show information for GPU also.
FindNumDevices returns 0 and and CLInfo still only prints out CPU info...and I tried SimpleGL and it doesn't work either:
./build/debug/x86_64/SimpleGL
freeglut (./build/debug/x86_64/SimpleGL): failed to open display ''
another suspect is that CentOS is not well supported by the driver...
You should not be having any problem running OpenCL on 4890. However CentOS is not an officially supported flavor and might cause issues.
This is FindNumDevice output:
xx : Dasher ~/das-home/lib/ati-stream-sdk-v2.1-lnx64/samples/cal/tutorial/FindNumDevices> build/debug/x86_64/FindNumDevices <- 11:41AM
Supported CAL Runtime Version: 1.3.185
Found CAL Runtime Version: 1.4.635
Use -? for help
CAL initialized.
Finding out number of devices :-
Device Count = 0
CAL shutdown successful.
And this is CLInfo output:
Number of platforms: 1
Platform Profile: FULL_PROFILE
Platform Version: OpenCL 1.0 ATI-Stream-v2.1 (145)
Platform Name: ATI Stream
Platform Vendor: Advanced Micro Devices, Inc.
Platform Extensions: cl_khr_icd
And after this only CL_DEVICE_TYPE_CPU type info was printed.