V8 Benchmark Suiteを改造してみる
GoogleからChromeが発表されてから、ブラウザはJavascriptを速く動かすプラットフォームと重要度が増した感じします。このため、Javascriptをベンチがいくつか公開され各ブラウザ比較も行われるようになりました。
Javascriptベンチとして有名なのが、SunSpider、V8 Benchmark、DROMAEOでしょう。この中でV8 Benchmarkは、ページを読み込んだら勝手に始まるベンチになっています。計測する上で少々使い勝手が悪いため、手を加えることにしました。
V8 Benchmark Suiteは「V8 JavaScript Engine Benchmarks」にbenchmarks.zipとして置かれています。これをダウンロードして任意のディレクトリに解凍してください。次に「ソース置き場」からrun_kai.zipをダウンロードして、benchmarks.zipを解凍したディレクトリに解凍してください。run_kai.zipを解凍するとrun_kai.htmlができます。このHTMLをブラウザで開いてください。run_kai.htmlは、オリジナルと違って以下のボタンが追加されています。
"Start"を押すとベンチマークが開始されます。numberは、ループ回数です。"Clear"は、集計したベンチマーク結果をクリアします。例えばnumberを10にして、"Start"を押すと以下の様になります。
複数回ベンチマーク実行し、その結果を追記します。さらに、最高/最低/平均を集計してくれます(少ない回数の平均にどれだけ意味があるかは、別の話)。
そこでrun_kai.htmlを使用して各ブラウザのV8 Benchmark Suite Version 1の集計しました。測定したPCは、自作したPhenom X4 9950BE(2.6GHz) & Vista 64bitです。IE 8 beta 2とIE7は、V8 Benchmarkを行うと途中で止まってしまうため「IEの変な設定を変更してみた」を参考に止まらないようにしています。Firefox 3.1系は、javascript.options.jit.chromeをtrueにしています。私の環境では、javascript.options.jit.contentをtrueにすると印刷画面が出るためfalseにしています。
これで、少しはV8 Benchmarkの集計が楽になると思います。ついでに、V8 Benchmark Suiteはversion 1となっていますが、バージョンがあがるたびにrun.htmlを修正する必要が出てくるのでしょうか...