Firefox web browser - Faster, more secure & customizable

Firefox 2系と比べるとFirefox 3系のメモリ消費はだいぶ改善されている。FreeBSDのメモリアロケータであるjemallocを採用したことが大きい。しかし、マルチプロセスアーキテクチャを採用したChromeが登場してから、ふたたびFirefoxのメモリ消費が気になるようになってきた。たしかにChromeの消費するメモリ量は多いが、タブがそれぞれプロセスとして分離しているため、タブを閉じると1プロセス分まるまるメモリが開放される。消費は多くても開放もしっかりしていて、いつまでも大量のメモリを消費し続けるFirefoxよりも魅力を覚えるユーザが増えている。

しかし、Firefox向けに提供されているアドオン/エクステンションは強力で魅力的。特定のアドオン/エクステンションが必要であるため、ほかのブラウザに移れないという開発者やユーザは多い。そうしたユーザに役立つ情報が4 Useful Extensions to Improve Firefox Memory Usage - Make Tech Easierに掲載されている。Firefoxのメモリ使用を改善する4つのエクステンションを紹介するという内容。中でも次の2つのエクステンションはメモリ消費を抑える効果が期待できる。

1. Memory Fox

さまざまなタイミングでFirefoxの消費メモリの削減を実施するエクステンションMemory Fox。Windowsプラットフォームのみの対応となるが、かなりの効果が期待できる。Memory Foxをインストールしたら「ツール」「Memory Fox」「Activate Memory Fox」から機能を有効化。タスクマネージャで消費メモリをモニタすると、さまざまなタイミングでメモリ開放が実施されることを確認できる。ここでは100MB近く消費されていたメモリが、アイコン化している間は大幅に減って5.5MBほどまで削減されたことを確認。使用中でも有効化する前のメモリ消費の半分ほどである50MB前後まで減っていた。

複数のタブを開いた状態のFirefox

インストールしたMemory Foxを有効化

Memory Foxを有効にする前のFirefoxの消費メモリ

Memory Foxを有効にした後、Firefoxをアイコン化した状態での消費メモリ

2. BarTab

アクティブに使っているタブ以外のタブを待機させることでメモリ消費量を抑えるエクステンションBarTab。どのタイミングでタブを待避状態にするかを設定することが可能。しばらく使っていないタブを待避状態へ移行させるなど、それ相応の効果が期待できる。

アクティブなタブ以外は待機している状態

どのタイミングで待避状態にするかを設定可能

4 Useful Extensions to Improve Firefox Memory Usageではこれ以外にも、同時に読み込みを実施するタブの個数を制限するLoad Tabs ProgressivelyReload Tabs Progressivelyも紹介している。こちらは最終的にすべてのタブをアクティブにするため最終的な消費メモリの削減は期待できない。しかし、一気にタブを開くことでシステムが一時的に重くなる状況を回避しやすくなる効果は期待できる。

積極的にメモリを開放することはパフォーマンスの面でマイナス要因となる。しかし、メモリが不足することでスワップアウトなどが発生するようになると、システムやアプリケーションの動作が極端に遅くなることにつながる。ノートPCやネットブック、会社のPCなど、メモリ容量が不足しているもののメモリの増設が難しいケースではこうしたエクステンションを活用することで動作の改善が期待できる。