JavaScript ベンチマークテストサイト

| | コメント(0) | トラックバック(0)

クライアント側で処理する JavaScript の処理量が増えてるから、各Webブラウザは JavaScript のスピードアップに力を入れてるらしい。

JavaScript のベンチマークをできるサイトは幾つもあるようですが、それぞれ特徴があるらしい。

ChromeのJavaScriptエンジンである「V8」をテストするために新たに開発されたベンチマークテスト「V8 Benchmark」は、JavaScriptのパフォーマンスしかテストしない。しかも、再帰(recursive call)のパフォーマンステストに重きを置いているという特徴がある。

 その他のベンチマークとしては、WebKit開発チームによって公開されている「SunSpider」があり、こちらもJavaScriptエンジンのパフォーマンスのみをテストする。また、Mozillaのベンチマークとしては、JavaScriptだけでなくDOMやJavaScriptライブラリのパフォーマンスを併せてテストする「Dromaeo」も存在する。
Google Chromeが最速というわけではない~Mozilla関係者が指摘

幾つかのベンチマークテストサイトを使ってみました。
Windows XP SP3上で、「IE7」、「Firefox3.0.1(セーフモード)」、「Google Chrome Beta (0.2.149.27)」を動かしてみました。(けど、今回は比較はほとんど行ってないので、あんま関係ないかも)

V8 Benchmark

・V8 Benchmark Suite
http://code.google.com/apis/v8/run.html
Googleが用意したJavascriptベンチマークテストサイト。

JavaScriptのパフォーマンスしかテストしない。しかも、再帰(recursive call)のパフォーマンステストに重きを置いているという特徴がある。 (前述の引用参照)

テスト内容は以下。

・ Richards:OSのカーネル用シミュレーションベンチマーク。当初はMartin Richards氏が設計したプログラミング言語BCPLで書かれた(539行)。
・ DeltaBlue:一方向の制約ソルバ。当初は、プログラミング言語SmalltalkでJohn Maloney氏とMario Wolczko氏によって書かれた(880行)。
・ Crypto:暗号化、復号化用ベンチマーク。Tom Wu氏が開発したコードがベース(1689行)。
・ RayTrace:Adam Burmister氏が開発したコードをベースとしたレイトレーシング用ベンチマーク(3418行)。
・ EarleyBoyer:Classic Schemeベンチマーク。Florian Loitsch氏が開発したScheme2Jsを使ってJavaScriptにコンパイルした(4682行)。
グーグル「Chrome」、JavaScriptベンチマークで競合ブラウザを圧倒:マーケティング - CNET Japan

・結果例 (左:IE7、中央:Firefox3、右:Google Chrome Beta)

Javascriptベンチマークテストサイト - V8 Benchmark

SunSpider JavaScript Benchmark

・SunSpider JavaScript Benchmark
http://www2.webkit.org/perf/sunspider-0.9/sunspider.html

WebKit開発チームによって公開されていて、JavaScriptエンジンのパフォーマンスのみをテストする。 (前述の引用参照)

上のテキストボックスに結果のURLが表示され、後で再表示する事が可能です。

また、もう一度(別のブラウザなどで)ベンチマークテストを行って、下のテキストボックスにこのURLを入力 + Enter すれば、2つの結果の比較ができます。

Javascriptベンチマークテストサイト - SunSpider

Dromaeo

Mozilla.com 製の JavaScirpt のベンチマークテストツール。

JavaScriptだけでなくDOMやJavaScriptライブラリのパフォーマンスを併せてテストします。 (前述の引用参照)

・Dromaeo - MozillaWiki
https://wiki.mozilla.org/Dromaeo
Dromaeo の使い方など。

・Dromaeo: JavaScript Performance Testing
http://dromaeo.com/
ベンチマークテストサイト。

全項目をテストする事もできるし、必要な項目だけをテストする事もできます。
項目を選択する場合は、QueryString 部分で指定します。

・3D関係のみテストする場合
http://dromaeo.com/?3d

・文字列関係のみテストする場合
http://dromaeo.com/?string

