Das Unternehmen Microsoft bei der Umsetzung erheblicher im WSL (Windows Subsystem for Linux), das die Ausführung von Linux-Anwendungsdateien in Windows ermöglicht:
- die Unterstützung der Ausführung von Linux-Anwendungen mit grafischer Benutzeroberfläche, was die Notwendigkeit der Verwendung von X-Servern anderer Anbieter überflüssig macht. Die Unterstützung erfolgt durch die Virtualisierung des Zugriffs auf die GPU.
Für den Linux-Kernel wurde ein offener Treiber , erstellt, der das Gerät /dev/dxg mit Diensten bereitstellt, die den WDDM D3DKMT Diensten des Windows-Kernels entsprechen. Der Treiber organisiert die Verbindung zur physischen GPU über einen VM-Bus. Linux-Anwendungen haben den gleichen Zugriff auf die GPU, wie dies bei nativen Windows-Anwendungen der Fall ist, ohne dass eine Ressourcenteilung zwischen Windows und Linux erforderlich ist.
Darüber hinaus steht für Linux die Bibliothek libd3d12.so zur Verfügung, die direkten Zugang zur Grafik-API Direct3D 12 bietet und aus demselben Code besteht wie die Windows-Bibliothek d3d12.dll. In Form der Bibliothek DxCore (libdxcore.so) ist auch eine vereinfachte Version der API dxgi verfügbar. Die Bibliotheken libd3d12.so und libdxcore.so sind proprietär und werden nur in Binärversionen geliefert (eingehängt in /usr/lib/wsl/lib), die mit Ubuntu, Debian, Fedora, CentOS, SUSE und anderen Distributionen auf Glibc-Basis kompatibel sind.
OpenGL-Unterstützung in Mesa wird durch , die Aufrufe in die DirectX 12 API übersetzt. Die Implementierungsmethode der Vulkan-API befindet sich derzeit noch in der Planungsphase.
- Die Unterstützung von Rechenoperationen auf Grafikkarten wurde hinzugefügt, was die Nutzung von Hardware-Beschleunigung für Aufgaben wie maschinelles Lernen und künstliche Intelligenz ermöglicht. In der ersten Phase wird die Unterstützung von CUDA in WSL-Umgebungen bereitgestellt und , das über die D3D12 API arbeitet (zum Beispiel kann TensorFlow in einer Linux-Umgebung mit einem Backend für DirectML ausgeführt werden). Die Unterstützung von OpenCL ist über eine Schicht möglich, die Aufrufe in die DX12 API mappt.
- Die Installation von WSL wird bald durch den einfachen Befehl «wsl.exe —install» unterstützt.
Quelle: opennet.ru
