Firefox 4のGPUアクセラレーションはびみょ~

Internet Explorer 9の登場など第二次“ブラウザ戦争”の現状において,モダンブラウザという表現がなされることがあります。
Google Chromeに端を発するといってもいいJavaScriptの高速化,その他さまざまな技術によるブラウザの高速化やHTML5に代表されるようなWebアプリケーションなどへの対応,それらを現代的でしゃれている“modern” なブラウザという意味でモダンブラウザという表現がなされるものと思われます。

そんななかMicrosoftが自社プラットフォームの利を生かし,圧倒的ともいえるGPUハードウェアアクセラレーションによる描画の高速化をInternet Explorer 9で達成しています。もちろん,その他にも当然のことながらJavaScriptエンジンの高速化,HTML5への対応などモダンブラウザを標榜するだけの高機能化はなされています。
しかし,その他ブラウザ陣営でもMozilla Firefox 4をはじめGoogle Chrome,OperaなどでGPUハードウェアアクセラレーションをサポートしてきています。
Firefoxは現バージョンの4.0.x系において,Alpha 3段階から“Windows での Direct2D 採用によるハードウェア アクセラレーション”のサポート,そしてBeta 1でのWebGLの実装。さらに,Beta 5における“Windows 7Windows Vista における Direct2D ハードウェア アクセラレーション機能のデフォルト有効化”,Beta 7での“WebGL のデフォルト有効化”等を経て,正式版でもハードウェアアクセラレーションが有効となっています。
Google Chromeについては,9.0.597.98における“WebGL (要OpenGL 2.0対応)”サポートや10.0.648.127の“動画の再生にGPUを利用”。そして,11.0.696.57では“GPUを使用した3次 元CSS”と着実にサポートを進めているようです。
そして,Operaについても去る2月の末(というか3月初め?)に公開された“Opera 11 preview with WebGL and Hardware Acceleration for Windows”によって,IE9にも勝るとも劣らないGPUハードウェアアクセラレーションが実装されたものが公開されています。ただし,これは“an early preview of upcoming technologies in Opera”ということで,最近公開されたOpera NextのOpera 11.50では“opera:about”(OperaのAbout画面)において“"Vega backend" entry”が見当たらないことからも,将来に向けた実装のテスト公開といえるものかもしれません。したがって,当面正式公開される安定版に実装されることはないかもしれません。

というわけで,各ブラウザにおけるSpeed Readingの動作状況をスクリーンキャプチャーしてみました。
まずは,Microsoft謹製のデモということで本家Internet Explorer 9(32bit版)から・・・。

Expression Encoder 4によるスクリーンキャプチャーですが,若干自身の負荷のせいかIE9(x86)の描画が不安定なようにキャプチャーされてしまっていますが,実際にはなめらかに描画されており高速です。

次に,さほど変わらない結果となったのですが,一応Internet Explorer 9(64bit版)を。

こちらも32bit版と変わらぬ高速な結果となり,適切にアクセラレーションが効いているようです。

そして,同じくMicrosoftからInternet Explorer 10 Platform Previewです。

さすがにまだまだ早期Previewリリースといったところなのでしょうか,結果はIE9と変わらずです。

続けて,Mozilla陣営はFirefox 4.0.1です。

え~,こちらに関しては遅いです。
なぜでしょう?これは本記事のタイトルにも書いたように,いろいろと微妙な感じもしますので後に追試して記載します。

それでは気を取り直して,最近新たに加わったAurora ChannelからFirefox 5.0a2preです。

こちらはIE9と比してもそん色のない性能を発揮している,といえるのではないでしょうか?

さらに,nightlyとなるFirefox 6.0a1pre。

こちらもFirefox 5.0a2preと同様にそん色のない結果となっているように見受けられます。

それでは,お次はGoogle Chromeです。(なお,Chromeでは“about:flags”で“GPU アクセラレート合成”,“GPU アクセラレート キャンバス 2D”を有効化しています。)

こちらは,ところどころ描画が不安定になっているのが見受けられます。

そして,Google ChromeのベースともなっているChromiumです。(こちらは,デフォルトでGPUアクセラレーションが有効なためか“GPU アクセラレート合成”がなく,“GPU アクセラレート キャンバス 2D”を有効化しています。)

こちらはGoogle Chromeで見られた不安定さもなく,描画は安定しています。

最後に,OperaのハードウェアアクセラレーションPreview版です。

こちらも,結果が1桁秒になるなどChromium勢を追い抜くほどの結果となっています。

このように,ブラウザのGPUハードウェアアクセラレーションは確実に,着実に進歩を遂げているようです。
Windows上でだけの評価となってしまいますが,最新のプラットフォームを利用していてハードウェアアクセラレーションの恩恵に与れる環境にあるならば,各ブラウザベンダーが切磋琢磨して安定していくのは歓迎すべき状況と言えます。


