После трёх месяцев разработки представлен релиз свободной реализации API OpenGL и Vulkan - Mesa 25.2.0. Первый выпуск ветки Mesa 25.2.0 имеет экспериментальный статус - после проведения окончательной стабилизации кода будет выпущена стабильная версия 25.2.1...Подробнее: https://www.opennet.me/opennews/art.shtml?num=63694
Мое почтение разрабам Mesa. На практике заметны улучшения и исправления."Поддержка OpenGL 3.3 присутствует в драйверах softpipe (программный растеризатор)..."
То есть теперь реально почти вся древнота, которая по каким-то причинам не работала, будет через программную отрисовку окна и видео обрабатывать.
Пробовал два-три месяца назад древнюю встройку nvidia 6150, с которой из-за критического бага было невозможно с GNU/Linux работать лет десять. Сейчас окна рисует нормально, даже видео без тормозов 720p показывает с загрузкой проца 25-40%. Приятано удивлен.
Ты еще попробуй скачать какое-то видео в 1080p 30fps H264 и запустить с плеера MPV с параметром profile=fastМожет карточка и FullHD отрисует. Процессор тоже должен вытянуть.
Just for fun же. Может и попробую. Спасибо за подсказку.Из мануала "You may need to use --profile=sw-fast to get decent performance".
> Удалён устаревший OpenCL-драйвер Clover. Для OpenCL слежует использовать драйвер RustiCL, более функциональный и поддерживающий больше версий OpenCL.Это с r600 не работает. А кловер дропнули потому, что планируется дропнуть весь Gallium и все карты на нём. Потому что для современных карт весь драйвер имплементирован в GSP, только интерфейс реализуй, а всю сложную работу за тебя сделал производитель карты. А что новых версий API не будет - ну так пойди, новую карту купи - оплати работу по реализации новых API.
Terakan кстати работает, как и vkmark на нём, но многое застаблено нулевыми указателями, в частности blit-функции (SurrealEngine проверяет их наличие, так как их нет - то теракан будет игнорироваться, потому что surrealengine зависит от них) и vkCreateComputePipelines -> vk_create_compute_pipeline -> vk_pipeline_precompile_shader -> get_nir_options
> Это с r600 не работает.Да когда уже вас в интернет перестанут пускать. R600 даже ATI на винде поддерживала опенслем практически никак (первый прогресс пошёл с R800). А вы требуете этого от волонтёров, чтобы вашу рухлядь бесплатно поддерживали.
надо бы в EC выпустить какой-нибудь закон, обязывающий производителей gpu выкладывать в открытый доступ документированный api к видеокарте. для борьбы с электронным мусором
> обязывающий производителей gpu выкладывать в открытый доступ
> документированный api к видеокартеА чего сразу не "ключи где деньги лежат"?
После такого выбрыка все производители видеокарт пошлют ЕСовцев на хурд, те посидят пару месяцев без видях и подумают над своим поведением.
Все равно они никуда не денутся и будут их покупать, просто неофициально через соседние страны. Просто станет чуток дороже))
Жаль, что на этом благородная инициатива ограничится.
Так выложены же.
то есть опенсорсные дрова на невидию не работают, потому что разрабы идиоты? и Линус тоже идиот?
Не звезди, hashcat работал, бенчмарки тоже, как и кастомные приложения, инвертирующие большие матрицы.
> Это с r600 не работаетИ? А разве должно?))
Этому хламу уже 14-15 лет, закопайте стюардесу или сидите на специальных дистрах с поддержкой такого.
эта стюардесса до сих пор тянет кучу тяжёлых для своего времени игр, а для научной визуализации больше в принципе не нужно
> до сих пор тянет кучу тяжёлых для своего времени игрТ.е. те же 15+ лет. Ясно-понятно.
> а для научной визуализации больше в принципе не нужно
Если только выводить картинку на экран, то хватит и любой современной встройки.
Хотя современная встройка даже большее потянуть может, особенно если это что-то из амдшных APU.Вашему НИИ опять не обновляют технику?
Где карточки такие достаете? С 6оmжами битвы устраиваете?
Зачем нам устраивать битвы с нашими поставщиками, дающими нам за бесценок товар, какими-то лошками выкинутый на свалку?
То есть вы покупаете какой-то хлам, выкинутый какими-то лошками на свалку?
Dota 2 как будто сильно поменялась. Полно игр, особенно в онлайне, которым тех карточек с избытком хватает. Встройку нельзя воткнуть в любой комп, а подавляющее большинство покупает процессоры без встройки. Авито не даст соврать - можешь пойти проверить сколько продается процессоров со встройками.
>закопайте стюардесуИди в лес сходи и себя закопай.
> Иди в лес сходи и себя закопай.Вот почему нищуки такие злые и агрессивные...
Это все потому что у вас нормальной видяхи не было!
Так это ты предложил закопать, ведь унизить кого-то доставляет тебе наслаждение - а "нищуки" вдруг стали агрессивными?
> Так это ты предложил закопать,древнюю видеокарту
а тот ыdlaн кого предложил закопать? меня!
ну и кто из нас агрессивный?))> ведь унизить кого-то доставляет тебе наслаждение
не, мне наслождение доставляет дроп старого хлама))
> а "нищуки" вдруг стали агрессивными?
always has been (c)
А у меня есть GeForce GT 610.
По слухам на планете еще не все nvidia 210 распродали. Так что можешь спать спокойно, до твоего сокровища еще не скоро доберутся.
> дропнуть весь Gallium
> весь драйвер имплементирован в GSPСильное заявление... В GSP немного другое имплементировано - переключение частот, например. Задание параметров, с которым надо какой-то определённый kernel (слинкованную бинарную програмку в опкодах GPU) выполнять. Проверка статусов выполнения и т.д.
А основной смысл Gallium в шейдерном компиляторе. Лет 15 назад агитировали переходить на gallium, чтобы не писать свой компилятор с нуля для каждого драйвера. Но вот GSP с компилятором вообще никак не соотносится... На видеокарту разве исходный код шейдеров передаётся?В момент выхода Vulkan появился SPIR-V. Унифицированные абстрактные опкоды инструкций. Вот если оттранслировать эти абстрактные опкоды в опкоды реального GPU, то и gallium не особо нужен. Но в твоём случае VLIW, поэтому надо корректно "склеить" опкоды в длинную инструкцию (можно конечно и нопами забить, но тогда и скорость раза в 4-5 упадёт и размер программы).
От необходимости делать остальную реализацию vulkan (реализовывать корректно все эти функции vk*) это конечно не избавляет. Но сомневаюсь, что в GSP лежат прям 1-в-1 реализованные функции.
У OpenGL будут уже совсем другие функции. А у DirectX вообще третьи.
>На видеокарту разве исходный код шейдеров передаётся?Ну SPIR-V байткод - это как раз типа исходный код. Не совсем исходный, но всё же не самый низкоуровневый код, который прямо на железе крутится. За сим...
>1. компиляцию шейдеров в SPIR-V аутсорсим на GLSLang (проект Khronos, не наша проблема!) и вообще на вызывающую сторону (тоже не наша проблема!)
>2. компиляцию SPIR-V в машинный код - на GSP (проблема вендора, не наша проблема!)
>3. а что аутсорсить нельзя - просто выкинем (нам сами такие карты не нужны, когда выкинем - это тоже не наша проблема будет), ведь "нужно двигаться дальше" (тм)!
>4. PROFITСемь бед - один ответ.
И есть уже примеры GSP, которые так делают? Тот же NVK это делает внутри компилятора. А больше и не знаю где там GSP есть...
>планируется дропнуть весь Gallium и все карты на нёмЭто наглая ложь. На данный момент таких планов нет.
Планов может и нет (он нужен для Цинка, а Цинк пока дропать не собираются, но в обсуждении среди всех ключевых участников проекта реально пишущих код для царит единодушие, что Галлий очень хотелось бы выкинуть. Поэтому дропнут старые карты, а из Галлия выкинут всё, что не нужно для оставшихся на сопровождении бэкендов. До тех пор, пока не останется только цинк, после чего этот Галлий в цинк заинлайнят, а цинк выкинут в отдельный проект. И Меса станет Vulkan-only. Выкинуть весь OpenGL в отдельный проект правильно c точки зрения архитектуры. Но дропать карты и увечить Галлий абсолютно неправильно. Галлий должен быть вообще сам по себе отдельным проектом со стабильным API, а не частью Mesa, и не монолитной либой с бекендо-специфичным кодом вперемешку, а чисто middleware. А каждый бекенд должен жить в отдельном репозитории и линковаться с предпостроенным libgalluim. Тогда и Клевер можно было бы не дропать вообще.
Это "может быть" в перспективе нескольких лет. Когда сделают amber2. А его скорее всего сделают и туда скорее всего уйдут OpenGL-only драйвера. Такие пока ещё есть.
> Это с r600 не работает. А кловер дропнули потому, что планируется дропнуть
> весь Gallium и все карты на нём. Потому что для современных
> карт весь драйвер имплементирован в GSP,Откуда вы такие вылезли? Юзеры нвидий с своими страданиями блещут экспертизой. У амд нет никаких GSP. Как впрочем и у вон тех.
А что до R600 - clover как-то ползал на HD5000/6000 но считать на них что-то в 2025 году уже так, винтажненько достаточно.
> API не будет - ну так пойди, новую карту купи - оплати работу по реализации новых API.
Вы совсем не шарите? Vulkan например достаточно низкоуровневое апи. И если можно сделать это - можно и все что угодно еще. Вон GL из вулкана Zink'ом делают. Потому что он сложный, и как таковой легаси, кодить такие навороты для дофига новых видях всем лениво.
Поэтому 1 раз расперлись Zink накодить и теперь достаточно накодить куда более скромный Vulkan - и поверх него GL запустить zink'ом.
Что в вас там за проблемы с тараканами - разбирайтесь сами.
>в 2025 годуЭтот автор поста слился, не приносите больше.
>Вы совсем не шарите? Vulkan например достаточно низкоуровневое апи. И если можно сделать это - можно и все что угодно еще. Вон GL из вулкана Zink'ом делают. Потому что он сложный, и как таковой легаси, кодить такие навороты для дофига новых видях всем лениво.А новые рпасширения вулкана кто завезёт? Завтра авторы цинка скажут "все карты без таких-то расширений дропаем". И дропнут. Иди беги в магаз за новой картой с новым вулканом.
> А новые рпасширения вулкана кто завезёт?Програмеры драйвера вулкана. Если оно им надо. Сама по себе видяха - ничего про вулкан и его версии не знает! Она предоставляет - считалки да VRAM. И так у всех. С эпохи unified shaders, которая на PC наступила - дофига лет назад. Какое там апи из этого сделают дровописаки - не проблемы видяхи, она в таких терминах не оперирует.
Ей сабмитят джоб на вычисления, результат - на экран или куда там в буфер/обратно хосту по шине. В этой абстракции не фигурирует opengl или vulkan. А вулкан рулит просто потому что сам по себе ближе ко всему этому - его драйвер написать намного проще чем у GL.
Просто если у железки нет тех или иных фич или блоков, или архитектура неудобная, ту или иную версию апи или то или иное расширение делать может быть - канительно, и на это могут забить. Решив что так мучаться ради маргинального выигрыша нафиг надо.
> Завтра авторы цинка скажут "все карты без таких-то расширений дропаем".
Ну значит или кто-то разопрется накодить это расширение для тех или иных видях - или всем уже пофиг на эту модель настолько что они забили.
Для амд - накодили даже блин рэйтрейс шейдерами для старых видях без хардварного блока. Но, конечно, трассировка шейдером - тормознее чем с подпором хардварным блоком ускоряющим рейтрейс железно. Но фича софту - формально вывешена. Однако желающие крутые игры с рейтрейсом гонять все же вероятно захотят видяху где есть блок в железе.
> И дропнут. Иди беги в магаз за новой картой с новым вулканом.
Обычно почти все что умеет вулкан - поддерживает его по всей площади. Во всяком случае в открытых дровах. Даже вон рейтрейс для амд шейдерами сделали. Но поскольку чудес не бывает - настоящим хардварным блоком оно считается, конечно, куда быстрее.
> В число зависимостей к драйверу NVK включён crate-пакет rustc-hash
> Продолжено развитие OpenCL-драйвера Rusticl, написанного на языке Rust
> Удалён устаревший OpenCL-драйвер Clover. Для OpenCL слежует использовать драйвер RustiCLОго, вот это хруст победно шагает по планете.
Но ведь в каждой второй теме рассказывали что "на нем ничего не написано"
А тут драйвер NVK не соберешь, OpenCL не запустишь.
Кто-то может объяснить зачем оно надо?
Например драйвер Nouveau и так поддерживает и OpenGL и Vulkan. Зачем ещё одна обёртка?
> драйвер Nouveau ... поддерживает и OpenGL и Vulkanкак раз через mesa.
В ядре маленькая часть драйвера видеокарты - управление вентиляторами/питанием/частотами (если там всё сошлось как надо, не надо всех вартах), управление видеовыходами и передача данных в память карты/из памяти карты. Немножко контроль выделения памяти в видеокарте. Никакого OpenGL или Vulkan в ядре нет!
А вот Mesa как раз и превращает вызовы функций OpenGL/Vulkan в команды для видеокарты. Помещает эти команды в видеокарту (помещает естественно через драйвер в ядре linux) и заставляет карту сделать что требуется.
Ну и на современных картах чтобы что-то сделать в Vulkan или OpenGL нужны шейдеры (небольшие программки для обработки текстур и координат вершин треугольников). Эти программы тоже надо скомпилировать в инструкции, которые видеокарта поймёт. Вот компилятор тоже часть Mesa.
nouveau - это низкоуровневые ядерные драйвера. Mesa - это реализация высокоуровневых OpenGL и Vulkan. Mesa, сама по себе, без nouveau работать не будет.
>Mesa, сама по себе, без nouveau работать не будет.
>>Помещает эти команды в видеокарту (помещает естественно через драйвер в ядре linux)Всё верно!
Драйвер OpenGL в mesa называется nouveau. И драйвер в ядре linux тоже называется nouveau. И даже DDX-драйвер для X11 тоже называется nouveau.
Вот такой он nouvea - размазанный аж по трём проектам...
> Прекращена поддержка версий libX11, не обеспечивающих
> безопасную работу в многопоточных приложениях.Отличное решение.
> Оставлена только поддержка libX11 1.8 (апрель 2022 года)
Ничосе новье! Всего три года прошло. Луддиты уже взвыли?
> Удалён устаревший OpenCL-драйвер Clover
и заменен на раст драйвер RustiCL
Шикарно, теперь без раста никакого вам OpenCL))
>Шикарно, теперь без раста никакого вам OpenCL))Зато cuda работает.
>и заменен на раст драйвер RustiCL
>Шикарно, теперь без раста никакого вам OpenCL))Rust - это деградация. Разработчики Mesa со временем это поймут.
> Rust - это деградация.Rust ни в коей мере не может быть деградацией.
Чел, который писал clover (предыдущую реализацию OpenCL на C) ковырядся лет 6 наверное (примерно с 2016-2017-го года). По-моему, в основном под nouveau, т.к. отвечал за OpenGL в nouveau.
Поддержка OpenGL в nouveau у него совсем никакая была (тысячи непофикшенных багов и до сих пор анонсируется OpenGL4.3, хотя формально по расширениям должно быть 4.5). Переключением частот занимался долго (в ядерной nouveau) и тоже ни к чему дельному не пришёл. Виснет Fermi при переключении частоты памяти и за много лет ноль подвижек...
Потом года за два выдал поддержку OpenCL3 для всех видеокарт из состава меса. Получается rust - это его язык, всё норм. Clover благополучно выпилили, всё равно не работал как положено.А вот как у остальных разрабов mesa получится код на rust поддерживать и рефакторить (если чувак уйдёт куда-нибудь) - вопрос на миллион. Можем увидеть эпопею "перепмсывание с нуля уже написанного на rust".
Писать без CVE - деградация?
Ага, на расте же никогда никаких CVE не было /s
> Ага, на расте же никогда никаких CVE не было /sСпикок CVE подтвердит... обратное :)
Статически линковать - деградация.
Такая деградация, что новый драйвер по возможностям уже обогнал старый.Всем бы такую деградацию.
Это результат энтузиазма, который возник в результате хайпа вокруг Rust-а. Потом они будут разачарованы.
Жаль, что разработка драйвера PowerVR не особо шустро движется. Дистры типа убунты даже не собирают Месу с ним, а ведь он нужен платам на RISC-V
Закажи и так и напиши дайте мне виар что бы все кибер панки поддерживало и виар чаты , представь как собирает тот или иной разработчик и.т.д
PCIe им работающая нужна
Новость про Mesa актуальна для тех у кого видеокарта поддерживает Vulkan. Ваши видеокарты поддерживают Vulkan?
> Новость про Mesa актуальна для тех у кого видеокарта поддерживает Vulkan. Ваши
> видеокарты поддерживают Vulkan?Да
> Ваши видеокарты поддерживают Vulkan?большинство поддерживает.
> Новость про Mesa актуальна для тех у кого видеокарта поддерживает Vulkan.
Вот в предыдущих mesa для panfrost было очень много расширений OpenGL реализовано. Если сделают хотя бы геометрические шейдеры (а возможно сразу и тесселяцию), то карта окажется в OpenGL 3.3. Это очень сложно, но такое уже бывало.
OpenGL 4.6 Release date: July 31, 2017То есть, OpenGL 4.6 вышел уже 8 лет назад, а вы про какой-то 3.3 рассуждаете.
OpenGL 3.3 Release date: March 11, 2010
Это до моего рождения.
Вот так оно получается. ;) Драйвер panvk умеет в vulkan 1.4 (но там от модели карты зависит, большинство карт не умеет и в 1.1), а panfrost научился пока только в OpenGL 3.1
Поэтому и в zink появляется смысл
Вам действительно пора обновить железо.
Раз у нас "вечер ностальгии и винтажного железа", то спрошу. Что же будет лучше работать на Nvidia 610GT: "родные" nvidia-drivers-390 или Mesa 25.2.0?
Все зависит от задач. Если критически важно выжать максимум fps в 3D, то только проприетарные драйверы. Если важнее новый софт и безопасность, то nouveau.
Кто-нибудь в qemu использовал новый нативный radv бэкенд,
быстрее -device virtio-gpu-gl работает ?
В драйверах v3dv (GPU Broadcom VideoCore для Raspberry Pi 4+) и dzn (реализация Vulkan поверх Direct3D 12) поддерживается Vulkan 1.0.
шо.опять? да сколько можно уже!
> Оставлена только поддержка libX11 1.8 (апрель 2022 года) и более новыхТри года - и ваша система превращается в тыкву.
Gallium-nine дропнули или ешё нет?
https://www.phoronix.com/news/Gallium-Nine-Deprecated
Да, ещё в предыдущем выпуске.
Надо протестировать на своем некробуке 14 лет. там 650m, вот только как там реализовано переключение?
Сейчас DRI_PRIME=1 glxgears и оно должно само подхватываться.
В DRI_PRIME указываешь номер видеокарты на которой будет рендеринг идти (обычно 0 - на intel, 1 - на nvidia).Для X11 может потребоваться хитрый xorg.conf (если иксы проигнорят карту без видеовыходов). В wayland - понятия не имею что настраивать (наверное ничего), но переключение должно быть аналогично.
Благодарю, это работает DRI_PRIME=1 работает только для OpenGL, с NVK, нужно вроде VK_DRIVER_ID=nouveau
> Удалён устаревший OpenCL-драйвер Clover. Для OpenCL следует использовать драйвер RustiCL, более функциональный и поддерживающий больше версий OpenCL.И AMD дропнула AMDGPU-PRO, предлагая взамен RustiCL?
AMD предлагает ROCm.
> Прекращена поддержка версий libX11, не обеспечивающих безопасную работу в многопоточных приложениях. Оставлена только поддержка libX11 1.8 (апрель 2022 года) и более новых выпусков, использующих вызов XInitThreads().Получается, я в своём 11-м дебиане не смогу накатить новые драйвера?
Идут к идеальной ситуации: вышел новый бравзер - покупай новое железо!
Если вы до сих пор используете Debian 11, то это априори означает, что вас не интересует актуальное программное обеспечение, включая актуальные выпуски драйверов. Никто из разработчиков не обязан подстраиваться под подобного рода безумие. Вам ничего не стоит просто обновить ваше ПО.
Получается, что использовать предпоследнюю версию дистра - неправильно?
> Получается, что использовать предпоследнюю версию дистра - неправильно?Уже, таки, предпредпоследнюю - ибо дебиан 13 таки релизнулся.
> Получается, я в своём 11-м дебиане не смогу накатить новые драйвера?Твой Debian 11 уж 2 дня как oldoldstable - т.е. такой себе прапрадедушка, лежит, понимаешь, на аппарате жизнеобеспечения. И еще пару лет полежит, да.