Windows Tips & News

WSL obtiendra la prise en charge de DirectX sous Linux avec les versions 21H1

click fraud protection
CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du système

Microsoft ajoute la prise en charge de DirectX aux distributions Linux exécutées dans un environnement WSL 2. Le changement est mis en œuvre avec les premières versions 21H1 de la branche fer (Fe) de l'anneau rapide, qui devraient arriver en juin.

Publicité

Microsoft est présentation Modèle de pilote d'affichage Windows version 2.9, WDDMv2.9, qui apportera l'accélération GPU à WSL 2. Pour rendre cela possible, il y a un module spécial du noyau Linux du côté de WSL, dxgkrnl.

Contenucacher
dxgkrnl
DxCore et D3D12 sous Linux

dxgkrnl

Dxgkrnl est un tout nouveau pilote de noyau pour Linux qui expose les /dev/dxg périphérique en mode utilisateur Linux. /dev/dxg expose un ensemble d'IOCTL qui imitent étroitement la couche de service du noyau WDDM D3DKMT native sur Windows. Dxgkrnl à l'intérieur du noyau Linux se connecte via le bus VM à son grand frère sur l'hôte Windows et utilise cette connexion de bus VM pour communiquer avec le GPU physique.

Dxgkrnl

Si l'hôte dispose de plusieurs GPU, tous les GPU sont projetés et disponibles pour l'environnement Linux (en supposant que tous ces GPU exécutent les pilotes WDDMv2.9).

Microsoft affirme que l'architecture ne limitera ni n'interférera pas les performances des applications WSL et des ressources GPU sera correctement partagé entre les applications Windows exécutées avec l'interface graphique Linux et les applications de console qui utilisent DirectX.

L'édition Linux de Dxgkrnl est rendue open source.

DxCore et D3D12 sous Linux

Ce projet apporte l'API D3D12 complète à Linux sans imitations.ibd3d12.so est compilé à partir du même code source que d3d12.dll sous Windows mais pour une cible Linux. Il offre le même niveau de fonctionnalités et de performances (moins la surcharge de virtualisation). La seule exception est Present(). Il n'y a actuellement aucune intégration de présentation avec WSL car WSL est une expérience de console uniquement aujourd'hui. L'API D3D12 peut être utilisée pour le rendu et le calcul hors écran, mais il n'y a pas de prise en charge de la chaîne d'échange pour copier les pixels directement sur l'écran.

DxCore (libdxcore.so) est une version simplifiée de dxgi où les aspects hérités de l'API ont été remplacés par des versions modernes. DxCore est disponible sur Windows et Linux. DxCore est également utilisé pour héberger une version plate de l'API D3DKMT utilisée par un pilote basé sur WDDM sous Windows pour communiquer avec le GPU. Cette API résume les différences dans la façon dont les différents services WDDM se dirigent vers le noyau (table des services sous Windows par rapport à IOCTL sous Linux).

libd3d12.so et libdxcore.so sont des binaires en mode utilisateur précompilés à code source fermé qui sont fournis avec Windows. Ces binaires sont compatibles avec les distributions basées sur la glibc et sont automatiquement montés sous /usr/lib/wsl/lib et rendu visible au chargeur. En d'autres termes, ces API fonctionnent directement sans qu'il soit nécessaire d'installer des packages supplémentaires ou de modifier la configuration de la distribution. La prise en charge est actuellement limitée aux distributions basées sur la glibc, y compris Ubuntu, Debian, Fedora, Centos, SUSE, etc.

Le D3D12 ne pourrait pas fonctionner sans un pilote de mode utilisateur (UMD) spécifique au GPU fourni par les partenaires des fabricants de GPU. L'UMD est responsable de choses telles que la compilation de shaders en code d'octet spécifique au matériel et traduire les demandes de rendu d'API en instructions GPU réelles dans des tampons de commande à exécuter par le GPU. Le package du pilote hôte est monté à l'intérieur de WSL sur /usr/lib/wsl/drivers et directement accessible à l'API d3d12. Encore une fois, le pilote WDDM 2.9 est requis.

Microsoft travaille également à apporter l'accélération GPU pour OpenGL, OpenCL et Vulkan en WSL via la bibliothèque Mesa.

Mesa Linux en WSL

Prise en charge de DxCore, D3D12, DirectML et NVIDIA CUDA arrive à un Windows Insider Construction rapide bientôt. La sonnerie rapide est actuellement sur le Manganèse (Mn) Branche du système d'exploitation. La sonnerie rapide devrait basculer sur la nouvelle Branche de fer (Fe) vers la fin du mois de juin, ce qui exposera cette nouvelle fonctionnalité aux initiés.

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du système
Vivaldi 2.2: Désactiver le service DNS de Google

Vivaldi 2.2: Désactiver le service DNS de Google

L'équipe derrière le navigateur Vivaldi le plus innovant a publié un nouvel instantané de la proc...

Lire la suite

Désactiver les aperçus des cartes de survol d'onglet dans Google Chrome

Désactiver les aperçus des cartes de survol d'onglet dans Google Chrome

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du sy...

Lire la suite

Télécharger les archives du pack thématique Architecture de Londres

Ce site Web utilise des cookies pour améliorer votre expérience lorsque vous naviguez sur le site...

Lire la suite