๋ชจ๋ฅด๋ ๋๋ค์ ์ํด ์ค๋ช
kvm์ ๋ฆฌ๋ ์ค์ ๊ฐ์ํ ์ํํธ์จ์ด์
๊ทธ๋ฆฌ๊ณ gpu passthrough๋ gpu์ฅ์น๋ฅผ ํธ์คํธ(SteamOS)์์ ๋ถ๋ฆฌ์์ผ ๊ฐ์ํ๋ OS(์๋์ฐ)์ ๋ถ์ด๋ ๊ธฐ๋ฅ์
IOMMU ๊ตฌ์ฑ์ด๋ ๋ญ ๊ทธ๋ฐ ์ค์ ์ ๊ดด๋ก์์ย ์ฐจ์นํ๊ณ ์๋ผ๋
์๋์ฐ ๋์ผ๋ถํ ๊ณผ ๋น๊ตํด์ ์๋ฌด๋ฐ ์ฅ์ ์ด ์์
์ฌ๊ธฐ์ SteamOS์์ ์๋์ฐ๋ฅผ ๊ฐ์ํํด์ ์คํํ๋ค๋ ์ ์ ๋ก ๋งํด๋ณด๊ฒ ์
ํธ์คํธ=SteamOS, ๊ฒ์คํธ=์๋์ฐ ์ ๋๋ค
1. ํ๋ฉด์ด ์ ๋ณด์
๊ฐ๋จํจ. ๊ฐ์ํ๋ ํ๋์จ์ด๋ฅผ ํธ์คํธ์์ ์ ์ดํ์ง ๋ชปํจ
๋ค๋ฅธ VMWare๋ผ๋์ง VirtualBox๊ฐ์ด ๋ฐ๊ฐ์ํ GPU๋ฅผ ์ฌ์ฉํด์ ๊ฒ์คํธ๊ฐ GPU๋ฅผ ์ฌ์ฉํ๋๊ฒ ์๋๋ผ
๋ง ๊ทธ๋๋ก ํจ์ค์ค๋ฃจ, ๊ฒ์คํธ๊ฐ ์ง์ ์ ์ดํจ
๊ทธ๋์ ์คํ๋ฑ์ด ์๋ ๋ค๋ฅธ ๊ธฐ๊ธฐ์์ย ๋ฌธ๋ผ์ดํธ ๊ฐ์ ์๊ฒฉ ํ๋ก๊ทธ๋จ์ผ๋ก ํ๋ฉด์ ์ถ๋ ฅํด์ผ ํจ
2. ์ฌ๋ถํ ํ์
GPU๋ฅผ ๊ฐ๋จํ๊ฒ ๊ฒ์คํธ์์ ์ ๊ฑฐํด์ ํธ์คํธ์ ๋ถ์ผ ์๋ ์์
์ ํ ๊ณผ์ ์์ ์ฌ๋ถํ ์ด ํ์ํจ
3. ์ํฐ์นํธ์์ ์คํ์ ๊ฑฐ๋ถํจ
๊ฐ์ํ ํ๊ฒฝ์์ ๊ฐ์งํ๋ ๋ฐฉ๋ฒ์ ์ ๋ง ๋ง๊ณ ๋ณด์ ๋ฌธ์ ๋๋ฌธ์ ๋๋ถ๋ถ์ ์ํฐ์นํธ๋ ์คํ์ ๊ฑฐ๋ถํจ
์ํฐ์นํธ ๋ฟ ์๋๋ผ ๋ง์ ํ๋ก๊ทธ๋จ์์ themida๊ฐ์ ๋๋ ํ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๋๋ฐ
๊ฐ์ํ ํ๊ฒฝ์ ๊ฐ์งํ๋ฉด ์๋ฌ๋ด๋ฉฐ ์คํ์ ๋ฉ์ถค
๋์ผ๋ถํ ๊ณผ ๋น๊ตํด์ ์๋ฌด๋ฐ ์ฅ์ ์ด ์๋ ๊ฒ์ ํ์ธํ ์ ์์
์ ์ผํ ์ฅ์ ์ด๋ผ๋ฉด ์๋์ฐ ํํฐ์ ์ ๋์ ์ผ๋ก ์กฐ์ ํ ์ ์๊ฒ ๋ค๋ ์ ๋?
์ด์ค๊ฐํ๊ฒ ๋ง๊ตฌ๋ - dc App
ใ ใ ๋ ๋ง๋๋ก๊ธด ํ๋ฐ ๋๋ ๊ทธ๋ฅ ๊ฐ๋ฅ์ ํ๋ค ์ ๋๋ก๋ง ์ด์ผ๊ธฐํ์ง ์ฅ์ ๋ณด๋จ ๋จ์ ์ด ์น๋ช ์ ์ด๋ผ ์ง์งํ๊ฒ ์ด ๊ธ์ ์๋. ๊ทผ๋ฐ ํ๋ฉด์ด ์๋ณด์ด๋๊ฑด ๋ง์ด ์๋๋ค๊ณ ์๊ฐํ๋๋ฐ ์ฑ๊ธ GPU ํจ์ค์ฐ๋ฃจ๋ฉด ์๋ณด์ผ๋ฆฌ๊ฐ ์๊ฑฐ๋ .
์ ์๋์ฐ์ ํจ์ค์ค๋ฃจํ๋ฉด ์๋๊ฐ ๋จ๋ค ์๋ชป์๊ฐํจ
https://github.com/joeknock90/Single-GPU-Passthrough#libvirt-hook-scripts
์คํฌ๋ฆฝํธ
์์ธํ ๋ณด๋ฉด ์ฌ๋ถํ ์ด ๋ฑํ ํ์ํ์ง ์์๋ฐ ์คํ OS ์ฌ๋ถํ ์์๋ง ๋ฌด์กฐ๊ฑด ์คํ๋๋ ์คํฌ๋ฆฝํธ๊ฐ ์์ผ๋ฉด ์ค์๋ํ ์๋ ์์๋ฏ. ์ํฐ์นํธ ๊ฑธ๋ฆฌ๋๊ฑด ๋ง์ ๊ฒ์๋ค ํ ์คํธ๋ฅผ ์ํด๋ด์ ๊ทธ๋ฅ ๊ฐ๋ฅ์ฑ์ด ๋ฎ๋ค๊ณ ๋ง ์จ๋์๊ฑธ ์ค์ํ๋ค.
์๊ฑด ๋ชฐ๋๋ค GPU Isolation ์์ด ์๋ํ๋๊ตฌ๋