繼 Firefox 6 正式版推出後, Mozilla 也跟著把 Firefox 7 從 Aurora 推進到 Beta 版本。如果先前有下載 Firefox 7 Aurora、或今天下載 Beta 1 版本的使用者,觀察後會發現記憶體管理明有長足進步,Mozilla 開發者 Nicholas Nethercote 也秀出數據證明所言不假。
Firefox 7 Beta 1下載網址(正體中文):
Linux:ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/7.0b1-candidates/build1/linux-i686/zh-TW/firefox-7.0b1.tar.bz2(32位元) ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/7.0b1-candidates/build1/linux-x86_64/zh-TW/firefox-7.0b1.tar.bz2(64位元)
▲Firefox 7 Beta 1版本。
Mozilla在今日推出Firefox 7 Beta 1版本,介面延續Firefox 4以來的模樣,最大的改進是改善Firefox 4以來的記憶體管理問題。這問題最早在Firefox 2之前出現過,後來在Firefox 3、3.5、3.6版本都獲得改善;不過隨著Firefox 4導入大量新功能後問題又再度出現,部分原因也歸咎於JavaScript的垃圾收集(garbage collection)以及圖像解碼(image decoding)所致。瀏覽器核心在長時間使用後會佔用相當大的記憶體用量、無法有效釋放記憶體,導至拖累系統效能,只能藉由關閉瀏覽器重新啟動解決此問題。
Mozilla開發者Nicholas Nethercote在mozilla blog表示,Firefox 7的記憶體使用量比Firefox 6(以及Firefox 5、4)低了20~30%、有時候甚至可減少50%,這意味著Firefox 7速度將會更快,也能減低當機的機率,畢竟Windows版本的Firefox只有32位元,僅能使用2GB的虛擬記憶體,對整體性能有相當大的提升。
Mozilla將改進計劃命名為MemShrink,這個項目目的在提升瀏覽器速度、穩定性,重點就是減少記憶體使用量,其中分頁和記憶體的優化都有助於提升瀏覽器速度,並提高穩定性。MemShrink計劃是從今年6月開始,先前已發佈過Firefox memory bloat fix和Fragmentation文章報告改善進度,因為這項計劃需時12~18週,趕不上現在Firefox每6~7週更新的幅度,因此跳過Firefox 5、6而選擇在Firefox 7亮相。
Firefox 7記憶體用量改善多少?
以下是Mozilla團隊利用MozMill這項測試工具對Firefox 6、7、8進行耐力測試,在30個分頁中重複開啟100個網站測試記憶體用量,從測試圖表即可看出Firefox 7的改進。
▲Firefox 6、7、8的記憶體佔使用量圖表。左上為平均顯性/強制記憶體(explicit memory)、右上為平均常駐記憶體(resident memory)、左下角為最大顯性記憶體、右下為最大常駐記憶體。
Firefox 7比Fireofx 6減少的記憶體用量:
- 最小常駐記憶體(Minimum resident memory):1.1% — 23.5% (中間值 6.6%)
- 最大常駐記憶體(Maximum resident memory):-3.5% — 17.9% (中間值 9.6%)
- 平均常駐記憶體(Average resident memory):4.4% — 27.3% (中間值 20.0%)
下面還有另一張圖表,紀錄Firefox 7、6的記憶體使用變化量,紫色為常駐記憶體(resident memory)、綠色為顯性/強制記憶體(explicit memory);對照兩張圖表除了可看出Firefox 7整體記憶體用量較低外,記憶體變化量也比Firefox 6來的低,代表相對穩定。
▲記憶體用量的變化紀錄,左為Firefox 6、右為Firefx 7。
開啟150個網站、117個書籤實測結果
最後測試的還有MemBench這項工具,測試開啟150個網站、每個網站間隔1.5秒的記憶體用量。測試平台為16GB RAM的Ubuntu系統,以及64位元的Firefox 7、6,Firefox 6峰值為2028MB、最後為669MB;Firefox 7的峰值為1851MB(減少8.7%)、最後為321MB(減少52.0%)。legitreviews網站也作了簡單的測試,使用Firefox 7、5開啟相同的117個書籤,再用Windows測量工具觀察記憶體用量,測試結果顯示Firefox 7比Firefox 5省了39.7%的用量。
▲legitreviews測試以Firefox 7 Auroura和Firefox 5開啟117個書籤,比較記憶體用量。
Mozilla也曾表示記憶體管理問題不全然是瀏覽器本身所造成,從報告中發現許多問題是由擴充元件引起,導至SQLite資料庫負擔過重所造成。除了改進記憶體管理外。Firefox 7其它改進功能還包含改版的JavaScript引擎、支援更多的HTML5標準,還有密碼和書籤同步速度也將會更快。
根據Mozillawiki表示,Firefox 7正式版將在9月27日推出,屆時還會出現Firefox 8 Beta版、Firefox 9 Aurora版本(目前Firefox 9為Nightly版本)。
資料、圖片來源:Nicholas Nethercote Mozilla blog