Microsoft เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบŸเบดเบเป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡ GPU เปƒเบ™ WSL

เบšเปเบฅเบดเบชเบฑเบ” Microsoft เบ›เบฐโ€‹เบเบฒเบ” เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™ เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ เปƒเบ™เบฅเบฐเบšเบปเบšเบเปˆเบญเบ WSL (Windows Subsystem for Linux), เป€เบŠเบดเปˆเบ‡เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเป„เบŸเบฅเปŒ Linux เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เปƒเบ™ Windows:

  • เป€เบžเบตเปˆเบกเปเบฅเป‰เบง เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ Linux เบ—เบตเปˆเบกเบตเบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฎเบนเบšเบžเบฒเบš, เบฅเบปเบšเบฅเป‰เบฒเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡ X เบˆเบฒเบเบšเปเบฅเบดเบชเบฑเบ”เบญเบทเปˆเบ™เป†. เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบœเปˆเบฒเบ™ GPU เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ virtualization.

    Microsoft เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบŸเบดเบเป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡ GPU เปƒเบ™ WSL

    เป„เบ”เป€เบงเบตเป€เบ›เบตเบ”เป„เบ”เป‰เบ–เบทเบเบเบฐเบเบฝเบกเบชเปเบฒเบฅเบฑเบš kernel Linux dxgkrnl, เป€เบŠเบดเปˆเบ‡เบชเบฐเบซเบ™เบญเบ‡เบญเบธเบ›เบฐเบเบญเบ™ /dev/dxg เบเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ replicating WDDM D3DKMT เบ‚เบญเบ‡ Windows kernel. เป„เบ”เป€เบงเบตเบชเป‰เบฒเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบš GPU เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบฎเปˆเบฒเบ‡เบเบฒเบเป‚เบ”เบเปƒเบŠเป‰เบฅเบปเบ”เป€เบก VM. เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ Linux เบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ GPU เปƒเบ™เบฅเบฐเบ”เบฑเบšเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ Windows เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡, เป‚เบ”เบเบšเปเปˆเบ•เป‰เบญเบ‡เบกเบตเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ Windows เปเบฅเบฐ Linux.

    Microsoft เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบŸเบดเบเป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡ GPU เปƒเบ™ WSL

    เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” libd3d12.so เปเบกเปˆเบ™เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบชเปเบฒเบฅเบฑเบš Linux, เป€เบŠเบดเปˆเบ‡เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป‚เบ”เบเบเบปเบ‡เบเบฑเบš Direct3D 12 graphics API เปเบฅเบฐเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบˆเบฒเบเบฅเบฐเบซเบฑเบ”เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Windows d3d12.dll. เบชเบฐเบšเบฑเบšเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ‚เบญเบ‡ dxgi API เบเบฑเบ‡เบกเบตเบขเบนเปˆเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ” DxCore (libdxcore.so). เบซเปเบชเบฐเปเบธเบ” libd3d12.so เปเบฅเบฐ libdxcore.so เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบ‚เบญเบ‡ เปเบฅเบฐเบชเบฐเปœเบญเบ‡เปƒเบซเป‰เบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเบšเบฑเบ™เบ™เบฒเบฃเบตเป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™ (เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™ /usr/lib/wsl/lib) เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบš Ubuntu, Debian, Fedora, Centos, SUSE เปเบฅเบฐเบเบฒเบ™เปเบˆเบเบขเบฒเบเบญเบทเปˆเบ™เป†เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ Glibc.

    Microsoft เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบŸเบดเบเป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡ GPU เปƒเบ™ WSL

    เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ OpenGL เปƒเบ™ Mesa เปเบกเปˆเบ™เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เป‚เบ”เบเบœเปˆเบฒเบ™ interlayer, เป€เบŠเบดเปˆเบ‡เปเบ›เบเบฒเบ™เป‚เบ—เป„เบ›เบซเบฒ DirectX 12 API. เบงเบดเบ—เบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” Vulkan API เบเบฑเบ‡เบขเบนเปˆเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™.

    Microsoft เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบŸเบดเบเป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡ GPU เปƒเบ™ WSL

  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‰เปƒเบ™เบšเบฑเบ”เบงเบตเบ”เบตเป‚เบญ, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เปƒเบŠเป‰เบเบฒเบ™เป€เบฅเบฑเปˆเบ‡เบฎเบฒเบ”เปเบงเบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบฎเบฝเบ™เบฎเบนเป‰เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเปเบฅเบฐเบ›เบฑเบ™เบเบฒเบ›เบฐเบ”เบดเบ”. เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”, เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก WSL เบˆเบฐเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ CUDA เปเบฅเบฐ DirectML, เปเบฅเปˆเบ™เบขเบนเปˆเป€เบ—เบดเบ‡เบ‚เบญเบ‡ D3D12 API (เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก Linux เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปเบฅเปˆเบ™ TensorFlow เบ”เป‰เบงเบ backend เบชเปเบฒเบฅเบฑเบš DirectML). เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ OpenCL เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เป‚เบ”เบเบœเปˆเบฒเบ™เบŠเบฑเป‰เบ™เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบเบฒเบ™เป‚เบ—เป„เบ›เบซเบฒ API DX12.

    Microsoft เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบŸเบดเบเป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเบเบฒเบ™เป€เบฅเบฑเปˆเบ‡ GPU เปƒเบ™ WSL

  • เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ WSL เปƒเบ™เป„เบงเป†เบ™เบตเป‰เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ”เป‰เบงเบเบ„เปเบฒเบชเบฑเปˆเบ‡ "wsl.exe --install" เบ‡เปˆเบฒเบเบ”เบฒเบ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™