Hebikuzure's Tech Memo

2010年3月18日

IE9 の開発者向け Platform Preview が利用できます

Filed under: Internet Explorer — hebikuzure @ 3:04 午後

HTML5, Hardware Accelerated: First IE9 Platform Preview Available for Developers
http://blogs.msdn.com/ie/archive/2010/03/16/html5-hardware-accelerated-first-ie9-platform-preview-available-for-developers.aspx


MIX で IE9 のデモが公開され、また IE9 Platform Preview も公開されましたので、順番を飛ばして IE9 の記事を優先して訳していきます。
Platform Preview は HTML レンダラーと JavaScript エンジンだけしかでき上がっていない状態で、アドレスバーもトラベルログ (履歴) も無いドンガラで、実際に使ってみるというよりはIE9 のテクノロジーを「プレビューする」という位置付けで試してみましょう。

以下の文章は IE Blog の 3/16 の記事 HTML5, Hardware Accelerated: First IE9 Platform Preview Available for Developers を hebikuzure が私的に試訳したものです。翻訳については Microsoft Corporation およびマイクロソフト株式会社とは無関係に hebikuzure が公開情報に基づき独自に行ったものであり、この文書の内容についての文責は公開者である hebikuzure にあります。翻訳の内容および技術的内容については正確を期すよう十分な注意を払っておりますが、誤りや不正確な部分が含まれている可能性がありますので、本文書を利用される際には原文も併せてご確認ください。


HTML5、ハードウェア アクセラレート: IE9 の最初の開発者向け Platform Preview が利用できます

HTML5 について深く調べ始めると、これがアプリケーションの新しいクラスを可能にすることに気付きました。こうしたアプリケーションは、現在のブラウザーが行っていないような方法で、ブラウザーのランタイムと基盤となるハードウェアに負荷をかけるでしょう。そこで、最初から意識的に HTML5 に正しく対処するということは、特定の機能のセットについてではなくそうしたアプリケーションが必要とするサブシステムの設計にかかわることだとすぐに理解しました。IE9 では当初から、Windows を通じて最新のハードウェア上で、最新の HTML5 をプロフェッショナル級の品位でサポートするという目標にアプローチしています。

本日の MIX カンファレンス で、Windows 上の IE9 を通じて PC のハードウェア性能を活用することにより、開発者にとっては既知で広く利用されている標準的な Web の典型が、より良く実行できることを実演しました。この Blog 記事では本日紹介したパフォーマンスや標準サポート、ハードウェア支援 HTML5 グラフィック、開発者向け IE9 Platform Preview の提供などについて概説します。

最初に、私たちは内部的には “Chakra” として知られていた IE9 の新しいスクリプト エンジンと、JavaScript パフォーマンスのための業界標準のベンチマークを向上させたことについて紹介しました。ベンチマークでのスクリプト エンジン間の相違は瞬きの間隔に近づいているため、私たちのアプローチは実際の Web サイトをより速くするものとして説明されています。Chakra はJavaScript を IE と並列的に別の CPU コアを使ってバックグラウンドでコンパイルします。

また標準ベースの HTML やスクリプト、マークアップによる整形を、異なるブラウザー間で動作させることに関する向上も紹介しました。私たちは HTML5、DOM、CSS3 などいくつかの標準をより良くサポートしていることを証明し、私たちのアプローチを知らせるようなデータとフレームワークを示しました。IE9 の最新の Acid3 のスコア (55) を紹介しましたが、開発者が実際に利用しているマークアップは同じものがどのブラウザーでも動作するという業界の目標に向かって私たちは進歩しており、Acid3 のスコアも向上し続けるでしょう。標準化プロセスへの関与の一環として、標準化団体にテスト ケースを提供しています。またこれらのテストはだれもが任意のブラウザーで試せるようにしています。

いくつかのデモンストレーションで私たちは、オペレーティング システムを通じて PC のハードウェア性能をフルに活用すると、グラフィックスが豊富でインタラクティブな Web ページが享受できるよう、パフォーマンスが顕著に向上することを示しました。いくつかのブラウザーで動作する同一の HTML、スクリプト、CSS の場合、IE9 ではハードウェア支援のグラフィックのおかげでページが顕著に高速に動作します。また IE9 はハードウェア支援の SVG サポートを提供する最初のブラウザーです。

最後に、開発者向けに最初の IE Platform Preview が公開されたこと、および概ね 8 週間ごとにこれをアップデートするという公約についてアナウンスしました。開発者コミュニティーの皆さんには、早い時期に IE のプラットフォームの進歩についてハンズ オンの体験をしていただきたいと思います。Platform Preview の公開とそれへのフィードバックの循環は、以前の IE のリリースからの変化を大きく刻印するでしょう。

パフォーマンス

IE9 は新しい JavaScript エンジン、“Chakra” を備えています。以下に示すグラフは業界標準の JavaScript パフォーマンスのベンチマークである Webkit Sunspider テストでの IE9 のパフォーマンスです:

