LINUX.ORG.RU

Представлен open-source драйвер Vulkan для видеокарт NVIDIA

 , , , ,


3

2

Компания Сollabora представила open-source драйвер Vulkan для видеокарт NVIDIA под кодовым названием «NVK».

Что такое NVK?

NVK — новый видеодрайвер Vulkan API с открытым исходным кодом для видеокарт NVIDIA в Mesa. Драйвер был полностью написан с нуля с использованием официальных заголовков «NVIDIA Open GPU Kernel Driver» от самой компании NVIDIA.

Linux-разработчик 3D-графики Вера Экстранд:

Одна из моих личных целей для NVK — сделать его новым эталонным драйвером Vulkan в Mesa. Все драйверы Vulkan в Mesa восходят к драйверу Intel Vulkan (ANV) и были запущены путем копирования и вставки из него. Я же, наоборот, всякий раз, когда у меня возникает соблазн скопипастить из ANV или какого-либо другого драйвера, понимаю, что нам нужен более общий код фреймворка.

Вера и её команда надеются, что долгосрочной перспективе NVK станет для оборудования NVIDIA тем же, чем RADV является для оборудования AMD.

Что будет с драйверами OpenGL?

Есть некоторые серьезные проблемы с текущими драйверами Gallium, и как и в случае с остальной частью стека nouveau. Обсуждаемый вариант — использование Zink для OpenGL в будущем. Он уже способен запускать большинство композиторов Wayland, XWayland, X.org с серверной частью настройки режима и большинство приложений, которые кому-либо интересны.

Каков текущий статус NVK?

Разработчики прошли около 98% Vulkan CTS (Compatibility Test Suite) с очень базовым набором функций. Полнофункциональный драйвер Vulkan 1.3, такой как ANV или RADV, выполняет около 50% CTS, остальные 50% отпадают из-за отсутствия поддержки форматов образов и функций. Готовность драйвера оценивается как 20-25% от функциональности драйверов ANV и RADV.

Поддержка оборудования

В настоящее время драйвер поддерживает видеокарты на базе архитектур Turing и Ampere. Что касается Kepler, Maxwell и Pascal — для них есть патчи, но они еще не полные.

GSP

Поскольку Nouveau ориентируется на GSP, который выполняет большую часть тяжелой работы, разработчики также могут наконец увидеть «свет в конце туннеля» для поддержки перетактирования и приведения драйвера с открытым исходным кодом в лучшую форму для Turing и более новых графических процессоров NVIDIA.

Участвующим разработчикам удалось заставить драйвер NVK Vulkan работать поверх своего экспериментального кода драйвера ядра Nouveau DRM, который адаптируется для использования прошивки GSP с оборудованием серии RTX 20 и новее.

Запуск игр

11 января 2023 Инженер Red Hat и давний разработчик драйвера Nouveau Кароль Хербст (Karol Herbst) написал в своем аккаунте в Chaos.social о том, как NVK запускает игры, и продемонстрировал скриншот игры The Talos Principle, работающей с новым драйвером.

Могу я попробовать это?

Испытание NVK ничем не отличается от любого другого драйвера Mesa. Просто возьмите ветку nvk/main из проекта nouveau/mesa.

Источники:

https://www.collabora.com/news-and-blog/news-and-events/introducing-nvk.html
https://www.phoronix.com/news/NVK-Running-Talos-Game
https://www.phoronix.com/news/NVK-Running-Talos-13-FPS

>>> Подробности



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 16)

Какое-то NVK, какое-то Nouveau DRM, какое-то GSP… Напишите нормально: покупайте RTX X000 в 202Y году и будет открытый драйвер.

t184256 ★★★★★
()

Какой смысл в драйвере графики для карт, которые нужны для всего на свете кроме графики?

token_polyak ★★★★
()
Последнее исправление: token_polyak (всего исправлений: 5)

Vulkan для видеокарт NVIDIA

$ sudo apt-cache search nvidia-vulkan
nvidia-vulkan-common - NVIDIA Vulkan driver - common files
nvidia-vulkan-icd - NVIDIA Vulkan installable client driver (ICD)
$ sudo apt install nvidia-vulkan-icd nvidia-vulkan-common
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово         
Уже установлен пакет nvidia-vulkan-icd самой новой версии (525.89.02-2).
Уже установлен пакет nvidia-vulkan-common самой новой версии (525.89.02-2).
amd_amd ★★★★★
()
Ответ на: комментарий от token_polyak

