Bug 42486

Summary: Портит запуск vulkan-программ на nvidia
Product: Sisyphus Reporter: Sergey V Turchin <zerg>
Component: vulkan-amdgpuAssignee: Konstantin A Lepikhov (L.A. Kostis) <lakostis>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: antohami, lakostis, nenderus, pavel.saprykin.1988, rider, sem, sotor
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Sergey V Turchin 2022-04-18 20:09:52 MSK
После обновления до vulkan-amdgpu-2022.Q2.1-alt1 перестает запускаться, например, vkcube на драйвере nvidia. На p10 тоже.
После удаления пакета или до обновления с 2021.Q4.1-alt1 всё ок.
Ругань:
Do you have a compatible Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information.

Полагаю, что-то не то в /usr/share/vulkan/icd.d/amd_icd.json
Comment 1 Sergey V Turchin 2022-04-18 20:13:51 MSK
Собственно, прямо сейчас мне нужно решить, включать ли vulkan-amdgpu в Рабочую станцию К 10, т.к. обновление может сломать.
Comment 2 Sergey V Turchin 2022-04-18 22:01:04 MSK
Откат только vulkan-amdgpu до 2021.Q4.1-alt1 тоже лечит.
Comment 3 Sergey V Turchin 2022-04-18 22:02:44 MSK
Ещё заметил, что у nvidia записи про layer в отдельном файле в отдельном каталоге.
Например, /usr/share/vulkan/implicit_layer.d/510.60.02_nvidia_layers.json
Comment 4 Sergey V Turchin 2022-04-19 08:48:42 MSK
Кстати, я проверял _только_ на nvidia, а это может вообще _все_ остальные драйверы затронуть вплоть до intel и radeon.
Comment 5 Sergey V Turchin 2022-04-19 09:25:50 MSK
Все остальные файлы в /usr/share/vulkan/icd.d/ :
390.147_nvidia_icd.json
470.103.01_nvidia_icd.json
510.60.02_nvidia_icd.json
amd_icd.json от старого 2021.Q4.1-alt1
intel_icd.x86_64.json
radeon_icd.x86_64.json
virtio_icd.x86_64.json
не гадят.
Comment 6 Konstantin A Lepikhov (L.A. Kostis) 2022-04-19 12:43:43 MSK
(In reply to Sergey V Turchin from comment #0)
> После обновления до vulkan-amdgpu-2022.Q2.1-alt1 перестает запускаться,
> например, vkcube на драйвере nvidia. На p10 тоже.
> После удаления пакета или до обновления с 2021.Q4.1-alt1 всё ок.
> Ругань:
> Do you have a compatible Vulkan installable client driver (ICD) installed?
> Please look at the Getting Started guide for additional information.
> 
> Полагаю, что-то не то в /usr/share/vulkan/icd.d/amd_icd.json

А зачем в нормальной ситуации нужны оба ICD одновременно? Насчет "портит":
https://github.com/GPUOpen-Drivers/AMDVLK#install-driver-and-json-files

> If RADV is also installed in the system, AMDVLK driver will be enabled by default after installation. You can switch the driver between AMDVLK and RADV by environment variable AMD_VULKAN_ICD = AMDVLK or RADV.

Т.е. наверное (не проверял), можно выставить AMD_VULKAN_ICD=nvidia и это решит проблему.

(In reply to Sergey V Turchin from comment #1)
> Собственно, прямо сейчас мне нужно решить, включать ли vulkan-amdgpu в
> Рабочую станцию К 10, т.к. обновление может сломать.

Решай ) Я бы не включал, потому что есть RADV и он вполне годится в качестве основного драйвера. А vulkan-amdgpu ставят только те, кто осознает все риски.
Comment 7 Sergey V Turchin 2022-04-19 14:33:32 MSK
(Ответ для Konstantin A Lepikhov (L.A. Kostis) на комментарий #6)
> А зачем в нормальной ситуации нужны оба ICD одновременно?
В нормальной ситуации в нормальном дистрибутиве все icd бывают в одном пакете, представь себе.

> Насчет "портит":
> https://github.com/GPUOpen-Drivers/AMDVLK#install-driver-and-json-files
Всё ещё портит.

> можно выставить AMD_VULKAN_ICD=nvidia и это
> решит проблему.
Это _только_ про AMDVLK vs RADV. Ты неправильно понял.
У меня, например, с intel на nvidia переключается автоматом, как и должно быть.

> Решай ) Я бы не включал,
Ок, подумаю.

> потому что есть RADV
Есть в каком пакете?
Comment 8 Sergey V Turchin 2022-04-19 14:39:49 MSK
> можно выставить AMD_VULKAN_ICD=nvidia
До меня только что дошло. :-D
Comment 9 Konstantin A Lepikhov (L.A. Kostis) 2022-04-19 23:44:22 MSK
(In reply to Sergey V Turchin from comment #7)
> (Ответ для Konstantin A Lepikhov (L.A. Kostis) на комментарий #6)
> > А зачем в нормальной ситуации нужны оба ICD одновременно?
> В нормальной ситуации в нормальном дистрибутиве все icd бывают в одном
> пакете, представь себе.
Для AMD этих ICD более одного, так что сравнение не очень верно.

> 
> > Насчет "портит":
> > https://github.com/GPUOpen-Drivers/AMDVLK#install-driver-and-json-files
> Всё ещё портит.
> 
> > можно выставить AMD_VULKAN_ICD=nvidia и это
> > решит проблему.
> Это _только_ про AMDVLK vs RADV. Ты неправильно понял.
> У меня, например, с intel на nvidia переключается автоматом, как и должно
> быть.
Насколько я знаю, там все равно это (переключение) контролируется через переменные окружения.

> 
> > Решай ) Я бы не включал,
> Ок, подумаю.
> 
> > потому что есть RADV
> Есть в каком пакете?

Советую почитать https://www.altlinux.org/Vulkan, не зря же писали.
Comment 10 Sergey V Turchin 2022-04-20 10:04:49 MSK
(Ответ для Konstantin A Lepikhov (L.A. Kostis) на комментарий #9)
> > > А зачем в нормальной ситуации нужны оба ICD одновременно?
> > В нормальной ситуации в нормальном дистрибутиве все icd бывают в одном
> > пакете, представь себе.
> Для AMD этих ICD более одного, так что сравнение не очень верно.
Какое ещё сравнение? В свежеустановленной системе они нужны все и сразу.

> > У меня, например, с intel на nvidia переключается автоматом, как и должно
> > быть.
> Насколько я знаю, там все равно это (переключение) контролируется через
> переменные окружения.
Не знаешь. Переключается автоматом.
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1766

> > > потому что есть RADV
> > Есть в каком пакете?
> Советую почитать https://www.altlinux.org/Vulkan, не зря же писали.
Напиши, пожалуйста, название пакета из ветки p10, в котором есть RADV.

P.S.
Естественно, у тебя "WORKSFORME", зато на других видеокартах "ALWAYSFAIL" на системах, которые не заточены под одного конкретного человека.
Comment 11 Sergey V Turchin 2022-04-20 10:07:10 MSK
Короче. В p10 обновлений vulkan-amdgpu до исправления ошибки не будет.

Из сборки #298658 я его убрал, когда обнаружил.
Comment 12 Денис Назаров 2022-04-20 10:21:55 MSK
(Ответ для Sergey V Turchin на комментарий #10)
> Напиши, пожалуйста, название пакета из ветки p10, в котором есть RADV.
Если не ошибаюсь, то RADV в пакете xorg-dri-radeon (и i586-xorg-dri-radeon)
Comment 13 Konstantin A Lepikhov (L.A. Kostis) 2022-04-21 22:30:07 MSK
(In reply to Sergey V Turchin from comment #10)
> (Ответ для Konstantin A Lepikhov (L.A. Kostis) на комментарий #9)
> > > > А зачем в нормальной ситуации нужны оба ICD одновременно?
> > > В нормальной ситуации в нормальном дистрибутиве все icd бывают в одном
> > > пакете, представь себе.
> > Для AMD этих ICD более одного, так что сравнение не очень верно.
> Какое ещё сравнение? В свежеустановленной системе они нужны все и сразу.
Ты можешь и дальше тут писать чушь, я закрывать этот тикет уже не буду. Но и читать тоже )

> 
> > > У меня, например, с intel на nvidia переключается автоматом, как и должно
> > > быть.
> > Насколько я знаю, там все равно это (переключение) контролируется через
> > переменные окружения.
> Не знаешь. Переключается автоматом.
> https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1766
intel и nvidia это discrete GPU и intergated GPU. Не убедил.

> 
> > > > потому что есть RADV
> > > Есть в каком пакете?
> > Советую почитать https://www.altlinux.org/Vulkan, не зря же писали.
> Напиши, пожалуйста, название пакета из ветки p10, в котором есть RADV.
я не слежу за веткой p10, т.к. не работаю в ООО.
Comment 14 Sergey V Turchin 2022-04-22 11:08:27 MSK
(Ответ для Konstantin A Lepikhov (L.A. Kostis) на комментарий #13)
> > Какое ещё сравнение? В свежеустановленной системе они нужны все и сразу.
> Ты можешь и дальше тут писать чушь, 
Я на пару с Debian, как-минимум, а ты один бред несёшь.
http://deb.debian.org/debian/pool/main/m/mesa/mesa_22.0.1-2.diff.gz

> я закрывать этот тикет уже не буду. Но и читать тоже )
Да без разницы уже. :-D

> > Не знаешь. Переключается автоматом.
> > https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1766
> intel и nvidia это discrete GPU и intergated GPU. Не убедил.
У меня на столе 2 машины: на одной оба "discrete", а на другой, как ты пишешь. На обоих Intel основная видеокарта, но vkcube переключается на NVIDIA автоматом.
Comment 15 Pavel 2022-05-07 23:32:24 MSK
(Ответ для Sergey V Turchin на комментарий #14)
> (Ответ для Konstantin A Lepikhov (L.A. Kostis) на комментарий #13)
> > > Какое ещё сравнение? В свежеустановленной системе они нужны все и сразу.
> > Ты можешь и дальше тут писать чушь, 
> Я на пару с Debian, как-минимум, а ты один бред несёшь.
> http://deb.debian.org/debian/pool/main/m/mesa/mesa_22.0.1-2.diff.gz
> 
> > я закрывать этот тикет уже не буду. Но и читать тоже )
> Да без разницы уже. :-D
> 
> > > Не знаешь. Переключается автоматом.
> > > https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1766
> > intel и nvidia это discrete GPU и intergated GPU. Не убедил.
> У меня на столе 2 машины: на одной оба "discrete", а на другой, как ты
> пишешь. На обоих Intel основная видеокарта, но vkcube переключается на
> NVIDIA автоматом.

А что , linux научился на лету переключать со встройки на дискретку ??? Прям событие для меня . Давно правда у меня ноута не было ).
Comment 16 Sergey V Turchin 2022-05-11 14:08:17 MSK
(Ответ для Pavel на комментарий #15)
> А что , linux научился на лету переключать со встройки на дискретку ???
/usr/share/vulkan/implicit_layer.d/VkLayer_MESA_device_select.json
Comment 17 Sergey V Turchin 2023-12-04 17:05:28 MSK
А до авторов уже дошло.
С vulkan-amdgpu-2023.Q3.3 всё в порядке.
Comment 18 Sergey V Turchin 2023-12-04 17:08:12 MSK
Или это только потому, что в нём указана версия vulkan больше, чем сейчас в Сизифе?