ChromeのGPU H/Wアクセラレーションを試す~IE 9の優位性もなくなった~
IE 9の特徴として描画をDirect2Dを使用するとこです。Direct2Dで描画するため一部の機能が大幅に速くなります。例えば、Microsoftが公開しているIE 9 Test DriveはIE 9が非常に高いベンチマークをたたき出しますが、それ以外のブラウザでは目を覆うような結果しかでません。
ブラウザの描画の高速化は重要です。このため、IE 9 Test Dirveのベンチマークは正しい方向性を示しているかも知れませんが、現時点ではそのような利用にはブラウザでは使用されていません(将来的にはブラウザゲームがもっと違う形で実現すれば...)。IE 9 Test Driveは、IE 9マンセーのためのベンチマークです。
とは言え、描画周りの高速化は決して悪いことでないためIE 9の発表後、GoogleもMozillaもDirect2D対応を表明しましたし、OperaもOprea 11で対応をアナウンスしました(MacがメインのSafariはどうするんだろうか...)。
Chrome 8のdev版のlab機能でGPU HWアクセラレーション機能が追加されました(正式採用はChrome 9らしいですが)。「Chrome 8開発版登場、クラウド印刷」を参考に有効にしてみました。
Firefox 4.0もDirect2Dに対応します。このため、既存のブラウザとDirect2D対応ブラウザ(IE 9beta、Chrome 8系、Firefox 4.0beta)でIE 9 Test Driveでベンチを取りやすいもので調査してみました。ベンチマシンはWindows 7 64bit、Phenom II X6 1090T(3.2GHz)、Radeon HD 4850です。結果は以下のとおりです。
Speed ReadingのAverage Draw Durations(3つのブラウザ以外は終了までこぎつけなかったので、平均drawの結果を)、Psychedelic Browsing、FishIE Tank(1000)を行いました。Speed Readingは値が小さいほど優秀で、Psychedelic Browsing、FishIE Tanは値が大きいほど優秀です。他のベンチマークはベンチマークしづらかったり動作しないブラウザがいたため対象にしていません。
現時点ではIE 9betaがDirect2Dを使ったベンチマークで最も速く動きます。ただし、登場時期のように圧倒的な差ではありません。
今後ブラウザでSVGやCanvasを大量に使用することが流行るのでしょうか。また、3Dが可能なWebGLが普及するでしょうか。私にはいまいちわかりません。FPS系ゲームがブラウザゲームに移籍することは無理でしょう。Javascriptはお世辞にも速い言語ではありませんし、未だにFPS系ゲームはCPUパワーもGPUパワーも不足しています。
IE 9の登場でSVGやCanvasは以前よりも普及するでしょうから画像描画は重要になると思われますが、どの程度ブラウザに移行するか未知数です。また、クラウドコンピューティングの将来を考えるとクライアント側に過度な負荷をかけることはしないのではないかと思われます。ライトゲームぐらいがブラウザ側に回ってくるような気がします(Flashあたりが担当していた分野)。
しかし、IE 9の唯一のメリットであったGPUを使用した機能が早くもChromeやFirefoxにキャッチアップされそうです(Operaも)。Chrome、Opera、Firefoxは更新頻度が以前よりも早くなっています。HTML5のサポートやJavascriptエンジン競争を考えるとこのペースは止まりそうにありません。
さて、Microsoftはどうするのでしょうか?ブラウザ競争のペースについていくのでしょうか?それとも周りを気にせず今までと同じペースで進めるのでしょうか?ブラウザシェアのことを考えると更新ペースを上げる以外に選択肢がないと思うのですが...
ブラウザ関連
・Javascriptベンチを取ってみた(Oct 25,2010)~Opera 11 alpha/Chrome 7 stable登場~・Javascriptベンチを取ってみた(Sep 17,2010)~IE 9 beta登場~
・Javascriptベンチを取ってみた(Sep 6,2010)~Chrome 6 stable登場~
・Javascript ベンチを取ってみた(Aug 6,2010)~最後のIE9pp登場~
・Javascriptベンチを取ってみた(Jul 29,2010)~Chrome Canary登場~
・Javascriptベンチを取ってみた(Jul 9,2010)~Firefox 4 beta登場~