Schrödingers OpenCL - it is dead and alive at the same time

Hello,
I've got a strange issue. According to blender and the clinfo, I don't have an OpenCL plattform.
On the other hand DaVinci Resolve works very well. It needs the OpenCL and the AMDPro OpenCL libs/plattforms to even start.
My HW: AMD 5800X + AMD Radeon 6800XT

Blender only shows greyed nVidia options (Render-Settings) and just allows me to CPU-Render. Not even the depreached OpenCL is listed nor the HIP. Means no GPU rendering for me :sob:

*Side note: On Blender 3.1.2 from the community repository. No fancy downloads and self made buildpkg. And I know that HIP implementation might be coming in the future for Linux but OpenCL is missing complelte and the clinfo confirms it O.o

My attempts to resolve that issue:

  • Re-installed the AMD drivers
  • Manually added amd-opencl and amdpro-opencl (rebooted after every added package to be sure to get it initialized.)
  • went through all the ArchLinux-Wikis who (mostly) show all the packages. Which I've tried and I kept an eye on conflict errors. I had none. Also my driver is up to date since I do a daily pacman -Syu. And have them installed properly as you can see in clinfo below
  • reinstalled blender after adding opencl-drivers.
  • always checking if DaVinci Resolve runs (critical to me) - Resolve even recognizes two 6800XT due to my driver bloat xD - I could sell one card hahaha how to make money LOL

Currently it is the "most bloated" (Number of plattforms 2 :rofl:) state as I have several drivers in the row. And yet nothing works....

Why I'm creating that topic/thread
I haven't found anything familiar to my issue on this forum. Except some strange issue with a package regarding crypto mining... Furthermore the ArchLinux Wiki doesn't helped either. I assume a conceptional issue on my side :exploding_head:

I'd be glad about any advice.

