Валв финансирует перенос драйвера Vulkan RADV Radeon с Linux на Windows

Valve Radv Vulkan Linux Windows драйверы tomshardware.com

Valve спонсирует порт драйвера RADV (Mesa Vulkan для Radeon) с Linux на Windows. Узнайте, как кроссплатформенная разработка уже запускает Counter-Strike 2 и почему это может улучшить стабильность и производительность игр на обеих ОС.

Steam Machine способствовала росту популярности Linux-гейминга, включая установки Bazzite и других ориентированных на игры дистрибутивов Linux. Valve, похоже, не собирается в ближайшее время сворачивать свои проекты с открытым исходным кодом и сейчас работает над портированием драйвера Mesa RadeonVulkan (RADV) на Windows; по словам разработчиков из Collabora, он уже запускает Counter-Strike 2.
Поскольку кроссплатформенная разработка довольно сложна, Valve решила портировать RADV на Windows, спонсируя подрядчиков из Collabora. В своем блоге Collabora рассказала о многочисленных препятствиях, которые пришлось преодолеть для выполнения этой задачи.
С выходом Windows 10 и WDDM 2.0 Microsoft улучшила разделение между пользовательским кодом графических драйверов (подавляющей частью самого драйвера) и частью на уровне ядра, которая непосредственно взаимодействует с видеокартой. Это открыло возможность подключить RADV к драйверу видеокарты AMD на уровне ядра. Однако это легче сказать, чем сделать, поскольку обмен данными между этими частями часто содержит нестандартизированные данные, которые RADV должен понимать. А чтобы понять этот «разговор», его необходимо записать и проанализировать.
Более ранняя попытка 2024 года, предпринятая Фейт Экстранд, привела к созданию базовой, но полезной утилиты для регистрации вызовов WDDM 2.0 и их обратного проектирования для создания базовой реализации RADV. Исходя из необходимости отладки и как инструмент разработки, Collabora развила и расширила работу Экстранд, улучшив регистратор до такой степени, что теперь он может полностью анализировать любое приложение Vulkan, работающее с официальным драйвером AMD, и выгружать все данные, передаваемые ядру.
После долгой работы по изучению того, как драйвер AMD взаимодействует с драйвером ядра, включая, помимо прочего, обратное проектирование неясных структур данных, команда добилась прогресса, и Windows RADV теперь может запускать некоторые игры, включая Counter-Strike 2.
Несмотря на продолжающиеся усилия, Collabora объясняет, что, поскольку драйверы пользовательского пространства и пространства ядра являются парой, изменения в них не гарантируют обратной совместимости, а это означает, что даже полностью функциональный RADV может сломаться в любой момент. По этой причине Collabora просит AMD, Microsoft или обе компании предоставить документированный интерфейс для драйвера ядра или промежуточный уровень совместимости.
Разработка графических драйверов AMD для Linux сосредоточена вокруг стека Mesa Vulkan, причем как сотрудники компании, так и разработчики сообщества вносят вклад в проект RADV. В мире Windows единственным вариантом является проприетарный драйвер AMD, что может вызывать множество проблем при разработке кроссплатформенных игр и приложений.
Драйвер Vulkan от AMD для Windows заслужил репутацию нестабильного. В то же время Linux RADV обычно хвалят за стабильность и производительность, иногда он работает быстрее, чем драйвер AMD для Windows, особенно на старых картах. Благодаря быстрому графику разработки он также часто получает исправления и приросты скорости.
Если в какой-то момент использование RADV в Windows станет жизнеспособным, вы получите, возможно, более стабильный, зрелый драйвер с активной разработкой. Графические проблемы в играх станет гораздо проще отлаживать и исправлять благодаря открытой природе RADV, а студии, ориентирующиеся на Linux, смогут нацеливаться на одну платформу вместо двух с разным поведением. Любой разработчик или компания могут внести свой вклад в проект.
Более того, это позволяет Valve улучшать уровни совместимости Windows, а любые оптимизации можно переносить на обе операционные системы. В целом, это, вероятно, одна из нескольких движущихся частей для улучшения Linux — а значит, Steam Deck, Steam Machine и будущего оборудования — как жизнеспособной игровой платформы. Даже будущая идея о том, что геймеры будут устанавливать RADV на Windows для повышения производительности или стабильности, не является слишком надуманной.
Кроме того, RADV на Windows также помог бы сохранить работоспособность снятых с производства карт, и, учитывая текущие цены, это, безусловно, было бы хорошо.

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

В тренде:


Похожие новости: