The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции шейдеров ACO"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции шейдеров ACO"  +/
Сообщение от opennews (??), 30-Окт-25, 08:22 
Marek Olšák, разработчик видеодрайверов из компании AMD, добавил в кодовую базу Mesa изменение, переводящее драйвер RadeonSI на использование по умолчанию промежуточного представления (IR) шейдеров  NIR и бэкенда компиляции шейдеров ACO, развиваемого компанией Valve в качестве альтернативы компилятору шейдеров LLVM. Бэкенд ACO нацелен на обеспечение генерации кода, насколько это возможно оптимального для шейдеров игровых приложений, а также на достижение очень высокой скорости компиляции...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=64141

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (1), 30-Окт-25, 08:22 
Отличия в работе с amdgpu есть, в плане OpenGL? Как раз имеется пограничный APU с поддержкой как radeonsi, так и amdgpu. Проверял на Linux и Windows, так на первом OpenGL выдаёт заметно меньше кадров в секунду, нежели он же, не говоря уже об DirectX, во втором. Проверял на UT99.
Ответить | Правка | Наверх | Cообщить модератору

2. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +8 +/
Сообщение от kravich (ok), 30-Окт-25, 09:25 
>UT99

Ты же понимаешь, что эта игра ни разу не может быть сколько нибудь репрезентативным бенчмарком для относительно современной видеокарты в 2025 году?

Ответить | Правка | Наверх | Cообщить модератору

7. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (7), 30-Окт-25, 10:32 
Если быть точным, я имею ввиду APU E1-2100 с HD 8210, это уже в 2013 было слабо. К тому же, использовался нативный UT99.
Ответить | Правка | Наверх | Cообщить модератору

10. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Bob (??), 30-Окт-25, 11:35 
Большинство плюшек только для +- актуального железа.

Местами даже архитектура Polaris уже в пролёте.

Ответить | Правка | Наверх | Cообщить модератору

20. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от 123 (??), 30-Окт-25, 14:52 
Polaris уже 9 лет стукнуло, GCN 4. Вот GCN 5 Vega еще будут держать, за счет igpu в зоопарке ноутбучного железа apu ryzen.
Ответить | Правка | Наверх | Cообщить модератору

32. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (-), 30-Окт-25, 21:26 
> Polaris уже 9 лет стукнуло, GCN 4. Вот GCN 5 Vega еще
> будут держать, за счет igpu в зоопарке ноутбучного железа apu ryzen.

А чего вам не хватает то? Там вулкан - одинаковый на всю толпу чуть не до GCN 1.x ажно. Валв между прочим решил кажется всерьех допинать AMDGPU до работы с GCN 1.x по дефолту.

В ядре 6.19 будет - работа DC (внутренняя либа в ядре для работы с display controller) работающий с GCN 1.x и даже - аналоговыми выходами. И кстати для некоторых более поздних тоже. Чего DC изначально отродясь не умел. Пока Valve не пришел и не запилил сие.

В итоге GCN 1.x будут вероятно юзать всю ту же инфру что и остальные AMDGPU по дефолту. Вулканы, генераторы шейдеров и проч там опять же такие же как и на всех остальных AMDGPU. Так что вот на что AMDшные юзеря точно не могут жаловаться так это на то что их прокатили с старыми видяхами. Нифига, поддержка просто топчик. Лучше чем у остальных. В GCN 1.x вулкан даже на коробке не обещали, только mantle. А он там между прочим такой же как и на всех остальных.

Ответить | Правка | Наверх | Cообщить модератору

24. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 30-Окт-25, 18:04 
> Большинство плюшек только для +- актуального железа.

Сабжевое изменение - для RadeonSI в целом. И как намекает название - это аж начиная с Southern Islands. Т.е. - GCN1.0 и все что новее этого.

Более того. Насчет большинства плюшек господа не правы. В Valve кажется серьезно нацелились ранние GCN по дефолту на AMDGPU перевести. Они основательно допилили AMDGPU устраняя недостатки модуля AMDGPU vs Radeon для GCN 1.0/1.1 так что ВНЕЗАПНО скоро можно их кажется будет цеплять AMDGPU вместо Radeon как "default" а не "experimental". Они даже запилили в AMD'шной DC аналоговые выходы GCN 1.x и некоторых чуть более поздних с DVI-I выходом. И теперь GCN 1.x @ AMDGPU смогут выводить графон через DC (некая суб-библа в ядре для ADM'шных коннекторов видео и работы с дисплеями).

