実際の人気アプリ/ライブラリでJavaScriptエンジンをベンチするGoogleのOctane

GoogleのChromeチームが今日(米国時間8/21)、Octaneをロンチした。これは新しいJavaScriptベンチマークスイートで、実用現場でのパフォーマンスの測定を目的としている。これまでのベンチマークは、特定の機能をテストする人工的なストレステストが多かったが、Octaneは実際にある、よく知られているWebアプリケーションやライブラリを使う。これはGoogleによると、“このベンチマークでの高得点は、類似のWebアプリケーションにおいても良いパフォーマンスであることを意味する”。
OctaneはGoogleの既存のV8ベンチマークスイートを拡張したもので、V8のテストがすべて含まれている。それらに加えてOctaneは、MozillaのPDFリーダーや、オープンソースの任天堂ゲームボーイエミュレータ、2Dの図形運動(物理演算)、それに3DのBullet Engineのポートなどを動かす。さらに、CodeLoad(コードロード)テストはClosureやjQueryからのコードを使って、そのJavaScriptエンジンがどれだけはやく、よく使われるJavaScriptライブラリをロードし実行できるかをテストする。背景にある考え方は、Googleによれば、Octaneを、人気のあるSunSpiderみたいなマイクロベンチマーク〔重箱の隅的なベンチマーク〕にしないことだ。それらのベンチマークは、JavaScriptのいくつかの特定の機能しかテストしない。
Googleから得た情報によると、以下が新しいベンチマークの詳細だ:
- Box2DWebは、人気のある2Dの図形運動エンジン(物理演算)のJavaScriptポートを動かす。それは、Web上の良く知られているシミュレーションやゲームで広く使われている。
- Mandreelは、3DのBullet Engineのちょっと変わったJavaScriptポートをテストする。つまり原作のC++のソースコードをOnan GamesのMandreelコンパイラでJavaScriptに翻訳したものを使う。これもまた、数え切れないほど多くのWeb上のゲームで使われている。
- Pdf.jsは、MozillaのPDFリーダーがベースで、JavaScriptのアプリケーションがブラウザの複雑なネイティブプラグインに置き換わりうることを示す。このテストはブラウザがPDFドキュメントをデコードする速度を計測する。
- GB Emulatorは、有名なゲーム専用機(任天堂ゲームボーイ)のオープンソースのエミュレータがベースで、3Dのデモを動かす。
- CodeLoadは、JavaScriptがよく使われるJavaScriptライブラリをブートストラップしてその中のコードを動かすまでのはやさを計測する。このテストのソースはオープンソースのライブラリ(Closure、jQuery)に由来している。
Octane自身のソースコードもここからダウンロードできる。
Mozillaも、このような、ブラウザの実際のパフォーマンスをテストするベンチマーク、Krakenを提供している。個人的に非公式にOctaneでテストしてみると、Chromeの現バージョンはFirefoxの最新安定バージョンに大差で勝つ(Krakenでテストしても同じ結果だ)。



