Windows Tips & News

WSL отримає підтримку DirectX в Linux зі збірками 21H1

click fraud protection

Microsoft додає підтримку DirectX до дистрибутивів Linux, що працюють у середовищі WSL 2. Зміна набуває чинності з першими збірками 21H1 з гілки Iron (Fe) у Fast Ring, які, як очікується, з’являться в червні цього року.

Microsoft є ознайомлення Модель драйвера дисплея Windows версії 2.9, WDDMv2.9, яка принесе прискорення GPU до WSL 2. Щоб зробити це можливим, на стороні WSL є спеціальний модуль ядра Linux, dxgkrnl.

dxgkrnl

Dxgkrnl — це абсолютно новий драйвер ядра для Linux, який відкриває /dev/dxg пристрій у режим користувача Linux. /dev/dxg відкриває набір IOCTL, які точно імітують внутрішній рівень служби ядра WDDM D3DKMT у Windows. Dxgkrnl всередині ядра Linux підключається через VM Bus до свого старшого брата на хості Windows і використовує це з'єднання VM шини для зв'язку з фізичним GPU.

Якщо хост має кілька графічних процесорів, усі графічні процесори проектуються та доступні для середовища Linux (припускаючи, що всі ці графічні процесори працюють під керуванням драйверів WDDMv2.9).

Microsoft стверджує, що архітектура не обмежуватиме і не заважатиме продуктивності програм WSL та ресурсів GPU буде належним чином розподілено між програмами Windows, які працюють разом із графічним інтерфейсом Linux, і консольними програмами, які використовують DirectX.

Видання Dxgkrnl Linux стає відкритим вихідним кодом.

DxCore і D3D12 на Linux

Цей проект надає повний D3D12 API до Linux без imitations.ibd3d12.so скомпільований з того самого вихідного коду, що й d3d12.dll у Windows, але для цілі Linux. Він пропонує той самий рівень функціональності та продуктивності (мінус накладні витрати на віртуалізацію). Єдиним винятком є ​​Present(). Наразі немає інтеграції презентації з WSL, оскільки WSL сьогодні є лише консольною. API D3D12 можна використовувати для позакадрового візуалізації та обчислень, але немає підтримки ланцюга підкачки для копіювання пікселів безпосередньо на екран.

DxCore (libdxcore.so) — це спрощена версія dxgi, де застарілі аспекти API були замінені сучасними версіями. DxCore доступний як у Windows, так і в Linux. DxCore також використовується для розміщення плоскої версії API D3DKMT, яка використовується драйвером на основі WDDM в Windows для спілкування з графічним процесором. Цей API абстрагує відмінності в тому, як різні служби WDDM потрапляють до ядра (таблиця служб у Windows проти IOCTL в Linux).

libd3d12.so і libdxcore.so — це попередньо скомпільовані двійкові файли режиму користувача із закритим кодом, які поставляються як частина Windows. Ці двійкові файли сумісні з дистрибутивами на базі glibc і автоматично монтуються /usr/lib/wsl/lib і зроблено видимим для навантажувача. Іншими словами, ці API працюють прямо з коробки без необхідності встановлювати додаткові пакети або налаштовувати конфігурацію дистрибутива. Наразі підтримка обмежена дистрибутивами на базі glibc, включаючи Ubuntu, Debian, Fedora, Centos, SUSE тощо.

D3D12 не зміг би працювати без драйвера режиму користувача для графічного процесора (UMD), наданого партнерами-виробниками графічних процесорів. UMD відповідає за такі речі, як компіляція шейдерів до апаратного байтового коду та перетворення запитів на рендеринг API у фактичні інструкції графічного процесора в буферах команд, які мають виконуватися ГПУ. Пакет драйверів хоста монтується всередині WSL за адресою /usr/lib/wsl/drivers і доступний безпосередньо для API d3d12. Знову потрібен драйвер WDDM 2.9.

Microsoft також працює над прискоренням графічного процесора для OpenGL, OpenCL і Vulkan у WSL через бібліотеку Mesa.


Підтримка DxCore, D3D12, DirectML і NVIDIA CUDA приходить до а Windows Insider Швидка побудова незабаром. Швидке кільце наразі на Марганець (Mn) Відділення ОС. Очікується, що Fast ring перейде на нове Залізна (Fe) гілка до кінця червня, коли інсайдерам буде доступна нова функція.

Microsoft Edge 78.0.262.0 виходить на канал розробників, ось що нового

Microsoft Edge 78.0.262.0 виходить на канал розробників, ось що нового

РЕКОМЕНДУЄМО: Натисніть тут, щоб вирішити проблеми з Windows та оптимізувати продуктивність систе...

Читати далі

Архів диспетчера пристроїв Windows 10

Цей веб-сайт використовує файли cookie, щоб покращити ваш досвід під час навігації веб-сайтом. З ...

Читати далі

Windows 10 фонові програми Архіви

Функція Центру дій у Windows 10 може бути знайома користувачам Windows Phone. Він зберігає в одно...

Читати далі