Firefox 7は本当に快適になったのか?

さて、新機能でもふれたように、今回のバージョンアップの最大の注目点は、メモリ使用量の削減であろう。Firefox 4が登場したとき、その速さは、確かに感嘆に値するものであった。しかし、メモリ消費量の多さにもおどろかされた。Firefoxの大きな魅力の1つに、様々なアドオンがあり、同時にこれが、メモリ消費を拡大させている。また、メモリ管理についても、一度確保したメモリの解放がなかなか行われないといった指摘もあった、結果として、500MB以上の実メモリを消費してしまうようなことも、パワーユーザーならば、少なくなかった。そのような背景もあり、Mozillaでは、MemShrinkというプロジェクトを立ち上げ、メモリ消費の改善に取り組んできた。まさにその成果ともいえよう。実際には、

  • JavaScriptオブジェクトのメモリ管理方法の変更
  • ガベージコレクションを時間ベースで確実に行うように変更

といったことが行われた。冒頭で「多くの場合で20%~30%、最大50%」という表現をした。これは、別ないい方をすれば「使用法によって」ということになる。これについては、実例をお見せしたほうがはやいであろう。このテストに使用したPCは、以下の通りである。

CPU:Intel Core 2 Duo E6600 2.4GHz
Memory:DDR2 1GB * 4
M/B:Asus P2B-VM
HDD:SATA 80GB
Graphics:NVIDIA GeForce 9800GT
OS:Windows 7 32bit版

まずは、Firefox 6に人気のあるTab Mix Plus、IE Tab、Adblock Plus、テキストリンクといったアドオンを5つほどインストールする。その状態で、Firefox 6とFirefox 7で同じページを4つのタブで開いた状態にし、タスクマネージャでメモリ消費量を測定した。まずは、Firefox 6である(図9)。

図9 Firefox 6のメモリ消費量

ついで、Firefox 7である(図10)。

図10 Firefox 7のメモリ消費量

わずかであるが、Firefox 7のほうが良好な結果となった。しかし、この結果からでは、メモリ消費量が改善したとはいいがたい。次に行ったのは、Firefox 7で、20のタブでWebページ表示してみた(図11)。

図11 Firefox 7で20のWebページを表示

300MB近いメモリを消費している。この状態で、約30分ほどこのままにした。30分後のタスクマネージャが、図12である。

図12 30分後のメモリ消費量

286MBから241MBへと、約16%の削減となった。最初にいった「使用法によって」であるが、多くのアドオンをインストールし、多くのタブを使う、さらに長時間Firefoxを起動したままにするようなヘビーユーザーにとって、今回のメモリ使用量の削減はより体感をもって感じることができるようになるだろう。タスクマネージャのメモリ消費量の値のみであるが、今回のメモリ管理の変更を納得しえる結果となった。実際、ヘビーユーザーであればあるほど、体感で感じることができるのではないか。

そのほかの性能について、比較してみる

Webブラウザの性能評価でよく使われるものに、JavaScriptの実行速度がある。もちろん、これまで指摘してきたように、JavaScriptの実行速度のみが、Webブラウザの絶対性能とならない。特に、ここで使用するSunSpider(http://www.webkit.org/perf/sunspider/sunspider.html)は、実際の環境とは大きく乖離があると指摘されている。しかし、Firefoxといえば、まず、その違いをみてみたい数字の1つであることはまちがいない。その点を踏まえたうえで、読んでいただきたい。まずは、Firefox 7のSunSpider 0.9.1の測定結果である(図13)。

図13 Firefox 6のSunSpider結果

次いで、Firefox 7である(図14)。

図14 Firefox 7のSunSpider結果

さて、Firefox 7の新機能と実際にそれを試してみた。バージョンを重ねるたびに、着実に改善を図ってきている。繰り返すが、高速リリースには、セキュリティアップデートも含まれる。ユーザーはすみやかに、アップデートすべきであろう。今回ふれることできなかった、ロケーションバーのURL表示の変更やアドオン対策は、機会があればふれたいと思う。