Windows Tips & News

WSL får DirectX-støtte i Linux med 21H1-bygg

Microsoft legger til DirectX-støtte til Linux-distros som kjører i et WSL 2-miljø. Endringen går live med de første 21H1-byggene fra Iron (Fe)-grenen i Fast Ring, som forventes å komme i juni.

Microsoft er introduserer Windows Display Driver Model versjon 2.9, WDDMv2.9, som vil bringe GPU-akselerasjon til WSL 2. For å gjøre det mulig er det en spesiell Linux-kjernemodul på WSLs side, dxgkrnl.

dxgkrnl

Dxgkrnl er en helt ny kjernedriver for Linux som avslører /dev/dxg enhet til brukermodus Linux. /dev/dxg avslører et sett med IOCTL som tett etterligner det opprinnelige WDDM D3DKMT-kjernetjenestelaget på Windows. Dxgkrnl inne i Linux-kjernen kobles over VM-bussen til sin storebror på Windows-verten og bruker denne VM-bussforbindelsen til å kommunisere med den fysiske GPUen.

Hvis verten har flere GPUer, projiseres alle GPUer og er tilgjengelige for Linux-miljøet (forutsatt at alle disse GPUene kjører WDDMv2.9-drivere).

Microsoft hevder at arkitekturen ikke vil begrense eller forstyrre ytelsen til WSL-apper og GPU-ressurser deles riktig mellom Windows-apper som kjører sammen med Linux GUI og konsollapper som bruker DirectX.

Dxgkrnl Linux-utgaven blir gjort åpen kildekode.

DxCore & D3D12 på Linux

Dette prosjektet bringer full D3D12 API til Linux uten imitasjoner.ibd3d12.so er kompilert fra samme kildekode som d3d12.dll på Windows, men for et Linux-mål. Den tilbyr samme nivå av funksjonalitet og ytelse (minus virtualiseringskostnader). Det eneste unntaket er Present(). Det er for øyeblikket ingen presentasjonsintegrasjon med WSL, da WSL er en konsollopplevelse i dag. D3D12 API kan brukes til offscreen-gjengivelse og databehandling, men det er ingen swapchain-støtte for å kopiere piksler direkte til skjermen.

DxCore (libdxcore.so) er en forenklet versjon av dxgi der eldre aspekter av API er erstattet av moderne versjoner. DxCore er tilgjengelig på både Windows og Linux. DxCore brukes også til å være vert for en flat versjon av D3DKMT API brukt av en WDDM-basert driver på Windows for å snakke med GPU. Denne API abstraherer forskjellene i hvordan de ulike WDDM-tjenestene tar seg til kjernen (servicetabell på Windows versus IOCTL på Linux).

libd3d12.so og libdxcore.so er lukket kildekode, forhåndskompilerte brukermodusbinærfiler som leveres som en del av Windows. Disse binærfilene er kompatible med glibc-baserte distroer og monteres automatisk under /usr/lib/wsl/lib og gjort synlig for lasteren. Med andre ord, disse API-ene fungerer rett ut av esken uten å måtte installere flere pakker eller justere distroens konfigurasjon. Støtte er for øyeblikket begrenset til glibc-baserte distroer inkludert Ubuntu, Debian, Fedora, Centos, SUSE og så videre.

D3D12 ville ikke kunne fungere uten en GPU-spesifikk brukermodusdriver (UMD) levert av GPU-produsentens partnere. UMD er ansvarlig for ting som å kompilere shaders til maskinvarespesifikk bytekode og oversette API-gjengivelsesforespørsler til faktiske GPU-instruksjoner i kommandobuffere som skal utføres av GPUen. Vertsdriverpakken er montert inne i WSL på /usr/lib/wsl/drivers og direkte tilgjengelig for d3d12 API. Igjen kreves WDDM 2.9-driver.

Microsoft jobber også med å bringe GPU-akselerasjon for OpenGL, OpenCL og Vulkan i WSL gjennom Mesa-biblioteket.


Støtte for DxCore, D3D12, DirectML og NVIDIA CUDA kommer til en Windows Insider Rask bygging snart. Fast-ringen er for øyeblikket på Mangan (Mn) OS-gren. Fast-ringen forventes å bytte over til den nye Jern (Fe) gren mot den senere delen av juni, som vil avsløre denne nye funksjonaliteten for Insiders.

Kumulative oppdateringer for Windows 10 utgitt 8. juni 2021

Kumulative oppdateringer for Windows 10 utgitt 8. juni 2021

I dag er det Patch Tuesday, så Redmond-firmaet utsteder oppdateringer for alle støttede utgivelse...

Les mer

Edge Dev 93.0.910.5 utgitt med noen få nye alternativer og rettelser

Edge Dev 93.0.910.5 utgitt med noen få nye alternativer og rettelser

ANBEFALT: Klikk her for å fikse Windows-problemer og optimalisere systemytelsenMicrosoft har løsl...

Les mer

Etter sigende kan tilpassede temaer brukes til å stjele Windows 10-brukerlegitimasjon

Etter sigende kan tilpassede temaer brukes til å stjele Windows 10-brukerlegitimasjon

ANBEFALT: Klikk her for å fikse Windows-problemer og optimalisere systemytelsenEt nytt funn fra s...

Les mer