Internet Explorerのパフォーマンス担当であるリードプログラムマネージャーのJason Weber氏は、IE8がページを準備し、レンダリングし、Webサイトがフォーカスすべきことを表示するまでの間、どの処理に最も時間を費やしているのかを表す内部データを公開した。
Weber氏によれば、Internet Explorerではネットワークに始まり、レンダリングで終わる11のサブシステムを含んでいる。
- ネットワーク – サーバーとの通信を行う。Webコンテンツのキャッシング等のサービスを含む。
- HTML – HTMLドキュメントのパースとDOMの構築を行う。XML、XHTML、SVGドキュメントのための類似サブシステムが存在する。
- CSS – CSSスタイルのパースと、後で使用するために構造的表現を作成する。
- コレクション – HTMLメタデータのアクセスと保管を担う。
- JavaScript – スクリプトを実行する。
- マーシャリング – ブラウザとJavaScriptエンジン間のコミュニケーションレイヤを担う。
- ネイティブオブジェクト管理 – JavaScriptエンジンはこのサブシステムに含まれるDOM APIを介してHTMLドキュメントにアクセスする。
- フォーマッティング – 各ドキュメントのコンポーネントにスタイルを適用する。
- ブロック構築 – 各ドキュメントコンポーネントが、後でレイアウトとしてレンダリングされる矩形ブロックを受けとる。
- レイアウト – 全てのブロックのレイアウトを行う。
- レンダリング – 全てのブロックが画面に描画され、ページローディングされる最終段階を担う。
Microsoftは、ブラウザーがページを表示する間、どの処理に最も時間を使っているのかを調査するために、主要なニュース5サイトとAJAXを駆使する25サイトでIE8をテストした。ネットワークのパフォーマンス問題を除くと、あるサイトではマーシャリングに多くの時間を費やしJavaScriptの処理が重いことが判明した:
ニュースサイトの場合、IE8では平均するとJavaScript処理に29%、マーシャリングに18%、レンダリングに17%を費やしていることが判明した。
MicrosoftはFacebook、Gmail、Hotmailを含む25個のAJAXサイトについて分析した。その結果、IE8ではWebページのレンダリングに31%、JavaScript処理に21%、フォーマッティングに14%、レイアウトに12%を費やしていることが判明した。
IEチームは、昨年11月にIE9のパフォーマンス結果を公開していた。そこでは、IE9はニュースサイトの表示においてJavaScript処理に最も多くの時間を費やしていたが、Excel Web AppのようなAJAXを駆使したサイトレイアウトのため相当の時間を使っていた。
これは、サブシステム構成を変更しているであろうIE9プレビューの結果ではなく、Weber氏は次の通り約束している。「私たちは近々IE9ベータを入手できます。ハードウェアアクセラレーションを使用しないIE8等の現世代ブラウザと比べて、IE9のサブシステムがいかに協調してパフォーマンス指標を変化させているかについて話せるでしょう。」 Microsoftは、サブシステムを通してWebページを分析してきたツールであるIE9ベータを9月15日に公開するだろう。