先週、MicrosoftのIEチームとMozillaのFirefoxチームの間で、ハードウェアアクセラレーションの実装においてどちらが優れているかを巡る、興味深い議論が繰り広げられました。Microsoftは最近、JavaScriptのパフォーマンスに関する話題を避けているようで、JavaScriptはもはやそれほど重要ではないと最近説明しました。一方、Mozillaは、例えばSunspiderよりもはるかに優れた実世界のアプリケーションを反映した新しいベンチマークの作成に注力しています。
IE9 のプレビュー期間中、マイクロソフトはブログで IE9 の取り組み、変更点、パフォーマンスの向上について詳細に説明してきました。IE9 は明らかに IE8 とは別物で、マイクロソフトの考え方の違いを反映しています。独自仕様の機能は大幅に減り、標準サポートもようやく Web 開発者をそれほど怒らせないレベルに近づいています。まだ試していない方は、特に Windows 7 を愛用している方にはぜひ試していただきたいです。マイクロソフトが Bing との統合を怠ったことは個人的に少し残念ですが、現時点で最も統合されたブラウザーです。検索機能は IE9 ではあまり充実しておらず、改善の余地があります。この分野では Google Chrome の方がはるかに優れています。特に、ブラウザー内からインスタント検索が利用できるようになったことを考えると、その差は歴然としています。
それでは、パフォーマンスと公開されている主張を見てみましょう。
最近、ハードウェアアクセラレーションをめぐってMicrosoftとMozillaの間で、かなり滑稽なブログ投稿やTwitter投稿での論争が繰り広げられました。傍観者なら、この議論に首をかしげ、「Microsoftは口を閉ざすべき時を知らないのか」と首をかしげるかもしれません。Microsoftは今のIE9に満足しているはずだと思いがちですが、実際にはIE9ベータ版のリリースに先立ち、Mozillaを痛烈に批判し、IE9は現在「完全な」ハードウェアアクセラレーションを備えた唯一のブラウザだと説明しました。完全なハードウェアアクセラレーション?
はい、ハードウェアアクセラレーションには様々なレベルがあり、一般的には3レベルをサポートすることで完全なアクセラレーションを実現できると考えています。1レベルまたは2レベルのみのサポートではパフォーマンスが低下します。これは、例えばChrome 7のCanaryビルドとNightlyビルドでは1ステージのみしかサポートされていないことからも明らかです。
現在、ハードウェア(GPU)アクセラレーションの潜在能力を最大限に引き出すには、(1) Windows Vista / 7 の Direct 2D(Mac では Quartz)を用いたコンテンツのレイヤリング/レンダリングと、(2) レイヤー合成のための Direct 3D(Mac では OpenGL)の 2 つが必要になります。これは Mozilla が最近説明したとおりです。Microsoft はこれに (3) デスクトップ合成を追加し、Microsoft だけがこれを実現できると主張していますが、Mozilla はこれを否定しています。Microsoft の説明によれば、「ブラウザがコンテンツをレンダリングしてページを合成した後、Windows Vista と Windows 7 は GPU を使用してデスクトップ ウィンドウ マネージャ(DWM)経由で最終的な画面表示を構成します。IE9 は DirectX のみを使用しているため、IE9 と DWM 間の連携が強化され、GPU メモリの使用量が少なくなり、異なるサブシステムを混在させるブラウザよりも安定性が向上します。」
Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。
しかしMozillaは、DirectXに加えてOpenGLなどの抽象化レイヤーを追加するとブラウザのパフォーマンスが低下するというMicrosoftの主張はおそらく誤りだと反論しました。Mozillaは反論し、MozillaのアーキテクチャではGPUアクセラレーションを(コンテンツ合成において)少なくとも部分的に統合できるのに対し、MicrosoftのアプローチではWindows XPでハードウェアアクセラレーションを全くサポートできないと述べました。結局のところ、ユーザーに具体的なメリットがなければ、これらの技術は無意味です。ヨーロッパのシトロエン車は、30年近く前から素晴らしい「ハイドロニューマチック」サスペンションを採用しており、これは技術的に他のタイプよりもはるかに洗練されています。今日でも、市場に出回っているどの車よりもはるかに快適な乗り心地を実現しています。市場の大多数は気にしているでしょうか?いいえ。
これは、私たちが翻訳において多少迷っているため、最終的に何が得られるかだけを気にしているからです。IE9 の場合、GPU ブラウザのパフォーマンスは、独自のテストでは Firefox Beta 5/6 と非常によく似ています。テストによっては Firefox が勝ったり IE が勝ったりしますが、いずれのテストでも 2 つのブラウザはほぼ同じ範囲にあり、誤差の範囲内です。今日、どちらかのブラウザが他方よりも GPU アクセラレーションに優れていると主張することは、ユーザーには無関係な、純粋に技術的な議論であり、個人的な不安を露呈している可能性さえあります。IE9 は IE8 よりもはるかに優れたブラウザですが、Microsoft にはプライドを守り、ライバルを攻撃する必要を感じないでほしいと思います。特に、オペレーティングシステム市場の 60% を依然として占める Windows XP で GPU アクセラレーションがサポートされていないなど、IE9 の弱点を露呈する反撃が行われた場合にはなおさらです。Microsoft のマーケティングチームは、この問題を放置するべきです。
残念ながら、Mozillaは第2ラウンドを開始したばかりで、現実世界のシナリオを明らかにするための科学的なベンチマーク推奨に基づいた独自の新しい「Kraken」ベンチマークが、JavaScriptのパフォーマンスにおいてIE9を凌駕していると主張しています。Mozillaは、JaegerMonkey FirefoxとIE9の両方をこのベンチマークにかけ、IE9はFirefoxの7.24倍遅いことを発見しました。どうやらIE9の弱点はオーディオと、皮肉なことに画像処理にあり、特にガウスぼかし処理においてFirefoxはIE9の26倍高速であるとMicrosoftは述べています。
Mozillaは既に不公平な比較と、このベンチマークでFirefoxを優遇していると非難されていますが、これは確かにその通りかもしれません。しかし興味深いことに、Firefox 4の機能凍結ビルドである最新のFirefox 4 b7-preナイトリービルドでは、JavaScriptのパフォーマンスも劇的に向上しています。当社のテストシステムでは、FirefoxはSunspiderテストを400ミリ秒強で完了し、IE9を約10%上回っています。Chrome 7は依然として約300ミリ秒でトップの座を維持しています。Chrome V8では、FirefoxはAppleのSafariブラウザのWebkitパフォーマンスにほぼ匹敵しますが、Chromeより約60%遅れています。
では、これは何を意味するのでしょうか?おそらくそれほど大きな違いはありません。JavaScriptの違いは非常に微妙で、実際のブラウジング体験では全く問題にならないかもしれません。FirefoxとIE9はどちらも応答性が高く高速なブラウザであり、最近ではJavaScriptコンパイラよりも、入力速度やブックマークへのマウスの指示の方がブラウジング速度に大きな影響を与えます。
結論として、現在、非常に優れたブラウザが5つあります。これらは、ブラウジングのあり方に対する考え方が異なる、非常に異なるユーザー層に訴求するものです。IE9ベータ版は、Windowsとシームレスに連携することを望むユーザー向け、Chromeは検索エンジンとの統合性が最も優れたブラウザ、Firefoxは最適な妥協案であり、次世代のタブブラウジングで優位性を持つブラウザ、そしてSafariはAppleを愛するユーザー向けです。もしどちらも気に入らない場合は、Operaを使っても、非常に優れたブラウザとして利用できます。
ウェブブラウザを選ぶのにこれほど良い時期はありません。現実的に考えて、どれを選んでも間違いはないでしょう。
ヴォルフガング・グルーナーは、デジタル戦略とコンテンツ分野の経験豊富なプロフェッショナルであり、ウェブ戦略、コンテンツアーキテクチャ、ユーザーエクスペリエンス、そしてインシュアテック業界におけるコンテンツ運用へのAIの応用を専門としています。これまでに、アメリカンイーグルのデジタル戦略・コンテンツエクスペリエンス担当ディレクター、TGデイリーの編集長を務め、Tom's GuideやTom's Hardwareなどの出版物に寄稿しています。