Обновил заголовок, проблема оказалась системной хотя изначально проявилась в Resolve, но в блендере то-же пичаль.
RX570 + Ubuntu 20.04 LTS + radeonsi + OpenCL из amdgpu-pro = ПИЧАЛЬКА :-(
Логи:
glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: X.Org (0x1002)
Device: Radeon RX 570 Series (POLARIS10, DRM 3.38.0, 5.8.0-48-generic, LLVM 11.0.0) (0x67df)
Version: 20.2.6
Accelerated: yes
Video memory: 4096MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
VBO free memory - total: 2861 MB, largest block: 2861 MB
VBO free aux. memory - total: 4027 MB, largest block: 4027 MB
Texture free memory - total: 2861 MB, largest block: 2861 MB
Texture free aux. memory - total: 4027 MB, largest block: 4027 MB
Renderbuffer free memory - total: 2861 MB, largest block: 2861 MB
Renderbuffer free aux. memory - total: 4027 MB, largest block: 4027 MB
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 4096 MB
Total available memory: 8192 MB
Currently available dedicated video memory: 2861 MB
OpenGL vendor string: X.Org
OpenGL renderer string: Radeon RX 570 Series (POLARIS10, DRM 3.38.0, 5.8.0-48-generic, LLVM 11.0.0)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.2.6
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.2.6
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.2.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
sudo lshw -c video
[sudo] password for orlovsn:
*-display
description: VGA compatible controller
product: Ellesmere [Radeon RX 470/480/570/570X/580/580X/590]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:01:00.0
logical name: /dev/fb0
version: ef
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi vga_controller bus_master cap_list rom fb
configuration: depth=32 driver=amdgpu latency=0 mode=1600x1200 visual=truecolor xres=1600 yres=1200
resources: iomemory:210-20f iomemory:200-1ff irq:159 memory:2100000000-21ffffffff memory:2080000000-20801fffff ioport:e000(size=256) memory:dfe00000-dfe3ffff memory:c0000-dffff
clinfo (c 20.50)
Number of platforms 1
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.1 AMD-APP (3224.4)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Host timer resolution 1ns
Platform Extensions function suffix AMD
Platform Name AMD Accelerated Parallel Processing
Number of devices 1
Device Name Ellesmere
Device Vendor Advanced Micro Devices, Inc.
Device Vendor ID 0x1002
Device Version OpenCL 1.2 AMD-APP (3224.4)
Driver Version 3224.4
Device OpenCL C Version OpenCL C 1.2
Device Type GPU
Device Board Name (AMD) Radeon RX 570 Series
Device Topology (AMD) PCI-E, 01:00.0
Device Profile FULL_PROFILE
Device Available Yes
В блендере CL валится так:
Read prefs: /home/orlovsn/.config/blender/2.92/config/userpref.blend
LLVM triggered Diagnostic Handler: Illegal instruction detected: VOP* instruction violates constant bus restriction
renamable $vgpr4 = V_CNDMASK_B32_e32 32768, killed $vgpr5, implicit killed $vcc, implicit $exec
LLVM failed to compile shader
radeonsi: can't compile a main shader part
LLVM triggered Diagnostic Handler: Illegal instruction detected: VOP* instruction violates constant bus restriction
renamable $vgpr2 = V_CNDMASK_B32_e32 32768, killed $vgpr2, implicit killed $vcc, implicit $exec
LLVM failed to compile shader
radeonsi: can't compile a main shader part
в Resolve инициализация проходит:
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,736 | Starting GPUDetect 1.1_2-a16
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | Done in 42 ms.
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | Detected System:
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | - OS: Linux Ubuntu 20.04.2 LTS
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | - Model: ASUSTeK TUF Z370-PRO GAMING
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | - System ID: a053c830c13a45748cf7a9521a284462
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | - CPU: Intel Core i7-8700K, 12 threads, x86-64
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | - RAM: 1.9 GiB used of 47.0 GiB
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,778 | Detected 1 GPUs:
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,888 | - "AMD Radeon RX 570 Series" (gpu:c558db0c.f91e8f0c) <- Main Display GPU
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,888 | Discrete, 103 MiB used of 3.4 GiB VRAM, PCI:1:0.0
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,888 | Matches: OpenCL, XOrg
0x7f1391b10640 | GPUDetect | INFO | 2021-03-26 19:24:46,888 | Detected 1 monitors:
0x7f1391b10640 | Main.GPUConfig | INFO | 2021-03-26 19:24:46,889 | Compute API set to automatic, defaulting to OpenCL.
0x7f1391b10640 | Main.GPUConfig | INFO | 2021-03-26 19:24:46,889 | Selected compute API: OpenCL
0x7f1391b10640 | Main.GPUConfig | INFO | 2021-03-26 19:24:46,889 | Automatic GPU Selection:
0x7f1391b10640 | Main.GPUConfig | INFO | 2021-03-26 19:24:46,889 | - "AMD Radeon RX 570 Series" (gpu:c558db0c.f91e8f0c)
0x7f1391b10640 | IO | INFO | 2021-03-26 19:24:46,889 | RED InitializeSdk with library path at /opt/resolve/libs
0x7f1391b10640 | IO | INFO | 2021-03-26 19:24:46,924 | R3DAPI 8.0.0-49A09 (20201217 Lx64S) R3DSDK 8.0.0-49A09 (20201217 Lx64D C3B1) RED OPENCL 8.0.0-50396 (20201217) [/opt/resolve/libs/] init is successful
но при первом же вызове интеропа валится так:
0x7f1391b10640 | UI.GLContext | INFO | 2021-03-26 19:24:47,371 | Creating shared OpenGL context for this thread (1 total).
0x7f1391b10640 | UI.GLContext | INFO | 2021-03-26 19:24:47,374 | Initialized OpenGL 4.6 (requested 2.0) on device 'X.Org Radeon RX 570 Series (POLARIS10, DRM 3.38.0, 5.8.0-48-generic, LLVM 11.0.0)'
0x7f1350415700 | GPU.MultiBoardMgr | INFO | 2021-03-26 19:24:47,374 | Initializing OpenCL board manager for Main Display GPU gpu:c558db0c.f91e8f0c.
0x7f133201a700 | UI.GLContext | INFO | 2021-03-26 19:24:47,374 | Creating shared OpenGL context for this thread (2 total).
0x7f133201a700 | DVIP | ERROR | 2021-03-26 19:24:47,541 | Failed to create OpenCL context:
DVIP Exception: OpenCL error
- API: OpenCL
- API Error Code: Unknown CL error. (-1000)
- Call stack:
1 resolve 0x6c9ca72
2 resolve 0x6d29bd1
3 resolve 0x6d2926a
4 resolve 0x6d282f0
5 resolve 0x6d0cea9
6 resolve 0x6d10eff
7 resolve 0x5d8d35e
8 resolve 0x5d8f420
9 resolve 0x5d8f96d
10 resolve 0x5d956c5
11 libpthread.so.0 0x7f13bdce6609
12 libc.so.6 0x7f13a0196293
==========[CRASH DUMP]==========
#TIME Fri Mar 26 19:24:47 2021 - Uptime 00:00:00 (hh:mm:ss)
#PROGRAM_NAME DaVinci Resolve Studio v17.1.0.0024 (Linux/Clang x86_64)
#BMD_ARCHITECTURE x86_64
#BMD_BUILD_UUID 912a4373-f5b5-4e54-9fc6-b9efab4f47f6
#BMD_GIT_COMMIT 5b371db7cafb184ffaac29f3843b849f765fc644
#BMD_UTIL_VERSION 17.1.0.0024
#OS Linux
/opt/resolve/bin/resolve() [0x47f2969]
/opt/resolve/bin/resolve() [0x47f1b68]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x153c0) [0x7f13bdcf23c0]
/opt/resolve/bin/resolve() [0x5d8d37e]
/opt/resolve/bin/resolve() [0x5d8f420]
/opt/resolve/bin/resolve() [0x5d8f96d]
/opt/resolve/bin/resolve() [0x5d956c5]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x9609) [0x7f13bdce6609]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x43) [0x7f13a0196293]
Signal Number = 11
Если даунгрейдить CL до 20.40 (в раче говорят 20.50 бывает поломан для полярисов а 20.45 сегфолтится на ровном месте) то всё то-же самое, цл при этом меняется:
clinfo
Number of platforms 1
Platform Name AMD Accelerated Parallel Processing
Platform Vendor Advanced Micro Devices, Inc.
Platform Version OpenCL 2.1 AMD-APP (3180.7)
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Host timer resolution 1ns
Platform Extensions function suffix AMD
Platform Name AMD Accelerated Parallel Processing
Number of devices 1
Device Name Ellesmere
Device Vendor Advanced Micro Devices, Inc.
Device Vendor ID 0x1002
Device Version OpenCL 1.2 AMD-APP (3180.7)
Driver Version 3180.7
Device OpenCL C Version OpenCL C 1.2
Device Type GPU
Device Board Name (AMD) Radeon RX 570 Series
Device Topology (AMD) PCI-E, 01:00.0
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Linker Available Yes
п.с. на полном стеке amdgpu-pro openCL работает, но немного придурковато:
Хотца обновить резолв до 17ки, два gpu на выбор - 570 в pci-e и родная блекмеджиковская 580 через tb
Пробовал следующее:
- RHEL8.3 + AMDGPU-PRO 20.50 + Resolve Studio 17.1 = максимально приближенный к официальному конфигу вариант
Резолв не может показать «вводный тур» (формально он при этом диагностит гпу и выставляет настройки по нему, но их все можно потом ручками выставить), но запускается ок.
Проблемы:
- переодически падает на ровном месте, в логах ничего толкового
- пропуск кадров при обработке - т.е. покрасили клип, начинаем его играть - в среднем раз-два за секунду проскакивает кадр без применения покраски, притом фиг бы ты с ним в просмотре, при экспорте аналогично в итоговом файле
- в fairlight не видно треков - черная дыра вместо таймлайна (известная проблема при пользовании gl из pro дров)
- Ubuntu 20.04LTS + AMDGPU-PRO 20.50:
всё то-же самое только вроде не падает особо - Ubuntu 20.04LTS + AMDGPU/RadeonSI (пробовал и с комплектными из бубунты и с не-про с сайта) + OpenCL от AMDGPU-PRO 20.50:
-
в fairlight появляется таймлайн, всё по звуку работает огонь
-
но видео не работает вообще - даже если просто кинуть на голый таймлайн генератор сигнала то его не видно нигде, в логах GLInterop не работает т.к. в самом начале инициализации OpenCL падает с «unknown error -1000»
CL накатывал через amdgpu-pro-install –opencl=legacy –headless (пробовал и rocr доставлять но смысла от этого вроде нет)
при этом clinfo говорит что используется именно амуде цл, а glxinfo говорит что используется именно X.org -
под виндой на этой-же машине всё ок, именно с 17.1 и именно с 570
-
если воткнуть 3060 и накатить дрова невидии то вроде то-же всё ок
т.е. проблема исключительно в районе amdgpu притом похоже что и с GL (черный феирлайт) и с CL (пропуск обработки)
но хотелось бы запустить эту машинку именно на 570 или 580 ибо 3060 для другой машинки