он тебе намекает

Как страшно жить, вокруг одни неонацисты и конспирологи.

annulen ★★★★★
()
Ответ на: комментарий от koshmar

Начинание хорошее. Но работать оно нормально будет только года через 4, дай бог.

Так nvidia запретила reclocking, все видеокарты которые могут работать с nouveau, работают на низких частотах, реклокинг работает на старых чипах, вплоть до GTX 7xx.

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

Короче, даже если свободный драйвер vulkan допилят, он может остаться в том же состоянии что сейчас находится nouveau.

Aber ★★★★★
()

Пожалуй, интересно. Успехов им.

sehellion ★★★★★
()

для поддержки перетактирования

Управление частотой.

ox55ff ★★★★★
()

После взлома невидии и вынужденной публикации той своих исходников, ее драйвера теперь не опенсорс?

uwuwuu
()
Ответ на: комментарий от MrClon

Так для него важна частота на одно ядро, если, конечно, ремастер не сделали, который умеет в многопоток

uwuwuu
()
Ответ на: комментарий от xwicked

Vulkan это low level api для отправки команд видеокарте. Все что есть в OpenGL на Vulkan надо делать с ноля путем написания тысяч строк кода, либо использовать готовые движки. Именно поэтому у такого opensource драйвера есть все шансы работать нормально.

Reset ★★★★★
()
Ответ на: комментарий от koshmar

Ну хз, амд понадобилось где-то два года чтобы оно заработало в вулкане

xDShot ★★★★★
()

Будет работать на 300Mhz?

Skullnet ★★★★★
()

Разработчики прошли около 98% Vulkan CTS (Compatibility Test Suite) с очень базовым набором функций.

Ого, какие молодцы, вот как надо драйверы писать!

Полнофункциональный драйвер Vulkan 1.3, такой как ANV или RADV, выполняет около 50% CTS, остальные 50% отпадают из-за отсутствия поддержки форматов образов и функций.

Похоже, что авторы ANV или RADV - ленивые недалекие макакакодеры!

Готовность драйвера оценивается как 20-25% от функциональности драйверов ANV и RADV.

Да как так то?

Я ничего не понял.

Xintrea ★★★★★
()
Ответ на: комментарий от Xintrea

Ого, какие молодцы, вот как надо драйверы писать!

Дрочат тесты вместо того чтобы писать качественный драйвер.

Похоже, что авторы ANV или RADV - ленивые недалекие макакакодеры!

Но зато их драйвера работают.

Skullnet ★★★★★
()
Ответ на: комментарий от Xintrea

Внимательно текст читай:

98% Vulkan CTS (Compatibility Test Suite) с очень базовым набором функций.

Открытые API Kronos Group теперь делают делают следующим образом – вносят в обязательные только самые нужные функции (базовые функции), все остальное optional.
Так сделан Vulkan, так сделан OpenCL 3.0, потому как эта стратегия себя оправдывает, иначе вендоры забивают болт на открытые стандарты.
Чего только стоит OpenGL 4.x, в видокартах нафиг не уперлась fp64, но вычисления над double внесены в обязательный стандарт, и если в железе нет ALU выполняющей операции над fp64 то либо это нужно реализовывать программно (и часто для галочки), либо забить на плашку совместимости с OpenGL 4, которая говорит только о том что драйвер прошел формальный Compatibility Test Suite.
Кстати, я так понял, что в современных картах AMD это реализовано микрокодом, ALU нету, но на уровне микрокода операции над fp64 могут быть исполнены на существующих 32-x разращённых вычислителях, потому и скорости смешные - 1/16, зато ненужные вещи можно не писать в драйвере.

Вот и тут получается что новый открытый драйвер почти может получить статус реализации Vulkan 1.0. Но современный DXVK на таком не запустится, ему базовых функций мало.

Aber ★★★★★
()
Последнее исправление: Aber (всего исправлений: 3)
Ответ на: комментарий от Aber

