ブログトップ 記事一覧 ログイン 無料ブログ開設

Mozilla Flux RSSフィード

2011-06-22

Firefox 5リリース記念:旧世代とのパフォーマンスを比較してみる

予定どおりFirefox 5がリリースされた。高速リリースサイクルを採用した結果、Firefox 4からわずか3か月で新しいバージョンに移行したわけだ。この短期間で、多少なりともパフォーマンスは上がっているのだろうか。それとも、新しいサイクルをテストするため、Web開発者向けの変更が加えられたにとどまるのか。

Firefox 5(Beta 7)のパフォーマンスを旧世代と比較するため、ざっくりとしたテストを行った。対象は、以下のとおり。いずれもWindows Vista SP2(32bit版)上で動作し、新規プロファイルを利用。初期設定のまま、アドオンはすべて無効化してある。ただ、プラグインまで全部無効にすると性能がわからなくなるので、Adobe Flash Player 10.3だけ有効にした。なお、ハードウェア(HW)アクセラレーションはブロックされている。

  • Firefox 3.6:Mozilla/5.0 (Windows; U; Windows NT 6.0; ja; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17
  • Firefox 4:Mozilla/5.0 (Windows NT 6.0; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
  • Firefox 5:Mozilla/5.0 (Windows NT 6.0; rv:5.0) Gecko/20100101 Firefox/5.0

ページの読み込み

WebWaitを用いて、指定したWebページを10秒間隔で5回読み込ませた。はてなYahoo!ニュースを扱っている。当然ながら秒数が少ないほど高速である。

はてな

Firefox 3.6 Firefox 4 Firefox 5
平均値 1.32秒 1.26秒 0.72秒
中央値 0.66秒 0.68秒 0.60秒

Firefox 5の平均値が飛び抜けているのは、読み込みが極端に遅くなるケースが一度もなかったためだ。Webブラウザ側の要因か、Webサイト側の要因かは分からない。ちなみに、中央値で見てもFirefox 5の成績はよい。

Yahoo!ニュース

Firefox 3.6 Firefox 4 Firefox 5
平均値 1.48秒 1.18秒 1.23秒
中央値 1.35秒 2.00秒 1.92秒

平均値で見るとFirefox 4が、中央値で見るとFirefox 3.6が最もよい成績になった。

動的ページの処理

GUIMark 2から、Vector Charting TestBitmap Gaming Testに加えてText Column Testをピックアップして、走らせてみた。

Vector Charting Test

Firefox 3.6 Firefox 4 Firefox 5
fps 16.05 13 13.27

なぜかFirefox 3.6がトップに。Firefox 4 / 5は誤差の範囲で、ともに動作が少しカクカクする。

Bitmap Gaming Test

Firefox 3.6 Firefox 4 Firefox 5
fps 5.37 10.83 12.12

これは順当にFirefox 5の勝ち。動作の様子を見ていても、明らかに旧世代よりスムーズだった。

Text Column Test

Firefox 3.6 Firefox 4 Firefox 5
fps 26.44 25.99 25.34

何と旧世代ほど成績が良いという意外な結果になった。ただ、動作を眺めていた際の印象としては、Firefox 4 / 5にほとんど差はなく、Firefox 3.6が最もスムーズだった。Firefox 4 / 5の結果が悪かったのは、動作の途中で急にフレームレートが下がることがあり、そこに足を引っ張られたためだとみられる。

Canvasの描画

風と宇宙とプログラム「Canvasのベンチマークテストを作って速度を比較してみた」に掲載されていたCanvas Performance Benchmarkを用いて、Canvasの描画処理に関する性能を測定した。

Firefox 3.6 Firefox 4 Firefox 5
Total Score 1.08 0.987 0.989

ここでもFirefox 3.6が最高のスコアを出した。Firefox 4 / 5はテストの後半で処理が若干追いついていないような感じだったため、何か共通の原因があるのかもしれない。

HTML5/JavaScript総合

4Gamer.net「『enchant.js』でゲームはどれくらい動くのか? HTML5でゲームベンチマークを取ってみよう」に掲載されていたシューティングゲームタイプのベンチマークを利用し、100秒間のフレームレートの合計値を測定した。enchant.jsはHTML5/JavaScriptベースのスマートフォン用ゲームエンジンであり、これを利用した上記のベンチマークは、実環境における性能の目安となるだろう。

Firefox 3.6 Firefox 4 Firefox 5
Score 2381 2862 3409

Firefox 5の性能の高さが目を引く。GUIMark 2でもそうだったが、ゲームを処理させるとFirefox 4よりも明らかに高速になるのが興味深い。

JavaScript処理

Firefox 4以降、ベースラインJITと呼ばれるJaegerMonkeyがJavaScriptエンジンに追加されたため、JITが働かない場合の性能をテストする意義が薄れた。代表的なベンチマークを利用して、初期設定の状態でのパフォーマンスを見ていく。

SunSpider

ここでは、Chromium Blog「Updating JavaScript Benchmarks for Modern Browsers」で紹介されているGoogle修正版のSunSpider 0.9.1 JavaScript Benchmarkを用いる。それぞれのテストを50回連続で行うようにしたものだ。

Firefox 3.6 Firefox 4 Firefox 5
Total 960.8ms +/- 1.1% 280.4ms +/- 2.1% 280.0ms +/- 1.2%
3d 150.6ms +/- 4.7% 42.6ms +/- 5.8% 43.4ms +/- 4.0%
access 139.4ms +/- 0.4% 35.9ms +/- 2.4% 36.4ms +/- 4.5%
bitops 44.3ms +/- 2.3% 20.3ms +/- 1.0% 20.5ms +/- 1.7%
controlflow 39.5ms +/- 1.4% 2.6ms +/- 4.5% 2.6ms +/- 2.2%
crypto 34.1ms +/- 6.8% 13.4ms +/- 10.3% 12.7ms +/- 5.0%
date 143.5ms +/- 0.5% 38.8ms +/- 3.0% 38.8ms +/- 1.4%
math 44.6ms +/- 0.8% 25.2ms +/- 5.9% 27.9ms +/- 3.3%
regexp 36.5ms +/- 5.4% 16.6ms +/- 2.8% 16.6ms +/- 1.6%
string 328.3ms +/- 2.5% 84.8ms +/- 3.5% 81.1ms +/- 1.1%

Firefox 4 / 5は完全に誤差のレベル。一方、Firefox 3.6からの向上には目を見張るものがある。これだけのパフォーマンスアップを享受できるのだから、開発競争の真の勝者がユーザーであるのは間違いない。

V8 Benchmark

次に、V8 Benchmark Suite - version 6のスコアをチェック。

Firefox 3.6 Firefox 4 Firefox 5
Score 489 3147 3275

ここでもFirefox 4 / 5は、Firefox 3.6とは桁違いの数値を叩き出している。Googleのマーケティング用という側面もあるベンチマークだが、それでも大幅なスコアの伸びを見ると感慨深い。また、Firefox 5は、主にRichards・DeltaBlue・Crypto・Splayの4つでFirefox 4を上回り、総合スコアでトップに立った。

Dromaeo

Dromaeo: JavaScript Performance Testingは、Mozillaが提供する重量級ベンチマークであり、JavaScriptエンジンなどにかなりの負荷をかけてその性能を測定してくれる。Recommended Testsの最終結果を掲載するが、詳細を比較表から確かめることも可能である。

Firefox 3.6 Firefox 4 Firefox 5
Total 106.11runs/s ±3.27% 317.37runs/s ±2.14% 328.74runs/s ±2.05%

やはりFirefox 5は、JavaScriptの処理能力がわずかに向上している。いったんFirefox 4で性能が飛躍したのは言うまでもない。筆者がこれまでテストしてきたところでは、Firefox 3から3.5でエンジン性能が2倍近くになり、3.5から3.6でおおむね2割増になっていた。ところが、3.6から4では一気に3倍である。今後IonMonkeyが導入されても、ここまでの差は出ないのではないだろうか。

Kraken

Kraken JavaScript BenchmarkはMozillaが提供する新しいベンチマークであり、The Mozilla Blog「Release the Kraken」によれば、従来のものと比べ、現実のWebアプリを処理した際の性能を反映した結果になるという。

Firefox 3.6 Firefox 4 Firefox 5
Total 22252.2ms +/- 0.4% 6641.5ms +/- 0.7% 6775.9ms +/- 0.6%
ai 1350.0ms +/- 1.2% 995.8ms +/- 1.6% 1021.7ms +/- 1.7%
audio 7551.5ms +/- 1.0% 2278.2ms +/- 0.5% 2374.4ms +/- 1.0%
imaging 9042.0ms +/- 0.7% 2007.5ms +/- 1.0% 2080.3ms +/- 0.4%
json 471.6ms +/- 1.2% 328.0ms +/- 2.6% 264.8ms +/- 1.0%
stanford 3837.1ms +/- 0.8% 1032.0ms +/- 2.5% 1034.7ms +/- 1.5%

Firefox 4 / 5の圧勝は当然として、気になるのはFirefox 5が若干後退している点だ。その中で、jsonテストだけは健闘している。

総合評価

Firefox 5は、一部のテストでFirefox 4からの向上が見られ、それ以外のテストのほとんどでFirefox 4と互角の性能を発揮している。とくに、HTML5/JavaScriptベースのゲームによるベンチマークで好成績を収めた点が印象に残る。

Firefox 4 / 5というくくりでFirefox 3.6と比較した際、ベンチマーク結果が悪くなっている個所があるのも確かだが、今回のテストではHWアクセラレーションを考慮に入れていないため、ユーザーの環境が新しければ、全く違った結果になっていた可能性は十分にある。最新版にアップデートしない理由は見当たらないといえよう。

dynamisdynamis 2011/06/23 04:11 おかえりなさいませ。(・・).
リリース記念の単発復活でしょうか?リリース毎でも良いのでまた時々記事が読めると嬉しいです。

ページ読み込み時間の安定性はもしかすると(サイト側の最適化が徹底されておらずリクエスト数が多い方が影響するハズの) HTTP 通信の最適化が関わってるかもしれないけど真実は不明ですね。

Dromaemo については DOM Query の高速化に注目いただきたいですね。CSS 処理が高速化されるようかなり修正されたので。

Kraken とかは Firefox 7 での型推測(Type Inference)エンジンにご期待ください。

RyoRyo 2011/06/23 10:43 御無沙汰です^_^;。
久々の記事は早速読ませて頂きました。
これからも、不定期で良いので更新して頂けると助かります^_^;
(自分のBlogは、仕事が忙しくて放置しているのに.....(^^ゞ )

RockridgeRockridge 2011/06/23 20:09 dynamisさん、Ryoさん、ご無沙汰しております。さっそくのコメントありがとうございました。

今回はひとまずリリース記念ということで記事を書きました。以前のように更新していける状態にはまだないので、興味を惹かれた記事をはてなブックマークに登録しながら、コメントをつける「リハビリ」をしています。

良さそうな記事のアイデアを思いついたらちょっとずつ掲載していこうと思いますので、今後ともよろしくお願いします。

やすっち。やすっち。 2011/06/26 11:42 祝復活

0626のNightlyから以下が載りますので、また、違ってくるかと。
(リリース版へはFirefox 7から?)
https://bugzilla.mozilla.org/show_bug.cgi?id=651858

RockridgeRockridge 2011/06/26 12:49 お祝いの言葉&情報提供ありがとうございます。

例のAzureはいきなりデフォルトでオンですか。Nightlyビルドだからでしょうか。

今回の記事は、Firefox 3.6を対象に加えていることもあって、HWアクセラレーションはオフにして(Direct2Dを強制オンにせず)ベンチマークを走らせています。Firefox 7でAzureが入るなら、そのときはHWアクセラレーションの差もベンチマークに含める必要がありそうですね。

dynamisdynamis 2011/06/30 18:32 オンにしてテストしないと Nightly としての意味がないですからね。無事リリース版までデフォルトオフに切り替えられずに安定化することを祈るばかりです。

アクセラレーションないと 5 倍以上違うベンチも少なくないですし、次回は是非オンで。GPU によって全然違うのが悩ましいところですが。(^^;

個人的には(単純なベンチには現れにくい) Firefox 7 ではメモリ消費や GC 周りの改善にも期待しています。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/Rockridge/20110622/1308759777