(Next in this post: prompt from clinfo and the ofc garuda-inxi:

clinfo:

Number of platforms                               2
Platform Name                                   Clover
Platform Vendor                                 Mesa
Platform Version                                OpenCL 1.1 Mesa 22.0.1
Platform Profile                                FULL_PROFILE
Platform Extensions                             cl_khr_icd
Platform Extensions function suffix             MESA

Platform Name                                   AMD Accelerated Parallel Processing
Platform Vendor                                 Advanced Micro Devices, Inc.
Platform Version                                OpenCL 2.2 AMD-APP (3406.0)
Platform Profile                                FULL_PROFILE
Platform Extensions                             cl_khr_icd cl_amd_event_callback 
Platform Extensions function suffix             AMD
Platform Host timer resolution                  1ns

Platform Name                                   Clover
Number of devices                                 1
Device Name                                     AMD Radeon RX 6800 XT (sienna_cichlid, LLVM 13.0.1, DRM 3.44, 5.17.1-zen1-1-zen)
Device Vendor                                   AMD
Device Vendor ID                                0x1002
Device Version                                  OpenCL 1.1 Mesa 22.0.1
Device Numeric Version                          0x401000 (1.1.0)
Driver Version                                  22.0.1
Device OpenCL C Version                         OpenCL C 1.1 
Device Type                                     GPU
Device Profile                                  FULL_PROFILE
Device Available                                Yes
Compiler Available                              Yes
Max compute units                               72
Max clock frequency                             2575MHz
Max work item dimensions                        3
Max work item sizes                             256x256x256
Max work group size                             256
=== CL_PROGRAM_BUILD_LOG ===
fatal error: cannot open file '/usr/share/clc/gfx1030-amdgcn-mesa-mesa3d.bc': No such file or directory
Preferred work group size multiple (kernel)     <getWGsizes:1504: create kernel : error -46>
Preferred / native vector sizes                 
char                                                16 / 16      
short                                                8 / 8       
int                                                  4 / 4       
long                                                 2 / 2       
half                                                 0 / 0        (n/a)
float                                                4 / 4       
double                                               2 / 2        (cl_khr_fp64)
Half-precision Floating-point support           (n/a)
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                              17179869184 (16GiB)
Error Correction support                        No
Max memory allocation                           13743895347 (12.8GiB)
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                        67108864 (64MiB)
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
ILs with version                              (n/a)
Built-in kernels with version                   (n/a)
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_int64_extended_atomics cl_khr_fp64 cl_khr_extended_versioning
Device Extensions with Version                  cl_khr_byte_addressable_store                               0x400000 (1.0.0)
cl_khr_global_int32_base_atomics                            0x400000 (1.0.0)
cl_khr_global_int32_extended_atomics                        0x400000 (1.0.0)
cl_khr_local_int32_base_atomics                             0x400000 (1.0.0)
cl_khr_local_int32_extended_atomics                         0x400000 (1.0.0)
cl_khr_int64_base_atomics                                   0x400000 (1.0.0)
cl_khr_int64_extended_atomics                               0x400000 (1.0.0)
cl_khr_fp64                                                 0x400000 (1.0.0)
cl_khr_extended_versioning                                  0x400000 (1.0.0)

Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 1
Device Name                                     gfx1030
Device Vendor                                   Advanced Micro Devices, Inc.
Device Vendor ID                                0x1002
Device Version                                  OpenCL 2.0 
Driver Version                                  3406.0 (HSA1.1,LC)
Device OpenCL C Version                         OpenCL C 2.0 
Device Type                                     GPU
Device Board Name (AMD)                         AMD Radeon RX 6800 XT
Device PCI-e ID (AMD)                           0x73bf
Device Topology (AMD)                           PCI-E, 0000:2f:00.0
Device Profile                                  FULL_PROFILE
Device Available                                Yes
Compiler Available                              Yes
Linker Available                                Yes
Max compute units                               36
SIMD per compute unit (AMD)                     4
SIMD width (AMD)                                32
SIMD instruction width (AMD)                    1
Max clock frequency                             2575MHz
Graphics IP (AMD)                               10.3
Device Partition                                (core)
Max number of sub-devices                     36
Supported partition types                     None
Supported affinity domains                    (n/a)
Max work item dimensions                        3
Max work item sizes                             1024x1024x1024
Max work group size                             256
Preferred work group size (AMD)                 256
Max work group size (AMD)                       1024
Preferred work group size multiple (kernel)     32
Wavefront width (AMD)                           32
Preferred / native vector sizes                 
char                                                 4 / 4       
short                                                2 / 2       
int                                                  1 / 1       
long                                                 1 / 1       
half                                                 1 / 1        (cl_khr_fp16)
float                                                1 / 1       
double                                               1 / 1        (cl_khr_fp64)
Half-precision Floating-point support           (cl_khr_fp16)
Denormals                                     No
Infinity and NANs                             No
Round to nearest                              No
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                                     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
Correctly-rounded divide and sqrt operations  Yes
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                              17163091968 (15.98GiB)
Global free memory (AMD)                        16760832 (15.98GiB) 16760832 (15.98GiB)
Global memory channels (AMD)                    8
Global memory banks per channel (AMD)           4
Global memory bank width (AMD)                  256 bytes
Error Correction support                        No
Max memory allocation                           14588628168 (13.59GiB)
Unified memory for Host and Device              No
Shared Virtual Memory (SVM) capabilities        (core)
Coarse-grained buffer sharing                 Yes
Fine-grained buffer sharing                   Yes
Fine-grained system sharing                   No
Atomics                                       No
Minimum alignment for any data type             128 bytes
Alignment of base address                       1024 bits (128 bytes)
Preferred alignment for atomics                 
SVM                                           0 bytes
Global                                        0 bytes
Local                                         0 bytes
Max size for global variable                    14588628168 (13.59GiB)
Preferred total size of global vars             17163091968 (15.98GiB)
Global Memory cache type                        Read/Write
Global Memory cache size                        16384 (16KiB)
Global Memory cache line size                   64 bytes
Image support                                   Yes
Max number of samplers per kernel             29631
Max size for 1D images from buffer            134217728 pixels
Max 1D or 2D image array size                 8192 images
Base address alignment for 2D image buffers   256 bytes
Pitch alignment for 2D image buffers          256 pixels
Max 2D image size                             16384x16384 pixels
Max 3D image size                             16384x16384x8192 pixels
Max number of read image args                 128
Max number of write image args                8
Max number of read/write image args           64
Max number of pipe args                         16
Max active pipe reservations                    16
Max pipe packet size                            1703726280 (1.587GiB)
Local memory type                               Local
Local memory size                               65536 (64KiB)
Local memory size per CU (AMD)                  65536 (64KiB)
Local memory banks (AMD)                        32
Max number of constant args                     8
Max constant buffer size                        14588628168 (13.59GiB)
Preferred constant buffer size (AMD)            16384 (16KiB)
Max size of kernel argument                     1024
Queue properties (on host)                      
Out-of-order execution                        No
Profiling                                     Yes
Queue properties (on device)                    
Out-of-order execution                        Yes
Profiling                                     Yes
Preferred size                                262144 (256KiB)
Max size                                      8388608 (8MiB)
Max queues on device                            1
Max events on device                            1024
Prefer user sync for interop                    Yes
Number of P2P devices (AMD)                     0
Profiling timer resolution                      1ns
Profiling timer offset since Epoch (AMD)        0ns (Thu Jan  1 01:00:00 1970)
Execution capabilities                          
Run OpenCL kernels                            Yes
Run native kernels                            No
Thread trace supported (AMD)                  No
Number of async queues (AMD)                  8
Max real-time compute queues (AMD)            8
Max real-time compute units (AMD)             36
printf() buffer size                            4194304 (4MiB)
Built-in kernels                                (n/a)
Device Extensions                               cl_khr_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_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_media_ops cl_amd_media_ops2 cl_khr_image2d_from_buffer cl_khr_subgroups cl_khr_depth_images cl_amd_copy_buffer_p2p cl_amd_assembly_program


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 RX 6800 XT (sienna_cichlid, LLVM 13.0.1, DRM 3.44, 5.17.1-zen1-1-zen)
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 RX 6800 XT (sienna_cichlid, LLVM 13.0.1, DRM 3.44, 5.17.1-zen1-1-zen)
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 RX 6800 XT (sienna_cichlid, LLVM 13.0.1, DRM 3.44, 5.17.1-zen1-1-zen)

My inxi:

System:
Kernel: 5.17.1-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 11.2.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=de43fccd-7f1e-439e-9eca-59d05e719941 rw [email protected]
quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
loglevel=3
Desktop: KDE Plasma v: 5.24.4 tk: Qt v: 5.15.3 info: latte-dock
wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Desktop Mobo: Micro-Star model: MPG X570 GAMING PLUS (MS-7C37) v: 2.0
serial: <superuser required> UEFI: American Megatrends LLC. v: A.F0
date: 12/16/2021
CPU:
Info: model: AMD Ryzen 7 5800X bits: 64 type: MT MCP arch: Zen 3
family: 0x19 (25) model-id: 0x21 (33) stepping: 0 microcode: 0xA201016
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB desc: 8x512 KiB
L3: 32 MiB desc: 1x32 MiB
Speed (MHz): avg: 3719 high: 4341 min/max: 2200/4850 boost: enabled
scaling: driver: acpi-cpufreq governor: performance cores: 1: 3624 2: 3626
3: 3637 4: 4341 5: 3648 6: 3835 7: 3626 8: 3717 9: 3859 10: 3660 11: 3640
12: 3720 13: 3653 14: 3632 15: 3673 16: 3624 bogomips: 121610
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities:
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Retpolines, IBPB: conditional, IBRS_FW,
STIBP: always-on, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: AMD Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] vendor: ASUSTeK
driver: amdgpu v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16 ports:
active: DP-2,HDMI-A-1 empty: DP-1,DP-3 bus-ID: 2f:00.0 chip-ID: 1002:73bf
class-ID: 0300
Display: x11 server: X.Org v: 1.21.1.3 compositor: kwin_x11 driver: X:
loaded: amdgpu unloaded: modesetting,radeon alternate: fbdev,vesa
gpu: amdgpu display-ID: :0 screens: 1
Screen-1: 0 s-res: 3840x1080 s-dpi: 96 s-size: 1016x285mm (40.00x11.22")
s-diag: 1055mm (41.54")
Monitor-1: DP-2 mapped: DisplayPort-1 pos: primary,left model: Asus VS248
serial: <filter> built: 2012 res: 1920x1080 hz: 60 dpi: 92 gamma: 1.2
size: 531x299mm (20.91x11.77") diag: 609mm (24") ratio: 16:9 modes:
max: 1920x1080 min: 720x400
Monitor-2: HDMI-A-1 mapped: HDMI-A-0 pos: primary,right model: Asus VS248
serial: <filter> built: 2012 res: 1920x1080 hz: 60 dpi: 92 gamma: 1.2
size: 531x299mm (20.91x11.77") diag: 609mm (24") ratio: 16:9 modes:
max: 1920x1080 min: 720x400
OpenGL: renderer: AMD Radeon RX 6800 XT (sienna_cichlid LLVM 13.0.1 DRM
3.44 5.17.1-zen1-1-zen)
v: 4.6 Mesa 22.0.1 direct render: Yes
Audio:
Device-1: AMD Navi 21/23 HDMI/DP Audio driver: snd_hda_intel v: kernel
pcie: gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 2f:00.1 chip-ID: 1002:ab28
class-ID: 0403
Device-2: AMD Starship/Matisse HD Audio vendor: Micro-Star MSI
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 31:00.4 chip-ID: 1022:1487 class-ID: 0403
Sound Server-1: ALSA v: k5.17.1-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 15.0 running: no
Sound Server-3: PipeWire v: 0.3.49 running: yes
Network:
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: Micro-Star MSI X570-A PRO driver: r8169 v: kernel pcie: gen: 1
speed: 2.5 GT/s lanes: 1 port: d000 bus-ID: 27:00.0 chip-ID: 10ec:8168
class-ID: 0200
IF: enp39s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Drives:
Local Storage: total: 946.03 GiB used: 242.97 GiB (25.7%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Crucial model: CT1000P5SSD8
size: 931.51 GiB block-size: physical: 512 B logical: 512 B
speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter> rev: P4CR311
temp: 36.9 C scheme: GPT
ID-2: /dev/sda maj-min: 8:0 type: USB vendor: Generic model: Flash Disk
size: 14.51 GiB block-size: physical: 512 B logical: 512 B type: SSD
serial: <filter> rev: 8.07 scheme: MBR
SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
Partition:
ID-1: / raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 242.97 GiB (26.1%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 576 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 242.97 GiB (26.1%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 242.97 GiB (26.1%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 242.97 GiB (26.1%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 62.78 GiB used: 2.2 MiB (0.0%)
priority: 100 dev: /dev/zram0
Sensors:
System Temperatures: cpu: N/A mobo: N/A gpu: amdgpu temp: 35.0 C
mem: 32.0 C
Fan Speeds (RPM): N/A gpu: amdgpu fan: 0
Info:
Processes: 360 Uptime: 40m wakeups: 0 Memory: 62.78 GiB used: 4 GiB (6.4%)
Init: systemd v: 250 tool: systemctl Compilers: gcc: 11.2.0 clang: 13.0.1
Packages: pacman: 2012 lib: 578 Shell: fish v: 3.4.1 running-in: konsole
inxi: 3.3.14
Garuda (2.6.1-1):
System install date:     2022-04-05
Last full system update: 2022-04-07
Is partially upgraded:   No
Relevant software:       NetworkManager
Windows dual boot:       No/Undetected
Snapshots:               Snapper
Failed units:            bluetooth-autoconnect.service

I wasn't sure if this is ok to put this in 'unsupported' but I assume it to be since Garuda devs ain't developing gpu drivers nor are they developing on blender. Therefore I think it is about usnupported software.

Thanks for your time!

Bruce

P.S.: For anyone who might not know, Schrödinger is a noble price winner from Austria :smiley: - and Schrödingers Cat is his most famous analogy :austria: :black_cat:

3 Likes

According to

https://wiki.blender.org/wiki/Source/Render/Cycles/OpenCL

And according to

https://docs.blender.org/manual/en/latest/render/cycles/gpu_rendering.html

HIP (AMD as a GPU render device) is only supported under Windows. :angry:

3 Likes

thank you for that information.

Yeah I knew HIP will get implemented later as the new AMD drivers are available for Linux.
But I didn't recognize that in the meanwhile OpenCL got still dumped O_o

Oof then I need to wait :sob:

2 Likes

Perhaps you can install an older version of Blender as a flatpak?

1 Like

Sure, but there is an issue. Recent version of blender had major upgrades on geometry nodes. And I'd loose the functionality (or depending on the version the whole feature) of geometry nodes. And I'm currently in the middle of learning how they work :sob:

As @jonathon found out there is no way (yet..?) to circumvent that issue. *sniffs

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.