閑話休題
さて,各ブラウザの動作状況の項でもちらっと触れ,本記事のタイトルにもしているFirefox 4のGPUアクセラレーションは微妙という点について,スクリーンキャプチャー動画をご覧いただければわかりますが“なぜか遅い”です。
しかしながら,これをウインドウを最大化した状態で実行するとかな~り高速に描画されます。

はて,なぜでしょう?よくわかりませんが,Firefox 4ではなにやら特定の描画領域解像度で動作が遅くなる(不安定になる?),というようなことがあるのでしょうか・・・。
これを以って性能が悪いとは断言できませんが,性能が落ちうる場面,状況が明確にあるようには思われます。

FirefoxにおけるGPUハードウェアアクセラレーションは,これまでにない早期バージョンアップとなりそうな次期Firefox 5からが本番といってもいいのではないでしょうか。

Internet Explorer 9公開(現状,日本語版以外)

Internet Explorer 9が正式公開されました。
※ただし,日本語版は地震の影響(通信帯域等)を鑑みて,公開が延期されています。

それに合わせてInternet Explorer 9 Test Driveで,Video Format Supportというものが公開されています。
(ほかにもいくつかデモ等が公開されています。)
これは,HTML5においてVideoタグというものが導入されることに対して,現状はそのVideoフォーマット(Codec等)が決まっていないことやH.264とWebMというフォーマット争い(?)になっている状況を受けてのデモと思われます。
この背景にはIT系ニュースサイト等では各所で語られているような,H.264の特許ライセンス問題,またWebMはGoogleによってオープンソース としてライセンス料はかからないのですが,実は特許に抵触しているのでは疑惑というようなこともあり,早々に解決しそうな問題ではありません。
ということで,こちらのデモをいろいろなブラウザで試してみることにします。

ちなみに,Video Format Support・デモはHTML5 Videoを“H.264 high profile”(高画質),“H.264 baseline profile”(低画質),“WebM”で表示した場合,およびFlash Playerによる“H.264 high”の4つを表示するデモです。(表示可能なCodecの動画については,もちろん再生も可能です。)


というわけで,さっそく各ブラウザの表示状況をスクリーンショットで確認します。
まずはInternet Explorer 9(以下IE9)です。

Internet Explorer 9

IE9は,Microsoftによってライセンス料が払われていますのでH.264デコーダーが内蔵されており,またテスト環境にFlash PlayerがインストールされているのでH.264によるHTML 5 VideoタグとFlash Playerの3つが表示される結果となっています。

次に,Firefox 4.0(RC2)です。

Firefox 4.0 (RC2)

Firefoxの開発元であるMozillaHTML5 VideoタグのフォーマットとしてWebMを支持していますので,当然ながらWebMとFlash Playerの2つが表示可能となります。

お次はOpera 11.10(beta)を見てみましょう。

Opera 11.10 (beta)

OperaMozillaと立場を同じくしていますので,同様にWebMとFlash Playerの2つが表示されます。

次はGoogle Chrome(11.0.696.14)です。

Google Chrome(11.0.696.14)

GoogleChromeでのH.264サポート取りやめを発表していますが,現状まだサポートされているのでしょうか。上記スクリーンショットの通り4つとも表示されています。

さて,それでは次はSafari 5.0.4です。

Safari 5.0.4

これは!?どうしたことでしょう・・・。
Appleは,HTML5推進派でことさらにFlash Playerを非難していました。PC用ブラウザでのテストですので,PCにプラグインがインストールされていれば表示されるのは当然です。しかし,自ら H.264のライセンシーでもありH.264を推していたにも関わらず,WebMは言わずもがな,H.264HTML5 Videoすら表示されません。

というわけで,各ブラウザで試してみたわけですが・・・。Safariの状況が今一理解不能な状態です。Microsoftのデモサイトが,なにか HTML5として正しくない記述でもされているのでしょうか?それにしては,HTML5 video elementとして枠が表示されているので,そのようにはSafariから認識されているようにも思えます。謎ですね・・・(・ヮ・)

Firefox 4.0(Beta 12~RC1)のタブ・・・

私が普段愛用しているテテさん謹製のFirefox私的ビルド
最近のβ版からビルドしてくださっているので利用し始めました。

・・・βいくつからかわかりませんが,最大化した際にタブバーがタイトルバーに表示されるようになっています。これは,Firefoxの隠し設定“about:config”で機能の有効無効が設定できます。一応,設定項目の名前を挙げると“browser.tabs.drawInTitlebar”というものです。

しかし,使い始めてみるとどうもアドオンをいくつか入れるとこれがきちんと機能しなくなるという現象が発生するようになりました。