IE9 は IE8 や他のいくつかのブラウザーより高速であることがわかるでしょう。興味深いのは現在の IE9 preview とグラフでその右側に並んでいるブラウザーとの差異です。ブラウザー間の 300ms (ミリ秒) の相違を実際に認識するには、およそ 70 秒の経過が必要です。

引き続き実際の Web サイト向に、IE9 のスクリプト エンジンを高速化し続けますので、この特定のベンチマークでもさらに高速になっていくでしょう。今日まで、Webkit Sunspider のための機能のチューニングはほとんど行っていません。ほとんどのベンチマークは利用するコンピュータに依存しており、差異はまちまちです。

実際の Web サイトのブラウジングで体験するパフォーマンスは JavaScript ではなくブラウザーの他のサブシステムに関係していることも少なくありません。例えば、サイトによってはスクリプトの実行よりページのレイアウトやレンダリングに多くの時間が費やされています。Professional Developers Conference でも使用したこのブログ記事の最初のグラフではデータでこのことが示されています。現在の PC はグラフィック パフォーマンスの支援のために特化したハードウェアを持っています。IE9 は Web ページ上のすべてのテキストとグラフィックスのレンダリングをスピード アップするため可能な限り幅広くハードウェアを利用し、 Web ページをより高速にします。

JavaScript のパフォーマンスの向上だけでなく、Chakra は現在の Script エンジンと少し異なっています。Chakra は JavaScript のコンパイルのための別のバックグラウンドのプロセスを使います。Windows は可能であればこのスレッドを別のコアで並行的に実行します。バックグラウンドでのコンパイルにより、IE が高速なコードの生成を行っている間でも、ユーザーの Web ページでの操作性は損なわれません。バックグラウンドで分離したプロセスとして実行されることで、最近のマルチ コア マシンの利点を活用できます。Core2Duo、QuadCore や i7 のユーザーは、何の工夫をしなくてもそのパワーを Web ページの高速化に役立てられます。

開発者は、サイトに何の変更も加えず、最新の PC ハードウェアのパフォーマンスの恩恵を受けることができます。ユーザーは待たされることのない、ネイティブ プログラムのような操作性が得られます。この設計は実際のサイトで起こっている Web 開発のパターンによりよいパフォーマンスをもたらします。その鍵は、皆さんが使っている中で最も重要な言語である JavaScript に、最良のテクノロジーを投入した事です。

標準

標準と相互運用性の目標は、同一の HTML、スクリプト、整形マークアップが異なるブラウザーでも同じ結果となるよう動作することです。異なるブラウザーのための異なるコード パスが省けることは誰にとっても利益であり、開発者のためには革新のためのより多くの機会が作られます。

多くの標準規格は未だ生成過程にあります。委員会でのドラフト (草案) の形であったり、部分的に、しかも異なるブラウザーそれぞれで異なった方法で実装されていたりします。開発者はここで厳しい課題に直面します: 開発者は異なるブラウザーで同様の、しかし常に同一とは限らない結果を得るため、より多くの異なった HTML、スクリプト、マークアップを書かねばならず、本来より激しく働かなければなりません。

私たちは同じマークアップが異なったブラウザーでも一定に動作するようにしたいのです。IE9 では、IE8 で CSS 2.1 に取り組んだ基盤の、残りの部分に取り組んでいます。IE8 は高品質の CSS 2.1 実装を提供し、標準にこだわり、標準があいまいな場合は他のブラウザーの実装を参考にしました。この部分で開発者にとって HTML5 アプリケーション作成が容易になると、業界全般に渡って開発者が期待するのは当然です。

私たちのアプローチはデータから始まりました。開発者が Web で実際に利用している DOM と JavaScript の API により、IE9 でどのような標準をサポートするかのベースラインを設定しました。このデータを得るため、主要な 7000 の Web サイトでの Web API の利用を検査するツールを作成しました。次の分散図グラフは、それぞれの API ごとにどれだけのサイトが使っているかを示しています。このデータについては別に詳細を記事にする予定です。

このデータに示したすべての標準に取り組む予定です。IE9 では、HTML5 アプリケーションが必要とする完全なシナリオのために、このデータに表れていないいくつかの標準についてもサポートされるでしょう。

ここに取り上げられている主要なテクノロジーは HTML5 と CSS3、DOM、SVG です。IE9 test drive site に詳細とサンプルがあります。今回、私たちは HTML5 の構文解析ルール、Selection API、XHTML サポート、インライン SVG の実装についての開発者の皆さんのフィードバックを求めています。CSS3 については、IE9 での Selector、Namespace、Color、Value、Background、Borders、Font のサポートについての開発者のフィードバックを求めています。さらに DOM では IE9 の Core、Event、Style、Range のサポートについての開発者のフィードバックを求めています。

