「Firefox」刷新に向けた取り組み--モジラの3つの変更点 - (page 2)

文:Stephen Shankland(CNET News) 翻訳校正:川村インターナショナル2010年03月04日 07時30分

 これらすべてが重要なのは、これまでにないほど大量になっているブラウザの処理を主に担うのがJavaScriptだからだ。ウェブページのユーザーインターフェースは高度化が進んでおり、その多くがJavaScriptで記述されている。そして新しい標準によって、ブラウザによるバックグラウンド処理タスクの実行も可能になるため、よりいっそう高度なウェブページやウェブアプリケーションの可能性が開けている。

 そのような経緯から、Mozillaの「JaegerMonkey」と呼ばれるプロジェクトが発足した。

 Mozillaのプログラマーたちは、比較的高レベルのJavaScript命令を解釈する代わりに、よく使用されるいくつかのタスクを、プロセッサのネイティブ言語で動作するようにコンパイルされた高速ソフトウェアに変換することにより、FirefoxのJavaScriptエンジンがコードをより高速に処理できるだろうという結論に達した。問題は、このトレースプロセスが作動しない場合や停止した場合だという。JaegerMonkeyのプログラマーDavid Anderson氏が2月26日のブログ記事に記した。

 「トレースが動作している時は、一般的なアプローチに比べて処理が速いということが分かった。しかしトレースが停止すると、旧式のインタープリタに戻らなければならない。その時点でJavaScriptの実行速度は2007年から2008年当時(つまり『Firefox 3.5』『Safari 4』、Chromeなどの前)の水準になる。それは許容できないので、修正する必要がある」(Anderson氏)

 JaegerMonkeyは、2つのものの長所を取り入れるように設計されている。Anderson氏は「トレースによる超高速を続けるとともに、トレースが停止してフォールバックしたときでもまだ非常に高速というようにしてはどうだろうか」と問う。「われわれの新しいプロジェクトJaegerMonkey(またはJägerMonkey)は、まさにこのことを実現しようとしている。まだ始めたばかりだが、すでに見込みのある成果が得られている」(Anderson氏)

 JaegerMonkeyのプログラマーDavid Mandelin氏の記述によれば、MozillaはJavaScriptエンジンNitroに新しい要素を加えることに決めたという。

 「われわれはAppleのオープンソースのJavaScript JIT(ジャストインタイムコンパイラ)であるNitroからアセンブラをインポートすることにした。以前調べたときに、シンプルで速いことが分かった(実際に測定したところ、正規表現のコンパイルが非常に速かった)。また、オープンソースであり、C++で適切に設計されているため、目的に最適だ」。Mandelin氏はブログ記事にこう記している。

CNET Japanの記事を毎朝メールでまとめ読み(無料)

-PR-企画特集

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]