う~ん,なぜでしょう・・・。
とりあえず,Firefox再起動の際には必ず機能が有効になってタイトルバーにタブが表示されるのですが,初回起動時には必ず上記画像のような状態になってしまいます。

毎回再起動して使うのも鬱陶しいですし常時この状態にしておくか~,と“browser.tabs.drawInTitlebar”をdisableにして使っている最近でした

AppleはPCブラウザのプレゼンスを失っているのか!?

Appleはパーソナルコンピューター向けブラウザ(以下PCブラウザ)のプレゼンスを失っている,と思える件。

例えばである,下の図をご覧いただきたい。

Safari PC Browser presence 01

これは,FirefoxOpera,そしてSafariJavaScriptベンチマーク結果である。
Safariは,Safari 5登場時の謳い文句にあった通りFirefox 3.6.xの2倍以上高速だ。しかし,(現状Operaの開発版のようなものが見つけられないため現行バージョンのみとなってしまっているが)Opera 11と比べれば1.3倍弱遅いのである。
そして,最新の開発版であるFirefox 4.0 nightly(b13pre)と同様にWindows版で最新の開発版であるWebKit r80213を比較しても,およそ1.26倍遅いのである。
(2011/3/8現在)

すでに旧世代と呼ぶにふさわしいFirefox 3.6.xの(JavaScript)ベンチ結果を除いてみると,以下のようなグラフになる。

Safari PC Browser presence 02

このように,昨今のPCブラウザ界隈では注目度が高いと言えるJavaScriptエンジンの開発では,同じレンダリングエンジンを採用するWebKit陣営ともいえるGoogle Chromeのみならず,FirefoxOperaの後塵を拝す結果となっているのである。

だかしかし,これを以てPCブラウザのプレゼンスを失いつつあると断じるわけではない。
もうひとつ,JavaScriptの高速化とともにSafari 5の特徴として挙げられ,その他ブラウザも導入しているブラウザ拡張機能があるが・・・。

Safari PC Browser presence 03

このように,Safari拡張機能配布ページはどことなく昔のAMO(addons.mozilla.org - Firefox Add-ons)に似ているとは思わないだろうか?
また,Extensions検索ボックス(あれ?Safari “Extesions”のはずなのに検索ボックスには“add-ons”と!)に何も入力せずに検索を実行するとすべてのExtensionsが一覧できるのであるが・・・,結果はわずか4ページ。初期表示が1ページに20個であるので設定できる最大の100個表示にしてしまうと,わずが1ページでそのすべてを表示することができてしまう。

このことは,Safariユーザーがデフォルトの機能で満足しているということがあるのかもしれないが,一方でその配布サイトのデザイン(や検索 ボックスの“add-ons”の文字)などを見ても他ベンダーの後追いであるアドオンという分野においては,Appleイノベーションを提示できていないということを物語ってはいないだろうか?

Safari PC Browser presence 04

上記グラフ(StarCounterより)を見てもわかるが,この一年Safariはそのブラウザシェアを伸ばしていない。(着実に伸ばしているのはGoogle Chromeだけであるが・・・)

Macユーザーがいる限り現状より極端にシェアが減ることはないかもしれないが,しかしよほどのブレイクスルーでもない限りPCブラウザの世界においてプレゼンスを増すことはないであろう。
Appleは,このまま自らの(Mac OSや,PCのiTunesまでをも含めた)iOS“エコシステム”に傾倒し,自らのルールの世界だけでSafariを活用していくのだろうか・・・。

ブラウザベンチマークについて一考・・・

先日,「Windows 7 & IE9杯」へのエントリー記事を上げました。
そのエントリー部門は“最速Webブラウジング部門”だったのですが,その際にいわゆるPCのベンチマーク以外に,当然の
ことながらブラウジングの指標として“WebVizBench”“SunSpider JavaScript Benchmark”を実施しています。
くわえて,余談部分(自分のエントリーではある意味本論部分)でいろいろな最新ブラウザを比較検討する際のネタとして,
Intertet Explorer 9 Test Driveで公開されているHTML5 Blizzardというデモでの比較も行ってみました。

今回この投稿をするにあたって,比較のためにいろいろなJavaScriptベンチマークを実施してみました。
なお,今回先のエントリー記事で上げたPCはすでに手元にありませんので,別PCでの実施です。また,別PCでの実施に
あたりブラウザは“Firefox nightly”(x86x64),“Chromium”,“Opera 11”,“IE9 PP7”に絞りました。


まずはMozilla謹製のKrakenベンチマークの結果です。



こちらと次に提示するSunSpiderについては,結果の数値がms(ミリ秒)ですので値が小さいほど良い結果となります。
ということで,次にSunSpiderの結果です。



そして,最後にV8ベンチマークの結果です。



V8ベンチマークの結果は数値となっていますので,値が大きいほど良い結果です。

