WebRender a Nightly-ban

kami911 képe

Szeptember 12-én Jeff Muizelaar fejlesztő engedélyezte a WebRender használatát a Firefox fejlesztői változatában. A Nightly kiadást, 10-es Windows-t, Nvidia illesztőprogramot, nem laptopot használók számára automatikusan bekapcsolásra kerül a WebRender használata. Ez a Nightly felhasználók 17%-át érinti.

A WebRender a Firefox újraírt grafikus backendje, amely a játékprogramokból ismert technológiákat próbálja meg kamatoztatni a böngésző grafikus megjelenítést biztosító folyamataiban. A Webrender megpróbálja használni a GPU-t a feladatok elvégzéséhez, illetve több CPU magot is képes munkára fogni. Ez egy speciális leképző, amely a webes feladatokra van optimalizálva, csak a szükséges műveletek kötegelt, gyorsítótárazott végrehajtását biztosítva. A WebRender, miképpen a Firefox Quantum többi összetevője is, Rust nyelvben íródott.

Idézzük fel mi is a WebRender, és hogyan segít ez a böngésző teljesítményén:

De a munka itt nem áll meg! A Mozilla mérnökei dolgoznak a WebRender Firefoxban történő integrálásán is. A Servo-ból származtatott szintén Rust nyelven írt komponens Quatum Render néven érkezik majd a Firefoxba. A WebRender célja, hogy a raszterizálást és kompozitálást, azaz a leképzési folyamat utolsó két lépcsőjét teljesen új alapokra helyezze. Az elkészült alrendszer egy modern számítógépes játék megjelenítéséi technológiáit építi be a böngészők világába. Ezzel a terhelés nagy része a GPU-ra hárul majd, megteremtve a lehetőségét, hogy a böngésző a folyamatos megjelenítést biztosító 60 FPS-t minden körülmények között tarthassa. Erre a példa:

 

De a WebRender nem csak az általános böngészési feladatokban tesz majd jó szolgálatot, hanem a WebVR esetében a szükséges 4K felbontás melletti 90 FPS elérésében is. A WebRender korai verziója már a Nightly-ban be is kapcsolható az about:config oldalon. Az érdeklődők a fejlesztés nyomon követhetik a GitHub tárolóban és a Firefox Nightly Twitter csatornáján.

Ebben a cikkben részletes leírás található a WebRender vívmányairól.

A CPU így már leginkább csak menedzselni fogja a kép rajzolását, és kompozitálását. A weboldal alapján a CPU összeállítja a szükséges feladatkötegeket, amelyet a GPU fog elvégezni. A GPU ezután a CPU-nál sokkal gyorsabban előállítja a tartalom alapján böngészőben megjelenítendő képet. A nagyobb sebesség a GPU-ban lévő hatalmas párhuzamosításból, a nem látható és egymás fedő területek okos eltávolításából és a rajzolási parancsok összevonásából és kötegelt átadásából származik.

Összefoglalva tehát a Firefox a pár évvel ezelőtti fő szálban történő leképzéstől:

már eljutott oda, hogy a leképzés utolsó két fázisa már külön folyamatban van, és 2018-ra a WebRender lévén eljut oda, hogy a rajzolás és kompozitálás nagy részben GPU-n fut majd:

(Kimarad egyelőre a betűkészletek leképzése, mert az a jelenlegi helyzeteben szebben jelenik meg CPU-n elkészítve, de erre is készül megoldás a Pathfinder projekten belül.)

Kalandorok maguktól is bekapcsolhatják a WebRender használatát a saját gépük Nightly programjában. Ehhez mindösszesen a „gfx.webrender.all” beállítást kell „true” értékre állítani. A Fejlesztők örömmel várják a WebRenderrel kapcsolatos hibabejelentéseket!

A bekapcsolt WebRender ténye az „about:support” oldalon a „WEBRENDER” részben látható. Kellemes hibavadászatot!

Hozzászólások