Ответить | Правка | К родителю #10 | Наверх | Cообщить модератору

44. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (44), 31-Окт-25, 03:23 
Вот только почему у них такой интузязизЪм, немножко непонятно.
Им как продаванам игорь то какой интерес поднимать не тянущее из игры железо?
Ответить | Правка | Наверх | Cообщить модератору

46. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 31-Окт-25, 04:08 
> Вот только почему у них такой интузязизЪм, немножко непонятно.

Вероятно хотят уменьшить себе технических проблем, улчушить продажи и расширить экосистему. Учитывая что MS им своим виндостором по сути может бизнес убить и подмял несколько игроделов в свое время - Valve рубится за свою экосистему в режиме all-out. Поэтому им совсем не лишне план как вести бизнес - совсем без MS, если тот окончательно озвереет, все заwalled-garden'ит и передушит альтернативные сторы типа Steam.

> Им как продаванам игорь то какой интерес поднимать не тянущее из игры железо?

У нормальных двигунов - настроек как раз таки есть и они позволяют покрутить перфоманс <-> качество в широких пределах. И все это добро какое-нибудь 1080p на урезанных настройках потянет на ура.

Более того.
1) На AAA играх мир не заканчивается. Есть легионы инди и проч которым убер топ видяху не надо.

2) Игры по сей день должны жить с тем фактом что бывают APU/iGPU и проч - которые довольно хилые. Если вы на это забьете, вашими клиентами будет очень узкая каста турбозадр@#в меняющих GPU раз в год. И выбирающих из топовых AAA игр. И удачи в ведении бизнеса, посмотрим как вы против мегакорп с AAA тайтлами удержитесь, при полутора клиентах.

Ответить | Правка | Наверх | Cообщить модератору

3. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (3), 30-Окт-25, 09:33 
> Отличия в работе с amdgpu есть, в плане OpenGL?

новость про месу, упомянутый radeonsi драйвер тоже из месы и без ядерного драйвера он не работает

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

5. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от name (??), 30-Окт-25, 09:48 
Так ты не можешь без amdgpu использовать vulkan и dxvk.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

28. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 30-Окт-25, 20:36 
> Так ты не можешь без amdgpu использовать vulkan и dxvk.

AMDGPU нынче цепляет что угодно от GCN 1.x и новее. И на всем этом соответсвенно есть Vulkan. Кто-то даже для Radeon 6000 (VLIW) запилили экспериментальное нечто - Terakan.

Ответить | Правка | Наверх | Cообщить модератору

39. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от aaa (??), 31-Окт-25, 01:03 
не запилили, а пилит. Там один Виталий Кузьмин этим занимается, несмотря на то, что Марек Ольшак его отговаривал.
https://gitlab.freedesktop.org/Triang3l/mesa/-/commits/Terak...
Ответить | Правка | Наверх | Cообщить модератору

21. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от НяшМяш (ok), 30-Окт-25, 15:16 
Интересно, когда уже кекспертам добавят в методичку пункт про разницу между ядерным драйвером и месой?
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

36. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от кексперт (?), 30-Окт-25, 23:46 
А вот кстати правильная идея. Есть вообще толковые гайды по тому как устроены видео-дрова в линукс?
А то реально голова кругом -- под каждого вендора куча либ, что-то устарело, что-то только пилится, что за что отвечает...
Ответить | Правка | Наверх | Cообщить модератору

40. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (-), 31-Окт-25, 01:07 
> А вот кстати правильная идея. Есть вообще толковые гайды по тому как
> устроены видео-дрова в линукс?
> А то реально голова кругом -- под каждого вендора куча либ, что-то
> устарело, что-то только пилится, что за что отвечает...

В самом базовом виде:


DRM/KMS/GBM <-> libdrm+plugin <-> various clients

                             _client 1 (e.g. Xorg + DDX)
  Kernel    <- drm libs  -> /_client 2 (e.g. OpenGL@MESA)
                            \_client 3 (e.g. Vulkan, ... )

Т.е. на нижнем уровне модули ядра, рулят видеорежимами (KMS) и базовыми аспектами рендера и работой с GPU (DRM) и управлением памятью GPU (GBM). Это ядерная часть драйвера. У амд это AMDGPU и Radeon (модули ядра).