以上,それぞれKrakenは先にも書いたようにMozillaが,SunSpiderはSafariGoogle Chromeのレンダリングエンジンである
WrbKitの,そしてV8はGoogleが作成して公開しているものです。



結果を見ていただくとKrakenはMozillaが作成したものであるということもあってかFirefox nightlyが最速,またSunSpiderでは
WebKit陣営のChromiumが最速かと思いきやIE9 PP7が最速で,ChromiumFirefox nightly(x86)の後塵を拝して
います。
それに比べ,V8 Benchmark Suiteの結果はどうでしょう?圧倒的にChromiumが最速です。ダブルスコア以上で比較する
意味すらないような結果です。
それもそのはず,ベンチマークに名を冠している“V8”というのはGoogle ChromeChromium)が開発,採用している
JavaScriptエンジンの名前でもあり,高速に処理を行えて当然のはずです。
プログラマーでもなくソースの比較もしていないので一概には言えませんが,これらの結果を見るにV8 Benchmark Suiteは
はたして公正,公平なベンチマークなのか?と思わざるを得ません。

さらに,先日のエントリー記事でも取り上げたWebVizBenchに ついては,IE9以外のブラウザでページを開くとブラウザを
アップグレードしてくれ!と言われる始末です。“continue anyway”(続行します)を選択するとIE9以外のブラウザでも
実行できますが,そうしてテストを実行していくと“rendering: video”(テスト画面の右上,こちらの動画で3:20あたり
から)ということでBGVが再生されます。
しかし,これについてはテストしたブラウザではIE9系以外まったくBGVが描画されません。どうやら,つい最近
Google Chromeがサポートを止めると話題になったHTML5 Videoタグのh.264動画のようです。最新のブラウザで評価を
行うため,Safari系についても最新のWebKitを,またChrome系もChromiumの最新nightlyを利用しました。これら,
各ブラウザのベースとなっているオープンソースの開発版には,ライセンス問題からh.264のサポートがありません。
SafariについてはAppleが,ChromeについてもGoogleが,それぞれベースとなるレンダリングエンジンにh.264のサポートを
追加実装しているのでしょう。
BGVの有無が結果にどれほど影響を与えるのか不明ですが,現時点においてこれをもって“a benchmark for heml5”
html5ベンチマーク)と銘打つのはいかがなものでしょう?

そして,IE9 Test Driveで公開されたHTML5 Blizzard。これについてはブラウザのGPUアクセラレーションのデモとして作成,
公開されたものと思いますが,GPUアクセラレーションについても,単純にアクセラレートして高速化だけを追求するのに意味が
あるのか?と思わせる結果になってしまっていると思います。
こちらの動画をご覧いただくと一目瞭然ですが,デモ画面中には“HAPPY HOLIDAYS”と表示されています。しかし,
GPUアクセラレーションによる高速描画(?)で猛吹雪となってしまっています。デモの名前であるHTML5 “Blizzard”から
すれば,文字通り猛吹雪=Blizzardですので意図した描画なのかもしれません。
しかし,およそHAPPY HOLIDAYSといった趣ではなくなってしまっているように感じられるのは,はたして私だけでしょうか・・・?
※画面下に表示されている22mph(時速マイル)は,およそ10m/sの暴風

Windows 7 & IE9杯 エントリー記事

Windows 7 & IE9自作PCの採点祭典 2010へのエントリー記事です。

・応募部門最速Webブラウジング部門
応募部門は最速Webブラウジング部門です“”,およそ最速を狙えるマシンではないのでちょっと違った切り口で迫ります。
・エントリーマシンの構成パーツ
CPU Intel Pentium G6950
マザーボード MSI P55M-GD45
メモリ CFD販売 W3U1333Q-2G
ビデオカード PowerColor AX5750 1GBD5-PDH
HDD (1) Western Digital WD6401AALS
HDD (2) Western Digital WD10EADS
光学ドライブ HL-DT-ST GGC-H20N
CPUクーラー Scythe SCSMZ-2000
ケース CoolerMaster CMP-350
電源 be quiet! BE-Q530W
ディスプレイ LG電子 W2261VG-PF
・使用OSWindows 7 Ultimate 64bit版
・PC外観写真
・PC内部写真

ベンチマーク結果
それでは,各ベンチマーク結果です。
掲載する結果は,CPU-Z 1.56Windows エクスペリエンスインデックスPerformanceTest V7.0 Build 1019WebVizBench
SunSpider JavaScript Benchmark 0.9.1の各結果です。
CPU-Z 1.56

Windows エクスペリエンスインデックス

PerformanceTest V7.0 Build 1019


WebVizBench


SunSpider JavaScript Benchmark 0.9.1


ちょうどというかせっかくと言うべきか,Windows 7 64bit版ですので64bit版のテストが可能なものは試してみました。
続きを読む