・3D関係と文字列関係のみテストする場合
http://dromaeo.com/?(3d|string)

QueryString 部分に指定できる値は、下表の文字列(右側)の一部(だと思う)。
例えば、「http://dromaeo.com/?access-n」とすると、文字列に「access-n」を含むテストは「N-Body Rotation and Gravity」と「Prime Number Computation」なので、この2つのテストのみを実行できます。

テスト名文字列
3D Mesh Transformation3d-morph
Partial Sum Calculationmath-partial-sums
Base 64 Encoding and Decodingstring-base64
DNA Sequence Alignmentstring-fasta
Fannkuchaccess-fannkuch
N-Body Rotation and Gravityaccess-nbody
Prime Number Computationaccess-nsieve
Prime Number Computation (2)bitops-nsieve-bits
Recursive Number Calculationcontrolflow-recursive
Rotating 3D Cube3d-cube
Traversing Binary Treesaccess-binary-trees
Spectral Norm of a Matrixmath-spectral-norm


テスト完了後、結果URLが表示され、後で参照することができます。
また、複数の結果を比較する事もできます。
以下は、(「Safari/525.13」 と 「Firefox/3.0.1」になってますが)、「Google Chrome Beta」と「Firefox 3.0.1」を比較した結果です。
IEは後述の理由によりテストできませんでした。

・Google Chrome (BETA)と Firefox3 のベンチマークテスト比較結果 (Dromaeo)
http://dromaeo.com/?id=35206,35207

Javascriptベンチマークテストサイト - Dromaeo

Note: Currently Internet Explorer 6 and 7 run incredibly slow on the DNA sequence test (taking approximately 15-20 minutes).
Dromaeo - MozillaWiki

IE6、7では、信じられないほど処理に時間が掛かるそうです (15-20分とありますが、私のPCではもっともっとでした。というか、途中で止めました)。
説明では「DNA Sequence Alignmentで処理が遅くなる」となってますが、私の環境では「Base 64 Encoding and Decoding」と「Fannkuch」で遅くなってました。

例えば、「http://dromaeo.com/?(3d|math|access-[^f]|string-[^b]|bitops|controlflow)」にアクセスすれば、この遅くなってしまう2つのベンチマークテストを飛ばせます。 (正規表現を書けばいいみたいなので、もっとスマートに出来そうだけど)

ちなみに全然関係ないのですが、Dromaeroのページでウィンドウの幅をリサイズするとおもしろいです。
Dromaeo - SunSpiderを意識したMozillaの新しいJavaScriptベンチマーク - うたうように

サイト上部の恐竜の位置関係が変わるって事かな?更に、狭めすぎると隕石が墜落してしまうという。

Dromaeroのページにおいて、ウィンドウ幅により表示のされ方が違う

Web Browser Javascript Benchmark @Celtic Kane Online

・Web Browser Javascript Benchmark .: Celtic Kane
http://celtickane.com/webdesign/jsspeedarchive.php

・結果例 (左:IE7、中央:Firefox3、右:Google Chrome Beta)

Javascriptベンチマークテストサイト - Web Browser Javascript Benchmark @Celtic Kane Online

・Javascript speed tests .: Celtic Kane
http://celtickane.com/webdesign/jsspeed2007.php
コッチは古いバージョンのJavaScript ベンチマークテスト。

Javascriptベンチマークテストサイト - Web Browser Javascript Benchmark @Celtic Kane Online

トラックバック(0)

このブログ記事を参照しているブログ一覧: JavaScript ベンチマークテストサイト

このブログ記事に対するトラックバックURL: http://kinshachi.ddo.jp/mt/mt-tb.cgi/508

コメントする


画像の中に見える文字を入力してください。

このブログ記事について

このページは、ikeが2008年9月 4日 23:23に書いたブログ記事です。

ひとつ前のブログ記事は「古いエントリの変更履歴 (2008/08)」です。

次のブログ記事は「Google Chromeが応答しないときのダイアログ」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

最近のコメント

Powered by Movable Type 4.261