Юзермод как правило не дергает это напрямую сисколами и вместо этого интерфейсится через libdrm (+ ее плагин для энного GPU) для упрощения жизни. Это некий intermediate layer, не очень интересный чаще всего.

А дальше - к этому разные клиенты цепляются. Например MESA как реализация GL/Vulkan/чего там. Ессно ее версия достаточно важна в плане фич и багов. У Xorg есть еще понятие DDX драйвера но он уже сюжетно не важен ибо то что делают Xorg настолько не ложится на современные GPU что гонять их с DDX типа "generic KMS" бывает даже быстрее чем "более специфичным для энного GPU". Поэтому версиями DDX компонентов можно не сильно париться, мало на что влияет.

У нвидии может быть чуть иначе, но в целом их прожали и общая структура стека - такая же. Т.е. их ядерный модуль реализует свой вариант KMS/DRM/GBM и работы с ним - но поверх этого как клиент цепляется свой проприетарный юзермод. Нвидия в конце концов замучалась сама DRM/KMS пилять и открыла модули. Но они не в майнлайне и юзерям полегчало не сильно.

У амд так можно зацепить проприетарный драйвер - с поправкой что тот работает сразу поверх модуля AMDGPU из майнлайна, проприетарный только юзермод.

Ответить | Правка | Наверх | Cообщить модератору

42. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от morphe (?), 31-Окт-25, 01:50 
> с поправкой что тот работает сразу поверх модуля AMDGPU из майнлайна

Поправка - они перестали поддерживать свои проприетарные и грворят всем переходить на опенсорс

Проприетарные оставили существовать только ради полутора проприетарных софтин о которых никто не знает и не пользуется

Ну и проприетарные дрова просто были слишком медленные в сравнении с mesaвским gallium

Ответить | Правка | Наверх | Cообщить модератору

47. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 31-Окт-25, 04:20 
> Поправка - они перестали поддерживать свои проприетарные и грворят всем переходить на опенсорс

Это для AMDVLK верно. Потому что RADV его сделал буквально во всех номинациях.

Т.е. называя вещи своими именами, Airlied который лид графического направления Linux (майнтайнер подсистемы) - обставил производителя видях прямо на их поле. Или как вы показываете всей планете что вы профи высшего класса и настоящий лид технического направления, а не погулять вышли.

Что там с остальными проприетарными частями я честно гря не следил. Они opengl прориетарский тоже выбросили? И еще есть отдельный юзермод поверх amdgpu ROCm, он не совсем проприетарский и номинально открытый. Но с поддержкой GPU там - похабно по версиям, они поддерживают полторы последние модели, это moving target и в целом - этому даже CUDA с ее периодическим дропом старых видях в последних версиях мастеркласс все же - дает. Так что оно веорятно всерьез юзается только полутора гиперскейлерами под AI и проч а остальными скорее избегается за такой экспериенс. Но это тоже +1 клиент DRM/KMS/GBM через AMDGPU как таковой.

> Проприетарные оставили существовать только ради полутора проприетарных софтин о которых
> никто не знает и не пользуется
> Ну и проприетарные дрова просто были слишком медленные в сравнении с mesaвским gallium

В случае вулкана там Airlied молодец, дал всем мастеркласс как это надо делать. Вот это - технический лид каким он реально должен быть.

Ответить | Правка | Наверх | Cообщить модератору

43. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от кексперт (?), 31-Окт-25, 02:58 
Насколько я понял весь этот винегрет, за исключением модулей ядра, пытаются систематизировать в рамках freedesktop.org

Ответить | Правка | К родителю #40 | Наверх | Cообщить модератору

48. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 31-Окт-25, 04:27 
> Насколько я понял весь этот винегрет, за исключением модулей ядра, пытаются
> систематизировать в рамках freedesktop.org

Большая часть usermode частей "клиентов" с реализацией того или иного API для того или иного GPU - в случае удачного девелопа становится частью MESA которая так же пытается предоставлять реюзабельные части - дабы каждая реализация апи того или иного GPU не была вынуждена изобретать свой вел с квадратными колесами на все вообще.

Ответить | Правка | Наверх | Cообщить модератору

25. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Sunderland93 (ok), 30-Окт-25, 18:18 
amdgpu драйвер ядра, radeonsi - драйвер Mesa
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

4. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (4), 30-Окт-25, 09:36 
Ничего не понятно.
Ответить | Правка | Наверх | Cообщить модератору

6. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +8 +/
Сообщение от aname (?), 30-Окт-25, 10:01 
Вольво двигает прогресс в Линукс-дистрах. Уважаемо.
Ответить | Правка | Наверх | Cообщить модератору

8. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +2 +/
Сообщение от Аноним (8), 30-Окт-25, 10:33 
Ещё и грузовики делает.
Ответить | Правка | Наверх | Cообщить модератору

11. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +6 +/
Сообщение от Chel (?), 30-Окт-25, 11:42 
И плавленый сыр!
Ответить | Правка | Наверх | Cообщить модератору

26. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от В афиге (?), 30-Окт-25, 18:42 
У меня, как энтомолога-русоведа есть к тебе вопросик: что тебя и таких как ты заставляет коверкать названия фирм? Все эти «вольво» вместо «вальве», «межделмаш» вместо «IBM» и так далее. Что тебя заставляет так делать? У тебя что-то свербит в голове если ты этого не сделаешь? Ты считаешь это смешным?
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

31. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (31), 30-Окт-25, 21:26 
Купи себе немножечко чувства юмора, и сразу все станет понятно.
Ответить | Правка | Наверх | Cообщить модератору

33. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  –1 +/
Сообщение от Аноним (33), 30-Окт-25, 21:57 
> У меня, как энтомолога-русоведа есть к тебе вопросик: что тебя и таких
> как ты заставляет коверкать названия фирм? Все эти «вольво» вместо «вальве»,
> «межделмаш» вместо «IBM» и так далее.

International Business Machines
Meждународные Деловые  Машины
Меж    Дел    Маш

Не благодари

Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

34. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от В афиге (?), 30-Окт-25, 22:19 
И они так не называются
Фирма называется IBM, фирма называется Valve и так далее
А если тебя называть кретином, то это будет так же смешно? Ну то есть это будет соответствовать действительности, но будет ли тебе так же смешно?
Ответить | Правка | Наверх | Cообщить модератору

37. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (33), 31-Окт-25, 00:19 
> И они так не называются
> Фирма называется IBM,

https://www.ibm.com/investor/att/pdf/IBM_Annual_Report_2022.pdf
> The financial section of the International Business Machines Corporation (IBM or the company)

Кекспертиза во все поля.

> А если тебя называть кретином, то это будет так же смешно? Ну
> то есть это будет соответствовать действительности, но будет ли тебе так же смешно?

"Свербит" тут походу только у тебя. И совсем не в голове ...

Ответить | Правка | Наверх | Cообщить модератору

12. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  –4 +/
Сообщение от Аноним (12), 30-Окт-25, 12:39 
Вместо того, чтобы улучшить оптимизатор в LLVM, они новый компилятор делают. Это тупиковый путь, LLVM такой неэффективный потому, что жирный. Когда вальвовский компилятор всосёт столько же бэкендов (а если он взлетит, то неминуемо всосёт), сколько LLVM - он скатится ниже уровня LLVM (то есть упадёт на взлёте). Поэтому не LLVM резать надо, а улучшать LLVM, чтобы он мог ещё кучу бэкендов всосать, а быть эффективным. А отдельные незалежные компиляторы - это просто выброшенный на ветер труд.
Ответить | Правка | Наверх | Cообщить модератору

13. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +6 +/
Сообщение от Оно ним (?), 30-Окт-25, 12:42 
А зачем вальвовскому компилятору всасывать столько бэкендов, если он сконцентрирован только на шейдерах?
Ответить | Правка | Наверх | Cообщить модератору

15. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (15), 30-Окт-25, 12:51 
А что архитектур видеокарт и акселераторов для машоба мало? Тут каждый год по несколько выходит.
Ответить | Правка | Наверх | Cообщить модератору

18. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (18), 30-Окт-25, 14:26 
Да 2.5 всего, как бы.
Ответить | Правка | Наверх | Cообщить модератору

14. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +2 +/
Сообщение от Аноним (12), 30-Окт-25, 12:42 
Жирный - имеется в виду, что когда нужно чтобы один и тот же код эффективно генерил эффективный код, то пространство решений очень сильно сужается, и приемлимые решения имеют более низкую энтропию по сравнению с решениями, которые эффективно ворочают только часть бэкендов. А получить низкую энтропию очень дорого. А Вальв по сути сказали "не нужен он копилятор с такой низкой энтропией, мы из говна и палок свой сделаем", и сделали. Только он не для всего, в отличие от LLVM.
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

17. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Я (??), 30-Окт-25, 13:58 
вся суть программирования в том что если есть возможность сделать консервный нож максимально эффективно открывающий нужную банку то его надо сделать. а вот будет ли вам всегда хватать возможностей поддерживать этот нож в актуальном задачам состоянии вопрос другой
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

23. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Xo (?), 30-Окт-25, 17:30 
С чего это ACO новый? Повестку обновите.
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

29. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 30-Окт-25, 20:46 
> Вместо того, чтобы улучшить оптимизатор в LLVM, они новый компилятор делают.

Этой блевотной корпоративной блоатвари ничто не поможет. Оно под эгидой догнать и перегнать GCC - стало жирным тормозным уродом, огроменным, жрущим сотни памяти, тормозным как черти что, с убер-огромной либой, одной на все - и более 9000 слоев оптимизаций - которые стали часто играть с этим монстром дурную шутку, похабя код.

Девелопать LLVM это вообще сильно отдельная боль, из-за невъ....ного размера либы и времен компила и линка оной под стать. Не говоря о том что билдсистема этого корпоративного урода это совершенно отдельный шитпарад кластерфака софтварной инженерии с какими там питонами-электронами и скачкой половины интернета.

Так что пока вы добавите в этого монстра оптимизаций, на горе рассвистится рак. После дождика в четверг високосного года.

> Это тупиковый путь, LLVM такой неэффективный потому, что жирный. Когда вальвовский
> компилятор всосёт столько же бэкендов

Он делает 1 штуку - и делает ее хорошо. Генерит шейдеры.

> (а если он взлетит, то неминуемо всосёт),

Я думаю что всосет - не он, а LLVM, вместе с фанами. Впрочем - уже. Как минимум - фичи.

> сколько LLVM - он скатится ниже уровня LLVM (то есть упадёт на взлёте).

"Когда убьют - тогда и приходите" :)

> Поэтому не LLVM резать надо, а улучшать LLVM, чтобы он мог ещё кучу бэкендов всосать,

Видимо Valve посчитал что проще - написать с ноля чем с тем ужасом связываться. А LLVM можно использовать на хэллоуин - айтишников пугать! Абсолютно уродский проект, хучшая иллюстрация на тему того во что корпы + оверинженерия могут слить софт.

Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

38. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Буратино (?), 31-Окт-25, 00:32 
Расскажи подробней чем так плох LLVM.
У меня на работе макохипстота всё хочет "элэлвээму", а я как отбитый ретроград заставляю сидеть на "старом добром надёжном проверенном гэцэцэ"
Правильно делаю или не очень?
Ответить | Правка | Наверх | Cообщить модератору

41. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 31-Окт-25, 01:47 
> Расскажи подробней чем так плох LLVM.
> У меня на работе макохипстота всё хочет "элэлвээму", а я как отбитый
> ретроград заставляю сидеть на "старом добром надёжном проверенном гэцэцэ"

На самом деле честный ответ - "зависит от конкретики". У LLVM есть некоторые интересные фичи, в крутоте и инновациях типа C++2* всяких или продвинутой диагностике там рубка 50/50 примерно. По кодогенерации они были более-менее похожи по качеству, но в новых версиях LLVM начинает впадать в маразм и порой делать дичь, на манер старых GCC.

Просто LLVM по мере наворачиваний оптимизаций и проч в потугах догнаьт и перегнать gcc..
1) продолбал все преимущества по части скорости компила. И стал жирным неповоролтливым монстром. Куча продвинутых оптимизаций - это не бесплатно.
2) Архитектура странная. Вообще вся кодогенерация - для всех таргетов - в ОДНОЙ убер-либе. Никогда не видели .so размером 100+ мегов? Посмотрите на LLVM свежих версий. Увидите! Мне кажется что этот подход имеет проблемы с масшитабированием, особенно по мере добавления таргетов и оптимизаций.
3) Оптимизации навернули так что последние версии порой впадают в маразм. В лучшем случае они генерят раздутый и тормозной код. В хучшем глюкавят на манер старых GCC выдавая некорректный код.
4) Если приспичило наисвежайший gcc под не очень попсовый таргет, отстроить себе тулчейн довольно просто и ненапряжно. Повторить такой номер с LLVM и Clang - сильно более другия история по объему траха, build deps и времени на это приключение.

