๋ง์ดํฌ๋ก์ํํธ
-
์ถ๊ฐ๋จ ๊ทธ๋ํฝ ์ธํฐํ์ด์ค๋ก Linux ์ ํ๋ฆฌ์ผ์ด์ ์คํ์ ์ง์ํ๋ฏ๋ก ๋ค๋ฅธ ํ์ฌ์ X ์๋ฒ๋ฅผ ์ฌ์ฉํ ํ์๊ฐ ์์ต๋๋ค. ์ง์์ GPU ์ก์ธ์ค ๊ฐ์ํ๋ฅผ ํตํด ๊ตฌํ๋ฉ๋๋ค.Linux ์ปค๋์ฉ ์คํ ๋๋ผ์ด๋ฒ๊ฐ ์ค๋น๋์์ต๋๋ค.
dxgkrnl ์ด๋ Windows ์ปค๋์ WDDM D3DKMT๋ฅผ ๋ณต์ ํ๋ ์๋น์ค์ ํจ๊ป /dev/dxg ์ฅ์น๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋๋ผ์ด๋ฒ๋ VM ๋ฒ์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌผ๋ฆฌ์ GPU์ ๋ํ ์ฐ๊ฒฐ์ ์ค์ ํฉ๋๋ค. Linux ์ ํ๋ฆฌ์ผ์ด์ ์ Windows์ Linux ๊ฐ์ ๋ฆฌ์์ค๋ฅผ ๊ณต์ ํ ํ์ ์์ด ๊ธฐ๋ณธ Windows ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋์ผํ ์์ค์ GPU ์ก์ธ์ค ๊ถํ์ ๊ฐ์ต๋๋ค.
๋ํ Linux์ฉ libd3d12.so ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ ๊ณต๋์ด Direct3D 12 ๊ทธ๋ํฝ API์ ๋ํ ์ง์ ์ก์ธ์ค๋ฅผ ์ ๊ณตํ๊ณ Windows d3d12.dll ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋์ผํ ์ฝ๋๋ก ๊ตฌ์ถ๋ฉ๋๋ค. dxgi API์ ๋จ์ํ๋ ๋ฒ์ ์ DxCore ๋ผ์ด๋ธ๋ฌ๋ฆฌ(libdxcore.so) ํ์์ผ๋ก๋ ์ ๊ณต๋ฉ๋๋ค. libd3d12.so ๋ฐ libdxcore.so ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋ ์ ์ ์ด๋ฉฐ Ubuntu, Debian, Fedora, Centos, SUSE ๋ฐ Glibc ๊ธฐ๋ฐ์ ๊ธฐํ ๋ฐฐํฌํ๊ณผ ํธํ๋๋ ๋ฐ์ด๋๋ฆฌ ์ด์ ๋ธ๋ฆฌ(/usr/lib/wsl/lib์ ๋ง์ดํธ)๋ก๋ง ์ ๊ณต๋ฉ๋๋ค.
Mesa์ OpenGL ์ง์์ ๋ค์์ ํตํด ์ ๊ณต๋ฉ๋๋ค.
์ค๊ฐ์ธต DirectX 12 API์ ๋ํ ํธ์ถ์ ๋ณํํ๋ Vulkan API ๊ตฌํ ๋ฐฉ๋ฒ์ ์์ง ๊ณํ ๋จ๊ณ์ ์์ต๋๋ค.
- ๊ธฐ๊ณ ํ์ต ๋ฐ ์ธ๊ณต ์ง๋ฅ๊ณผ ๊ฐ์ ์์
์ ํ๋์จ์ด ๊ฐ์์ ์ฌ์ฉํ ์ ์๋ ๋น๋์ค ์นด๋ ์ปดํจํ
์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ฒซ ๋ฒ์งธ ๋จ๊ณ์์ WSL ํ๊ฒฝ์ CUDA์ ๋ํ ์ง์์ ์ ๊ณตํ๊ณ
๋ค์ด๋ ํธML , D3D12 API ์์์ ์คํ๋ฉ๋๋ค(์๋ฅผ ๋ค์ด Linux ํ๊ฒฝ์์๋ DirectML์ฉ ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํ์ฌ TensorFlow๋ฅผ ์คํํ ์ ์์ต๋๋ค). OpenCL ์ง์์ DX12 API์ ๋ํ ํธ์ถ ๋งคํ์ ์ํํ๋ ๋ ์ด์ด๋ฅผ ํตํด ๊ฐ๋ฅํฉ๋๋ค. - ๊ฐ๋จํ "wsl.exe --install" ๋ช ๋ น์ ํตํด WSL ์ค์น๊ฐ ๊ณง ์ง์๋ ์์ ์ ๋๋ค.
์ถ์ฒ : opennet.ru