Для карт 16xx+ (карты с GSP) реклокинг будет. Другое дело, что это всё выглядит как подачка для нищих, novideo участия в этой авантюре не принимает, разве что фирмварь даст. Нормальные пацаны берут синтол и амудэ, там и дровишки от разработчиков есть, а для любителей приключений на свой шоколадный глаз и разработчиков в программистских чулках будет nouveau.

Xi_Jingping
()
Последнее исправление: Xi_Jingping (всего исправлений: 1)
Ответ на: комментарий от Skullnet

По вашей логике любой ворованный код - это опенсорс?

Это не воровство, это раскулачивание.

Раскулачивание — только когда оно считается законным во всех странах, где пользуются этим драйвером.

question4 ★★★★★
()
Ответ на: комментарий от doctorx

linux - check ✔ rust - check ✔ graphics driver - check ✔ trans developer - check ✔

Где ты там нашёл Rust? В исходниках — *.h, *.c, *.asm, *.cpp и немного *.py в тестах.

question4 ★★★★★
()

продемонстрировал скриншот игры The Talos Principle, работающей с новым драйвером.

А, ну ладно, оценим производительность драйвера по скрин-шоту. :)

anonmyous
()
Ответ на: комментарий от question4

Раскулачивание — только когда оно считается законным во всех странах, где пользуются этим драйвером.

Кап. государства прогибаются под корпорации. Поэтому раскулачивать только так и пох на законы буржуев.

Skullnet ★★★★★
()
Последнее исправление: Skullnet (всего исправлений: 1)

Я так и не понял прикола Vulkan.

Ну типа был нормальный DirectX, под который делали нормальные игры. Потом нищие побежали писать свою альтернативу, роняя кал. Но в итоге получилась студенческая поделка, вариация на тему DirectX 12. Которая почти не используется в играх.

Какой профит от Vulkan, кроме его опенсорсности?

Original_1
()
Ответ на: комментарий от Original_1

Ну типа был нормальный DirectX, под который делали нормальные игры.

D3D9-11 все высокоуровневые как и OpenGL.

Потом нищие побежали писать свою альтернативу, роняя кал. Но в итоге получилась студенческая поделка, вариация на тему DirectX 12. Которая почти не используется в играх.

D3D12 не нужен как и Metal - это всё корпоративные высеры, цель которых - фиксинг фатальных недостатков и не более. Майкрософт обсирался во всю жопу лишь бы выпустить D3D12 быстрее Vulkan, хотя спеки обоих API появились в одно и то же время. DirectX 12 как раз почти не юзается в играх, в играх юзается DirectX 11 в 90% случаев, которых на линуксах как раз работает через Vulkan.

Какой профит от Vulkan, кроме его опенсорсности?

Он ещё на 5% быстрее в некоторых тестах.

Skullnet ★★★★★
()
Ответ на: комментарий от Original_1

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

Skullnet ★★★★★
()

Да ладно. Вот это новость. Что же такое случилось?

targitaj ★★★★★
()
Ответ на: комментарий от Skullnet

Кап. государства прогибаются под корпорации

а не кап?

sunjob ★★★★
()
Ответ на: комментарий от Pasha115

Просто возьмите ветку nvk/main из проекта nouveau/mesa.

Это тоже никак не поможет оценить производительность игрухи, в отсутствии её самой. Может, всё-таки, тому чуваку стоило хотя бы видос выложить, а не скрин? :)

anonmyous
()

skipped due to various image formats and minor features not being supported

переводится как из-за отсутсвия поддержки различных форматов изобарежний (текстур), а не

из-за отсутствия поддержки форматов образов

erion
()
Ответ на: комментарий от Unixson

это хорошая новость. чем больше драйверов - тем лучше

Если честно, сомнительный тезис. Вот у меня есть Radeon 7790. Под нее было 5(пять) драйверов: AMDGPU, AMDGPU-PRO, radeonhd, fglrx и еще какой-то (уже не помню). Но из-за плохой совместимости с ядром, из всего этого безобразия работал только radeonhd (ну и, со старыми ядрами, fglrx)

X-Pilot ★★★★★
()
Ответ на: комментарий от token_polyak

Какой смысл в драйвере графики для карт,

Может, там ещё Vulkan CUDA SDK в комплекте?

i_am_not_ai
()
Последнее исправление: i_am_not_ai (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.