В NVK, открытом драйвере для видеокарт NVIDIA, обеспечена поддержка Vulkan 1.0

Консорциум Khronos, занимающийся разработкой графических стандартов, признал полную совместимость открытого драйвера NVK для видеокарт NVIDIA со спецификацией Vulkan 1.0. Драйвер успешно прошёл все тесты из набора CTS (Kronos Conformance Test Suite) и включён в список сертифицированных драйверов. Сертификация пройдена для GPU NVIDIA на базе микроархитектуры Turing (TITAN RTX, GeForce RTX 2060/2070/2080, GeForce GTX 1660, Quadro RTX 3000–8000, Quadro T1000/T2000). Проверка была выполнена в окружении с ядром Linux 6.5, X.Org X Server 1.20.14, XWayland 22.1.9 и GNOME Shell 44.4. Получение сертификата даёт возможность официально заявлять о совместимости с графическими стандартами и использовать связанные с ними торговые марки Khronos.

Драйвер NVK создан c нуля командой, в которую входят Карол Хербст (Karol Herbst, разработчик Nouveau из Red Hat), Дэвид Эйрли (David Airlie, мэйнтейнер подсистемы DRM из Red Hat) и Джейсон Экстранд (Jason Ekstrand, активный разработчик Mesa из Collabora). При создании драйвера разработчики использовали официальные заголовочные файлы и открытые модули ядра, опубликованные компанией NVIDIA. В коде NVK местами использовались базовые компоненты OpenGL-драйвера Nouveau, но из-за отличий наименований в заголовочных файлах NVIDIA и наименований в Nouveau, полученных на основе обратного инжиниринга, прямое заимствование кода затруднено и по большей части пришлось переосмысливать многие вещи и реализовывать их с нуля.

Разработка ведётся с оглядкой на создание нового эталонного Vulkan-драйвера для Mesa, код которого можно будет заимствовать при создании других драйверов. Для этого при работе над драйвером NVK попытались учесть весь имеющийся опыт разработки Vulkan-драйверов, поддерживать кодовую базу в оптимальной форме и минимизировать перенос кода из других Vulkan-драйверов, делая как должно быть для оптимальной и качественной работы, а не слепо копируя то, как сделано в других драйверах. Драйвер уже входит в состав Mesa, а необходимые для работы изменения в API DRM-драйвера Nouveau включены в состав ядра Linux 6.6.



Источник: http://www.opennet.ru/opennews/art.shtml? num=60151

©  OpenNet