Microsoft erweitert Linux-Distributionen, die in einer WSL 2-Umgebung ausgeführt werden, um DirectX-Unterstützung. Die Änderung wird mit den ersten 21H1-Builds aus dem Iron (Fe) -Zweig im Fast Ring live geschaltet, die voraussichtlich im Juni dieses Jahres erfolgen werden.
Werbung
wie man Multiplayer auf unturned spielt
Microsoft ist Einführung Windows Display Driver Model Version 2.9, WDDMv2.9, das die GPU-Beschleunigung auf WSL 2 bringt. Um dies zu ermöglichen, gibt es auf der WSL-Seite ein spezielles Linux-Kernelmodul.dxgkrnl
.
dxgkrnl
Dxgkrnl ist ein brandneuer Kerneltreiber für Linux, der das verfügbar macht / dev / dxg Gerät in den Benutzermodus Linux. / dev / dxg macht eine Reihe von IOCTL verfügbar, die die native WDDM D3DKMT-Kernel-Service-Schicht unter Windows genau nachahmen. Dxgkrnl im Linux-Kernel stellt über den VM-Bus eine Verbindung zu seinem großen Bruder auf dem Windows-Host her und verwendet diese VM-Bus-Verbindung, um mit der physischen GPU zu kommunizieren.
Wenn der Host über mehrere GPUs verfügt, werden alle GPUs projiziert und stehen der Linux-Umgebung zur Verfügung (vorausgesetzt, auf allen diesen GPUs werden WDDMv2.9-Treiber ausgeführt).
Microsoft behauptet, dass die Architektur die Leistung von WSL-Apps nicht einschränkt oder beeinträchtigt und die GPU-Ressourcen ordnungsgemäß zwischen Windows-Apps, die neben der Linux-GUI ausgeführt werden, und Konsolen-Apps, die DirectX verwenden, gemeinsam genutzt werden.
Die Dxgkrnl Linux Edition wird als Open Source veröffentlicht.
Wie baut man ein Sägewerk in Terrarien
DxCore & D3D12 unter Linux
Dieses Projekt bringt die vollständige D3D12-API ohne Imitations unter Linux .ibd3d12.so wird aus demselben Quellcode wie d3d12.dll unter Windows kompiliert, jedoch für ein Linux-Ziel. Es bietet das gleiche Maß an Funktionalität und Leistung (abzüglich Virtualisierungsaufwand). Die einzige Ausnahme ist Present (). Derzeit gibt es keine Präsentationsintegration mit WSL, da WSL heute nur noch für Konsolen verfügbar ist. Die D3D12-API kann für das Rendern und Berechnen außerhalb des Bildschirms verwendet werden. Es gibt jedoch keine Swapchain-Unterstützung, um Pixel direkt auf den Bildschirm zu kopieren.
DxCore (libdxcore.so) ist eine vereinfachte Version von dxgi, bei der ältere Aspekte der API durch moderne Versionen ersetzt wurden. DxCore ist sowohl unter Windows als auch unter Linux verfügbar. DxCore wird auch verwendet, um eine flache Version der D3DKMT-API zu hosten, die von einem WDDM-basierten Treiber unter Windows verwendet wird, um mit der GPU zu kommunizieren. Diese API abstrahiert die Unterschiede, wie die verschiedenen WDDM-Dienste zum Kernel gelangen (Diensttabelle unter Windows im Vergleich zu IOCTL unter Linux).
libd3d12.so und libdxcore.so sind vorkompilierte Binärdateien im Benutzermodus, die als Teil von Windows ausgeliefert werden. Diese Binärdateien sind mit glibc-basierten Distributionen kompatibel und werden automatisch unter gemountet/ usr / lib / wsl / libund für den Lader sichtbar gemacht. Mit anderen Worten, diese APIs funktionieren sofort, ohne dass zusätzliche Pakete installiert oder die Konfiguration der Distribution angepasst werden müssen. Die Unterstützung ist derzeit auf glibc-basierte Distributionen beschränkt, einschließlich Ubuntu, Debian, Fedora, Centos, SUSE usw.
D3D12 wäre ohne einen GPU-spezifischen Benutzermodus-Treiber (UMD), der von GPU-Herstellerpartnern bereitgestellt wird, nicht funktionsfähig. Die UMD ist für Dinge wie das Kompilieren von Shadern zu hardwarespezifischem Bytecode und das Übersetzen von API-Rendering-Anforderungen in tatsächliche GPU-Anweisungen in Befehlspuffern verantwortlich, die von der GPU ausgeführt werden sollen. Das Host-Treiberpaket befindet sich in der WSL unter / usr / lib / wsl / drivers und ist direkt für die d3d12-API zugänglich. Wieder ist ein WDDM 2.9-Treiber erforderlich.
Microsoft arbeitet auch daran, die GPU-Beschleunigung für OpenGL, OpenCL und Vulkan in WSL über die Mesa-Bibliothek bereitzustellen.
So verbinden Sie Kodi mit Chromecast
Unterstützung für DxCore, D3D12, DirectML und NVIDIA CUDA kommt zu einem Windows Insider Schneller Aufbau bald. Der Fast-Ring befindet sich derzeit auf der Mangan (Mn) Betriebssystemzweig. Es wird erwartet, dass der Fast-Ring auf den neuen umschaltetEisen (Fe) -Zweig
gegen Ende Juni, um diese neue Funktionalität Insidern zugänglich zu machen.