๋ฉ์ฌ ํ๋ก์ ํธ ๊ฐ๋ฐ์ ๋
ผ์ ์ค์ด๋ค. Rust ์ธ์ด๋ฅผ ์ฌ์ฉํ์ฌ OpenGL/Vulkan ๋๋ผ์ด๋ฒ ๋ฐ ๊ทธ๋ํฝ ์คํ ๊ตฌ์ฑ ์์๋ฅผ ๊ฐ๋ฐํ๋ ๊ธฐ๋ฅ. ํ ๋ก ์ ๋๋ผ์ด๋ฒ ๊ฐ๋ฐ์์ธ Alyssa Rosenzweig์ ์ํด ์์๋์์ต๋๋ค. ํฌํ๋ก์คํธ Midgard ๋ฐ Bifrost ๋ง์ดํฌ๋ก์ํคํ
์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ Mali GPU์ฉ. ์ด ๊ณํ์ ๋
ผ์ ๋จ๊ณ์ ์์ผ๋ฉฐ ์์ง ๊ตฌ์ฒด์ ์ธ ๊ฒฐ์ ์ ๋ด๋ ค์ง์ง ์์์ต๋๋ค.
Rust ์ฌ์ฉ์ ์ง์งํ๋ ์ฌ๋๋ค์ ๋ฉ๋ชจ๋ฆฌ ์ฑ๋ฅ์ ํฅ์์ํค๊ณ after-free ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค, ๋ ํฌ์ธํฐ ์ญ์ฐธ์กฐ ๋ฐ ๋ฒํผ ์ค๋ฒ๋ฐ๊ณผ ๊ฐ์ ๋ฌธ์ ๋ฅผ ์ ๊ฑฐํ๋ ๋ฅ๋ ฅ์ ๊ฐ์กฐํฉ๋๋ค. Rust ์ง์์ ํตํด Mesa๋ ์ํํธ์จ์ด ๋ ๋๋ง ์์คํ
๊ณผ ๊ฐ์ ์ XNUMX์ ๊ฐ๋ฐ์ ํฌํจํ ์๋ ์์ต๋๋ค. ์นด์ Rust๋ก ์์ฑ๋ Vulkan ๊ทธ๋ํฝ API ๊ตฌํ์ ์ฌ์ฉํฉ๋๋ค.
์ต๊ทผ WebGL์ ์ง์ํ๋ ๋ธ๋ผ์ฐ์ ์์ ์ ๋ขฐํ ์ ์๋ ์ฝ๋๋ฅผ ์คํํ ๋ OpenGL์ ์ฌ์ฉํ๋ค๋ ์ ์์ ๋๋ผ์ด๋ฒ ๋ณด์ ๊ฐ์ ์ ์๊ธ์ฑ์ด ๋์์ก์ผ๋ฉฐ, ์ด๋ ๋๋ผ์ด๋ฒ๋ฅผ ์ฌ์ฉ์ ์์คํ
์ ๋ํ ๊ณต๊ฒฉ์ ์ค์ํ ๋ฒกํฐ๋ก ๋ง๋ญ๋๋ค. ํ์ฌ Mesa๋ ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ๋ฅผ ์ต์ํํ๊ธฐ ์ํด ์ด๋ฏธ ralloc ๋ฐ ์ ์ ์ฝ๋ ๋ถ์๊ณผ ๊ฐ์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๊ณ ์์ง๋ง ๊ทธ ์ฌ์ฉ๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์์ต๋๋ค.
Rust ๊ตฌํ์ ๋ฐ๋ํ๋ ์ฌ๋๋ค ๊ณ ๋ คํ๋ค, Rust์ ์ ์ฉํ ๊ธฐ๋ฅ ๋๋ถ๋ถ์ ๊ฐ๋ฐ์ ์ต์ C++๋ก ์ด์ ํ์ฌ ์ป์ ์ ์์ผ๋ฉฐ, Mesa์ ๋๋ถ๋ถ์ด C๋ก ์์ฑ๋์๋ค๋ ์ ์ ๊ณ ๋ คํ๋ฉด ๋์ฑ ๋งค๋ ฅ์ ์ผ๋ก ๋ณด์
๋๋ค. Rust์ ๋ํ ์ฃผ์ฅ ์ค์๋ ์ธ๊ธ๋์ด ์์ต๋๋ค. ๋ณต์ก ์กฐ๋ฆฝ ์์คํ
, ์๋ง์ด ์๋๋ค ํ๋ฌผ ํฌ์ฅ ์์คํ
์ ๋ฐ์ธ๋ฉ,
์กฐ๋ฆฝ ํ๊ฒฝ์ ๋ํ ์๊ตฌ ์ฌํญ ํ๋ ๋ฐ ํฌํจํด์ผ Linux์์ ์ฃผ์ ๋ฐ์คํฌํฑ ๊ตฌ์ฑ ์์๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ ํ์ํ ์ด์
๋ธ๋ฆฌ ์ข
์์ฑ์ ๋ํ Rust ์ปดํ์ผ๋ฌ์
๋๋ค.
๊ฐ๋ฐ์ Rust๋ฅผ ์ฌ์ฉํ๋ ค๋ ์์ง์์ ์ต๊ทผ AMD์์๋ ๊ด์ฐฐ๋ฉ๋๋ค. ๊ณต์์ ์ด์์ต๋๋ค Radeon GPU์ฉ 3D ๋๋ผ์ด๋ฒ์ ๊ด๋ จ๋ ์๋ก์ด ๋๊ตฌ๋ฅผ ๊ฐ๋ฐํ๋ Rust ํ๋ก๊ทธ๋๋จธ์
๋๋ค.
์ถ์ฒ : opennet.ru