Google Chrome runs web pages and applications with lightning speed.

GoogleはChromeにおけるJavaScriptの性能改善に取り組んでいる。「Compiling in the background for a smoother user experience」で伝えられた内容によれば「Chrome Beta」では「並列コンパイル(Concurrent Compilation)」と呼ばれる機能がデフォルトで有効になり、レスポンスが向上するほかパフォーマンスも向上するとされている。

ChromeではJavaScript関数を実行する場合、実行の直前までコンパイルを遅延させ、最初の1回目の実行時直前にコンパイルを実行する。このコンパイルはコンパイル時間を短くすることを主眼においたものですぐにコンパイルが終了する。その後もよく実行されるものについては「最適化コンパイル(Optimizing Compile)」という、コンパイルには時間がかかるが生成されるコードはより高速に動作するというコンパイルが実施される。これまでこの最適化コンパイルはメインスレッドで実施されていたため、この部分でアプリケーションの処理が一時的に止まったように見えることがあった。

「並列コンパイル」はこの部分のコンパイル処理の大半をバックグラウンドスレッドへ移動するというもので、メインスレッドではコードの実行を継続できるためレスポンスが向上するという。記事に掲載されている内容によれば、ベンチマークで600ミリ秒の実行停止が発生していた部分が、並列コンパイルを有効にすることでその部分も処理が継続して行われるようになったとされている。

Compiling in the background for a smoother user experienceより抜粋