25์ 80์ผ์ ์ถ์๋ Firefox XNUMX ๋ฆด๋ฆฌ์ค์ ๊ธฐ์ด๊ฐ ๋๋ Firefox ์ฝ๋๋ฒ ์ด์ค์์, ์ถ๊ฐ๋จ Linux์ ๋ํ ๋นํ์ฑํ ๋ณ๊ฒฝ ์ ๋ณธ Wayland ๊ธฐ๋ฐ ์์คํ
์ ๋ํ ๋น๋์ค ๋์ฝ๋ฉ์ ํ๋์จ์ด ๊ฐ์์ ์ง์ํฉ๋๋ค. ๊ฐ์์ VA-API(Video Acceleration API) ๋ฐ FFmpegDataDecoder๋ฅผ ์ฌ์ฉํ์ฌ ์ ๊ณต๋ฉ๋๋ค. ๋ฐ๋ผ์ VA-API๋ฅผ ํตํ ํ๋์จ์ด ๋น๋์ค ๊ฐ์ ์ง์ ์ด์ฉ ๊ฐ๋ฅํฉ๋๋ค X11 ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ Linux ์์คํ
์ ๊ฒฝ์ฐ.
์ด์ ์๋ Wayland ๋ฐ DMABUF ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ๋ ์๋ก์ด ๋ฐฑ์๋์๋ง ์์ ์ ์ธ ํ๋์จ์ด ๋น๋์ค ๊ฐ์์ด ์ ๊ณต๋์์ต๋๋ค. X11์ ๊ฒฝ์ฐ gfx ๋๋ผ์ด๋ฒ ๋ฌธ์ ๋ก ์ธํด ๊ฐ์์ด ์ ์ฉ๋์ง ์์์ต๋๋ค. ์ด์ X11์ ๋น๋์ค ๊ฐ์ ํ์ฑํ ๋ฌธ์ ๋ ๋ค์์ ํตํด ํด๊ฒฐ๋์์ต๋๋ค. ์ ์ฌ์ฉ EGL. ๋ํ X11์ด ํ์ฌ๋ ์์คํ
์ ๊ฒฝ์ฐ EGL์ ํตํด WebGL์ ์๋ํ๋ ๊ธฐ๋ฅ์ด ๊ตฌํ๋์์ผ๋ฉฐ, ํฅํ X11์ฉ WebGL์ ํ๋์จ์ด ๊ฐ์์ ์ง์ํ ์์ ์
๋๋ค.
ํ์ฌ ์ด ๊ธฐ๋ฅ์ ์์ง ๋ชจ๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์๊ธฐ ๋๋ฌธ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋นํ์ฑํ๋์ด ์์ต๋๋ค(widget.dmabuf-webgl.enabled๋ฅผ ํตํด ํ์ฑํ๋จ).
EGL์ ํตํด ์์
์ ํ์ฑํํ๊ธฐ ์ํด Webrender๋ฅผ ์ค์ ํ ํ ํ๊ฒฝ ๋ณ์ MOZ_X11_EGL์ด ์ ๊ณต๋ฉ๋๋ค.
OpenGL ํฉ์ฑ ๊ตฌ์ฑ ์์๋ GLX ๋์ EGL์ ์ฌ์ฉํ๋๋ก ์ ํ๋ฉ๋๋ค. ๊ตฌํ์ ๋ค์์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ์๋ก์ด ๋ฐฑ์๋ ํํฐ์
๋์ ํตํด ์ค๋น๋ DMABUF ๊ธฐ๋ฐ X11์ ๊ฒฝ์ฐ DMABUF ๋ฐฑ์๋, ์ด์ ์ Wayland์ ์ ์๋ ๊ฒ์
๋๋ค.
์ถ๊ฐ์ ์ผ๋ก ์ฃผ๋ชฉํ ์ ์๋ ๊ฒ์ ํฌํจ Firefox 79 ๋ฆด๋ฆฌ์ค๊ฐ ํ์ฑ๋ ์ฝ๋ ๊ธฐ๋ฐ์ธ Windows 10 ํ๋ซํผ์ AMD ์นฉ ๊ธฐ๋ฐ ๋ฉํ์ฉ WebRender ํฉ์ฑ ์์คํ
WebRender๋ Rust ์ธ์ด๋ก ์์ฑ๋์์ผ๋ฉฐ ๋ ๋๋ง ์๋๋ฅผ ํฌ๊ฒ ๋์ด๊ณ ๋ ๋๋ง ์๋๋ฅผ ํฌ๊ฒ ๋์ผ ์ ์์ต๋๋ค. GPU์์ ์คํ๋๋ ์
ฐ์ด๋๋ฅผ ํตํด ๊ตฌํ๋๋ ํ์ด์ง ์ฝํ
์ธ ์ GPU ์ธก ๋ ๋๋ง์ผ๋ก ์์
์ ์ด๋ํ์ฌ CPU์ ๋ํ ๋ถํ๋ฅผ ์ค์
๋๋ค. ์ด์ ์๋ Intel GPU, AMD Raven Ridge APU, AMD Evergreen APU ๋ฐ NVIDIA ๊ทธ๋ํฝ ์นด๋๊ฐ ์ฅ์ฐฉ๋ ๋
ธํธ๋ถ์ฉ Windows 10 ํ๋ซํผ์์ WebRender๊ฐ ํ์ฑํ๋์์ต๋๋ค. Linux์์ WebRender๋ ํ์ฌ ์ผ๊ฐ ๋น๋์์๋ง Intel ๋ฐ AMD ์นด๋์ ๋ํด ํ์ฑํ๋๋ฉฐ NVIDIA ์นด๋์์๋ ์ง์๋์ง ์์ต๋๋ค. about:config๋ฅผ ๊ฐ์ ๋ก ์ ์ฉํ๋ ค๋ฉด "gfx.webrender.all" ๋ฐ "gfx.webrender.enabled" ์ค์ ์ ํ์ฑํํ๊ฑฐ๋ ํ๊ฒฝ ๋ณ์ MOZ_WEBRENDER=1์ด ์ค์ ๋ Firefox๋ฅผ ์คํํด์ผ ํฉ๋๋ค.
Firefox 79์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ถ๊ฐ ์ฃผ์ ํ์์ค์ ํ์๋ ๋๋ฉ์ธ์ ๋ํด ๋์ ์ฟ ํค ๊ฒฉ๋ฆฌ๋ฅผ ํ์ฑํํ๋๋ก ์ค์ ("๋์ ์์ฌ ๊ฒฉ๋ฆฌ"์์ฒด ๋ฐ ํ์ฌ ์ฝ์
์ด ์ฌ์ดํธ์ ๊ธฐ๋ณธ ๋๋ฉ์ธ์ ๊ธฐ๋ฐ์ผ๋ก ๊ฒฐ์ ๋๋ ๊ฒฝ์ฐ). ์ด ์ค์ ์ ์ฟ ํค ์ฐจ๋จ ๋ฐฉ๋ฒ์ ๋๋กญ๋ค์ด ๋ธ๋ก์ ์๋ ์ด๋ ์ถ์ ์ฐจ๋จ ์ค์ ์น์
์ ๊ตฌ์ฑ์์์ ์ ๊ณต๋ฉ๋๋ค.
๋ํ Firefox 79์์๋ ํ์ฑํ ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ก์ด ์คํ ์ค์ ํ๋ฉด์ Chrome์ about:flags์ ์ ์ฌํ๊ฒ ์คํ ๊ธฐ๋ฅ์ ํ์ฑํํ๊ธฐ ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ 'about:preferences#experimental'์
๋๋ค.
์ถ์ฒ : opennet.ru