Mozilla Gfx團隊宣佈,從Firefox 94開始,有一大群Linux用戶將會預設啟用繪圖介面後端EGL,這樣的改變不只可以提高WebGL的效能,遊戲以及圖形應用的執行也會更順暢,同時功耗也較小,並且具有硬體影像解碼的功能。

由於要讓X11或是Wayland等視窗系統,能夠獲得諸如OpenGL等硬體繪圖加速功能,中間需要有一層組合的介面,以X11搭配OpenGL使用上,大多數程式使用GLX,而由標準制定組織Khronos所發布的EGL,則可被應用在Wayland、Android和嵌入式裝置上。EGL雖然比起GLX,有著許多不可取代的優勢,但是在過去因為一些原因,使得EGL採用腳步緩慢。

Firefox是一款重度仰賴硬體加速的應用程式,但是從過去以來,預設配置仍然採用軟體渲染,一直到最近,Firefox才對大多數Linux用戶,啟用新的渲染引擎Webrender,提供更好的硬體加速功能。由於開發團隊在Firefox中,要實作Wayland硬體加速功能支援時,他們發現無法重用GLX程式碼,而最後卻是使用了Android EGL,因此他們也就一步一步地改進EGL/Wayland後端,使得EGL更成熟。

EGL在去年開始發光,其能夠在X11上提供硬體影像解碼,在經過持續改進Firefox和其他元件,修復許多臭蟲之後,開發團隊認為EGL已經足夠成熟,可以在Firefox 94中作為預設配置,因此只要用戶使用Mesa驅動程式21版本以上,就能夠獲得此項預設配置。

使用Nvidia驅動程式的用戶則需要再等待一段時間,因為目前的驅動程式還缺少重要的擴充,不過之後就能夠在Nvidia驅動程式470系列版本之後啟用EGL,而要有DMABUF(DMA Buffer Sharing API)支援,獲得更好的WebGL效能,需要GBM(Generic Buffer Management)支援,以及495系列以上的驅動程式版本。

Firefox 94預設啟用EGL,對用戶來說,最直接感覺的是WebGL效能提高,官方解釋,因為DMABUF零複製緩衝區共享功能,WebGL工作負載可以在沙盒中完成,不需要往返系統記憶體,少了內容搬移,運作起來也就更加快速,因此重度使用WebGL的應用,包括遊戲,都會比過去還要順暢,就連Google地圖的使用體驗也獲得提升。

而且在EGL中,當畫面僅有一小部分內容改變,系統現在不會再重新繪製整個視窗,像是當網站上或是載入頁籤有小動畫情況,系統也能夠以更低的功耗運作。Mozilla Gfx團隊提到,EGL是比GLX更加先進的介面,並且也適應複雜的硬體,能夠良好地在更多平臺上,加速桌面應用程式的運作。另外,硬體影像解碼也是用戶對EGL有感的功能之一,雖然現在還是有幾個臭蟲,但是使用起來仍然瑕不掩瑜。


熱門新聞

Advertisement