Valve и Collabora переносят открытый драйвер RADV из Linux в Windows: уже запущен Counter-Strike 2
Компания Valve совместно со студией Collabora начала работу над портированием открытого графического драйвера RADV из Linux в операционную систему Windows. Проект финансируется Valve на ранних этапах исследовательской работы, цель — сделать открытый Vulkan-драйвер для видеокарт AMD жизнеспособным на платформе Microsoft. 
Что такое RADV и почему это важно
RADV — это открытый драйвер с открытым исходным кодом из графического стека Mesa 3D, обеспечивающий поддержку API Vulkan для видеокарт AMD на Linux. На протяжении лет он стал стандартом де-факто для владельцев Radeon в Linux, вынудив самого AMD отказаться от собственных альтернативных разработок в пользу экосистемы Mesa. Именно на RADV работает портативная консоль Steam Deck, а также устройства линейки Steam Machine — успех этих платформ во многом обусловлен качеством открытого драйвера.
В Windows же владельцы графических процессоров Radeon до сих пор вынуждены использовать исключительно официальный проприетарный драйвер AMD. Пользователи регулярно сталкиваются с проблемами стабильности и задержками в исправлении ошибок закрытого софта. Появление RADV на Windows должно дать энтузиастам и разработчикам игр возможность самостоятельно отлаживать графические баги, оперативно вносить исправления и использовать единую кодовую базу независимо от операционной системы.
Технический подход: пользовательский режим и WDDM2
Проект не предполагает полной замены проприетарного низкоуровневого драйвера AMD в ядре Windows. RADV функционирует на уровне пользователя (User-Mode Driver), интегрируясь через подсистему WDDM2, и взаимодействует с официальным драйвером ядра от AMD. Написание собственного драйвера режима ядра под Windows не входит в планы разработчиков.
Технический фундамент инициативы заложила разработчик Faith Ekstrand ещё в 2024 году. На конференции XDC 2024 она продемонстрировала техническую возможность запуска RADV в Windows, доказав, что начиная с Windows 10 подсистема WDDM2 позволяет драйверам пользовательского режима взаимодействовать с ядром системы. Из-за отсутствия документации и закрытого характера структур данных AMD разработчикам пришлось прибегнуть к реверс-инжинирингу.
Прогресс Collabora: от эксперимента к нативной работе
Инженеры Collabora подхватили наработки Ekstrand и перевели проект на новый уровень. Им удалось:
- избавиться от необходимости использовать слой виртуализации WSL, обеспечив нативную работу в Windows;
- расширить поддержку тесселяции, шейдеров и управления памятью;
- перехватить вызовы системных функций и добиться вывода простой вращающейся трёхмерной модели на ранней стадии.
Команде авторов ждало серьезное испытание при переходе на архитектуру RDNA 3 и видеокарту Radeon RX 7900 XT — изменения в железе вызывали мертвые зависания системы при любых сложных вычислениях. 
Главное достижение: Counter-Strike 2 на RADV в Windows
Практической вехой текущей фазы стал успешный запуск игры Counter-Strike 2 на Windows с использованием открытого драйвера RADV. Любой желающий может протестировать эту сборку, добавив параметр запуска -vulkan. Экспериментальный код уже выложен в открытый доступ в специальной ветке разработки.
Хотя драйвер ещё не прошёл официальное тестирование на соответствие спецификациям Vulkan и далек от идеала, полноценная работа киберспортивного шутера внутри Windows на стороннем драйвере стала важной вехой для всего сообщества. 
Основные препятствия и перспективы
Главной преградой на пути к релизной версии остаётся взаимодействие с закрытым драйвером ядра от AMD. Проблема в том, что закрытые структуры данных меняются с каждым обновлением графического пакета Radeon Software, из-за чего сторонний драйвер теряет работоспособность. Для решения этой проблемы авторам потребуется либо официальный документированный интерфейс от AMD, либо специальная прослойка совместимости (библиотека-заглушка), которая могла бы выступать в качестве стабильного интерфейса между RADV и драйвером ядра.
Серьезные ограничения сохраняются и в подсистеме вывода изображения на экран: RADV пока использует медленный программный метод обработки через центральный процессор. Полноценная интеграция с DXGI и реализация вывода без лишнего копирования кадра в памяти способна увеличить производительность в не упирающихся в видеокарту сценариях почти в три раза, но это потребует прямой помощи со стороны AMD и Microsoft.
Если разработчикам удастся довести RADV до стабильного состояния, один открытый драйвер сможет обслуживать видеокарты AMD сразу на двух крупнейших игровых платформах, а улучшения будут быстрее распространяться между ними. Valve уже финансирует множество разработчиков, работающих над RADV и другими компонентами графического стека Linux — теперь инвестиции расширяются и на Windows. 