> Правильно делаю или не очень?

В таком глобальном аспекте - сильно зависит от конкретики. Но никаких особых золотых гор от замены GCC на clang вы в обшем случае не получите. Там есть пару фич которых в GCC нет, но - очень нишевых. Типа какого-нибудь инструментирования CFI для ядра. Но если вы этим не занимаетесь то и нахрен оно вам тогда. Т.е. на мой вкус для того чтобы дергаться надо иметь измеримый бенефит с этого. У gcc тоже в новых версиях фичи бывают, опять же.

А как показал пример GPU, для GPU вообще получается - дичь. И амд уже огребали неудобные вопросы какого дьявола за столько времени впаха над LLVM настолько похабные результаты. Valve вообще это надоело - и они сделали другой компилер шейдеров. Без того счастья. И когда разница в 8 раз по времени компила и код лучше во всех смыслах - видимо, идея юзать LLVM для GPU вообще, пожалуй, была не особо удачной, коли такие соотношения. А valve что, они шкурно заинтересованы не в концепциях и замене ежа ужом - а максимизации своего профита. И фигачат так как лучше всего работает. Потому что у них SteamDeck и его хочется продать. И побольше. И игр к нему еще. Для чего быстрая качественная генерация шейдеров на AMD GPU ессно - мастхэв. Они и пашут как черти.

Ответить | Правка | Наверх | Cообщить модератору

16. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  –1 +/
Сообщение от Анонизм (?), 30-Окт-25, 12:52 
И зачем оно?! Очередной костыль.
Ответить | Правка | Наверх | Cообщить модератору

35. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (35), 30-Окт-25, 22:35 
> И зачем оно?! Очередной костыль.

Этот "костыль" улучшает абсолютно все мыслимые параметры генерации шейдеров - и жор памяти при компиле, и скорость компила, и размер бинаря шейдера, и скорость его работы.

Ну так, как говорят ченжлоги - "много мелких улучшений". Хотя, скостить время компила шейдера в 8 раз - не так уж и мелко пожалуй.

Ответить | Правка | Наверх | Cообщить модератору

19. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (18), 30-Окт-25, 14:28 
Надеюсь, что сам компилятор ACO собирается гораздо быстрее, чем LLVM.
Ответить | Правка | Наверх | Cообщить модератору

22. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  –1 +/
Сообщение от НяшМяш (ok), 30-Окт-25, 15:25 
Вся меса в конфигурации по-умолчанию (только х64 сборка) на моём 5950Х собирается за... 55 секунд.

Что там за вопрос про LLVM был?

Ответить | Правка | Наверх | Cообщить модератору

27. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (18), 30-Окт-25, 19:39 
А сам Шланг за сколько собирается?
Ответить | Правка | Наверх | Cообщить модератору

30. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 30-Окт-25, 20:50 
> Что там за вопрос про LLVM был?

Да вот видишь ли какой нюансик - для оптимизаций LLVM кодогенератора надо пересобирать LLVM и его обвес. И тут оказывается что это нифига не быстро - а билдсистема этой дряни еще и отборный корпоративный кластерфак. Корпы типа гугла имеют проклятие: превращают билдсистему в адовое месиво.

Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

45. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +1 +/
Сообщение от Аноним (44), 31-Окт-25, 03:30 
А ведь когда-то шейдеры лежали в shaders.bin и не требовали компиляции по пол часа при каждом запуске. Вот ведь были времена...
Ответить | Правка | Наверх | Cообщить модератору

49. "Драйвер RadeonSI переведён по умолчанию на бэкенд компиляции..."  +/
Сообщение от Аноним (-), 31-Окт-25, 04:33 
> А ведь когда-то шейдеры лежали в shaders.bin и не требовали компиляции по
> пол часа при каждом запуске. Вот ведь были времена...

Для шейдеров и сейчас есть кеш шейдеров. Ибо гамезы стали таскать 100500 навороченых шейдеров и времена старта игорей пока они там все это скомпилят стали конкретно всех задалбывать. Особенно с LLVM.

Но при первом то старте - вы все же будете их компилять. И никуда от этого не денетесь. Ибо у разных GPU разный нативный код, а IR - это не оно и его все равно надо перегонять в нативный для конкретной видяхи формат.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру