Windows Tips & News

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

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

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

Реклама

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

Змістприховати
dxgkrnl
DxCore і D3D12 на Linux

dxgkrnl

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

Dxgkrnl

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

Microsoft стверджує, що архітектура не обмежуватиме і не заважатиме продуктивності програм WSL та ресурсів графічного процесора буде належним чином розподілено між програмами 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 і доступний безпосередньо для d3d12 API. Знову потрібен драйвер WDDM 2.9.

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

Mesa Linux в WSL

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

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

Змініть колір курсору в консолі в Windows 10

У Windows 10 build 18298 було внесено ряд змін у вбудовану консольну підсистему операційної систе...

Читати далі

Корисні гарячі клавіші Sticky Notes у Windows 10

Корисні гарячі клавіші Sticky Notes у Windows 10

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

Читати далі

Microsoft випускає нові «Попередній перегляд» сукупних оновлень для Windows 10, 21 липня 2020 р.

Microsoft випускає нові «Попередній перегляд» сукупних оновлень для Windows 10, 21 липня 2020 р.

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

Читати далі