一部の方は Acid3 を標準の手っ取り早い指標として使っています。Acid3 は十数個の異なったテクノロジーについての約 100 の詳細をテストします。これらの一部は「工事中」です。SMIL アニメーターのような一部のパターンは、CSS3 アニメーションのような HTML5 の他の部分と一貫性が無く、調整が必要とされています。以下は本日時点での IE9 Platform Preview の、本日時点の Acid3 テストの実行結果です:

IE は業界の目標である標準による “同一のマークアップ” と、標準の現実に利用されている部分においてさらに向上を図っていくので、その結果として Acid3 のスコアは引き続き上昇していくでしょう。Web 標準への私たちのアプローチの中核は、業界標準のテスト スーツの開発です。現在、Microsoft は 100 を超える HTML5、CSS3、DOM、SVG についてのテストを W3C に提出しています。W3C に提供したテストの一部はここでお試しいただけます。

Microsoft は包括的なテストを作成するための標準化のプロセスの一環として、標準化団体と協力しています。私たちのテストを適切なグループに提出し、公正で的確で包括的なテストを確立するためそのグループに属する他のブラウザー ベンダーとも協力しています。現在は、開発者が異なる HTML、スクリプト、整形マークアップを必要としながら異なる結果しか得られないシナリオが多すぎます。標準化団体による包括的なテスト スーツは開発者と業界に有益です。

GPU パワーを使った HTML5

HTML5 アプリケーションは卓越したスクリプト パフォーマンスとブラウザー間で一貫した “同一のマークアップで同一の結果” を必要とします。優れた HTML5 アプリケーションはそのような基礎の上に構築され、さらにゲームのようなインタラクティブ性と映画のようなグラフィックの豊かさをユーザー エクスペリエンスに提供します。

現在の標準マークアップ Web ページや現在のブラウザーは、PC のハードウェアやオペレーティング システムの能力の一部しか利用していないため、この点について限定的です。HTML5 アプリケーションはより多くを必要としているのです。

こうしたアプリケーションに対応して、IE9 は Windows の最新のグラフィック API と PC のハードウェアを、ブラウザーが画面に表示するすべてのテキストやグラフィックを加速するために利用します。この基本的な例は小さく単純な Web ページで、マウス ポインターを追いかけるアニメーション イメージが含まれています:

同じ HTML、スクリプト、マークアップを動作させた場合、IE9 はより良い応答性と高い FPS (秒あたりのフレーム数) を示します。多くの今日のWeb サイトではパフォーマンスの節で説明したように、スクリーンへのオブジェクトの描画に時間が使われているのです。

IE9 は完全なハードウェア アクセラレートによる SGV サポートを提供する最初のブラウザーです。IE9 の開発者ツールも SVG をサポートします。私たちは優れたパフォーマンスと内部的な一貫性を持ったプラットフォームを伴った最新のハードウェア上に開発者の皆さんがどのようなものを構築するのか楽しみにしています。SVG については今後のブログ記事でさらに深く述べる予定です。

IE Preview

本日、私たちは開発者向けに最初の IE Platform Preview が公開されたこと、および概ね 8 週間ごとにこれをアップデートするという公約についてアナウンスしました。Platform Preview の公開とそれへのフィードバックの循環は、以前の IE のリリースからの変化を大きく刻印するでしょう。

これらの Platform Preview のビルドにより、開発者の皆さんは私たちが行った IE のプラットフォームの改善に早期にアクセスできます。Platform Preview から直接利用できる、フィードバックを共有し議論するフォーラムもあります。標準化団体への関与や業界標準のテスト スーツの開発と相まって、この開かれたコミュニティーの議論と早期で頻繁なビルドは私たちの Web への関与を反映しています。

Platform Preview の更新で提供される追加の標準サポートの一例として、MIX カンファレンスでは HTML5 ビデオ サポートを紹介し、HTML5 ビデオ (特に業界標準の HD エンコード、H.264 720p) がビデオ エンコーディングのための PC ハードウェアを活用するためにオペレーティング システムを利用した際、どれほど優れたパフォーマンスを示すかについても紹介しました。

開発者の方、または技術的なエンスージアストの方は、ぜひ Platform Preview をダウンロードしてください。これは開発者が既知の幅広く利用されている標準的な Web の典型が、Windows 上で PC のハードウェアを活用するといかにより良く実行できるかの、最初のプレビューです。

先週、Channel 9 は私たちのチームの数人のエンジニアにインタビューを行っています。インタビューのビデオは以下で視聴できます:

Introducing the IE9 Platform Preview (IE9 Platform Preview の概要)
GPU powered HTML5 (GPU のパワーを利用した HTML5)
IE9 performance: from JavaScript to COM to DOM to HTML5 (IE9 のパフォーマンス: JavaScriptからCOMへ、DOMへ、HTML5へ)
SVG past, present, future of vector graphics on the web (SVG、Web 上のベクター グラフィックの過去、現在、未来)

ありがとうございました。
Dean Hachamovitch
ゼネラル マネージャー, Internet Explorer

WordPress.com で無料サイトやブログを作成.