Мицрософт имплементира графички сервер и ГПУ убрзање у ВСЛ

Мицрософт најавио о реализации значительных улучшениј в подсистеме WSL (Windows Subsystem for Linux), обеспечивающей запуск исполняемых файлов Linux в Windows:

  • Додато поддержка запуска Linux-приложений с графическим интерфейсом, что позволяет отказаться от необходимости использования X-серверов других компаний. Поддержка реализована через виртуализацию доступа к GPU.

    Мицрософт имплементира графички сервер и ГПУ убрзање у ВСЛ

    Для ядра Linux подготовлен открытый драйвер дкгкрнл, предоставляющий устройство /dev/dxg с сервисами повторяющими WDDM D3DKMT ядра Windows. Драйвер организует соединение с физическим GPU при помощи VM bus. Linux приложения имеют тот же уровень доступ к GPU, что и родные приложения для Windows, без применения разделения ресурсов между Windows и Linux.

    Мицрософт имплементира графички сервер и ГПУ убрзање у ВСЛ

    Более того, для Linux предоставлена библиотека libd3d12.so, предоставляющая прямой доступ к графическому API Direct3D 12 и собранная из того же кода, что Windows-библиотека d3d12.dll. В форме библиотеки DxCore (libdxcore.so) также предоставлен упрощённый вариант API dxgi. Библиотки libd3d12.so и libdxcore.so являются проприетарными и поставляются только в бинарных сборках (монтируются в /usr/lib/wsl/lib), совместимых с Ubuntu, Debian, Fedora, Centos, SUSE и другими дистрибутивами на бащзе Glibc.

    Мицрософт имплементира графички сервер и ГПУ убрзање у ВСЛ

    Поддержка OpenGL в Mesa обеспечена через прослойку, транслирующую вызовы в API DirectX 12. Метод реализации API Vulkan пока на стадии планирования.

    Мицрософт имплементира графички сервер и ГПУ убрзање у ВСЛ

  • Добавлена поддержка компьютерных вычислений на видеокартах, которая позволяет использовать аппаратное ускорение для таких задач как машинное обучение и искусственный интеллект. На первом этапе в WSL-окружениях будет обеспечена поддержка CUDA и ДирецтМЛ, работающим поверх API D3D12 API (например, в Linux-окружении можно запустить TensorFlow с бэкендом для DirectML). Поддержка OpenCL возможна через прослойку, выполняющую маппинг вызовов в API DX12.

    Мицрософт имплементира графички сервер и ГПУ убрзање у ВСЛ

  • Установка WSL вскоре будет поддерживаться с помощью простой команды «wsl.exe —install».

Извор: опеннет.ру

Додај коментар