aletrev

Missing OpenCL for GCN-1 cards under linux

Discussion created by aletrev on Aug 11, 2018

Hello,

I've installed the latest kernel 4.17 and the latest driver amdgpu-pro-opencl-18.20.606296.

But my GCN-1 card show no support for OpenCL:

 

# clinfo

Number of platforms                           0

 

The sad things is that, if I switch to Mesa OpenCL implementation:

 

# clinfo

Number of platforms 1
  Platform Name Clover
  Platform Vendor Mesa
  Platform Version OpenCL 1.1 Mesa 17.3.9
  Platform Profile FULL_PROFILE
  Platform Extensions cl_khr_icd
  Platform Extensions function suffix MESA
  Platform Name Clover
Number of devices 1
  Device Name AMD Radeon HD 7900 Series (TAHITI / DRM 3.25.0 / 4.17.12-gentoo.s2, LLVM 5.0 2)
  Device Vendor AMD
  Device Vendor ID 0x1002
  Device Version OpenCL 1.1 Mesa 17.3.9
  Driver Version 17.3.9
  Device OpenCL C Version OpenCL C 1.1
  Device Type GPU
  Device Profile FULL_PROFILE
  Device Available Yes
  Compiler Available Yes
  Max compute units 32
  Max clock frequency 925MHz
  Max work item dimensions 3
  Max work item sizes 256x256x256
  Max work group size 256
  Preferred work group size multiple 64
  Preferred / native vector sizes
  char 16 / 16
  short 8 / 8
  int 4 / 4
  long 2 / 2
  half 8 / 8 (cl_khr_fp16)
  float 4 / 4
  double 2 / 2 (cl_khr_fp64)
  Half-precision Floating-point support (cl_khr_fp16)
  Denormals No
  Infinity and NANs Yes
  Round to nearest Yes
  Round to zero No
  Round to infinity No
  IEEE754-2008 fused multiply-add No
  Support is emulated in software No
  Single-precision Floating-point support (core)
  Denormals No
  Infinity and NANs Yes
  Round to nearest Yes
  Round to zero No
  Round to infinity No
  IEEE754-2008 fused multiply-add No
  Support is emulated in software No
  Correctly-rounded divide and sqrt operations No
  Double-precision Floating-point support (cl_khr_fp64)
  Denormals Yes
  Infinity and NANs Yes
  Round to nearest Yes
  Round to zero Yes
  Round to infinity Yes
  IEEE754-2008 fused multiply-add Yes
  Support is emulated in software No
  Address bits 64, Little-Endian
  Global memory size 3220066304 (2.999GiB)
  Error Correction support No
  Max memory allocation 2254046412 (2.099GiB)
  Unified memory for Host and Device No
  Minimum alignment for any data type 128 bytes
  Alignment of base address 32768 bits (4096 bytes)
  Global Memory cache type None
  Image support No
  Local memory type Local
  Local memory size 32768 (32KiB)
  Max number of constant args 16
  Max constant buffer size 2147483647 (2GiB)
  Max size of kernel argument 1024
  Queue properties
  Out-of-order execution No
  Profiling Yes
  Profiling timer resolution 0ns
  Execution capabilities
  Run OpenCL kernels Yes
  Run native kernels No
  Device Extensions cl_khr_byte_addressable_store 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_in
  64_extended_atomics cl_khr_fp64 cl_khr_fp16
NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform
  clCreateContext(NULL, ...) [default] No platform
  clCreateContext(NULL, ...) [other] Success [MESA]
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1)
  Platform Name Clover
  Device Name AMD Radeon HD 7900 Series (TAHITI / DRM 3.25.0 / 4.17.12-gentoo.s2, LLVM 5.0 2)
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1)
  Platform Name Clover
  Device Name AMD Radeon HD 7900 Series (TAHITI / DRM 3.25.0 / 4.17.12-gentoo.s2, LLVM 5.0 2)
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1)
  Platform Name Clover
  Device Name AMD Radeon HD 7900 Series (TAHITI / DRM 3.25.0 / 4.17.12-gentoo.s2, LLVM 5.0 2)

 

 

So, what I have to think? That Mesa developers are better than AMD developers at supporting OpenCL?

It can be awkward, in front of good support for later cards like GCN-2 and above.

If older cards will never be supported, it's better to say it. So people can search for alternative.

I'm sorry for harsh words, but I'm waiting from long time for use my old card.

 

 

TIA

Outcomes