JITコンパイラとは
JITはJust In Timeの略。JITコンパイラは、ソフトウェアの実行時に環境に依存しない中間コードを機械語にコンパイルするため、「実行時コンパイラ」とも呼ばれている。「Java VM」や「HotSpot」などがその代表格。JITコンパイラは近年、多くのプログラミング言語における高速化技術として必要不可欠になっている。
Javeの登場当初は、記述されたプログラムの命令を一つずつ機械語に翻訳・実行する「インタプリタ方式」で実行されていた。JavaにJVM(Javaの仮想マシン)とバイトコードが導入され、プラットフォームに依存しないプログラムの開発が可能になったため、近年ではJITコンパイラが主流となっている。その理由は、実行要求から実行開始までの時間はかかるが、コンパイル後の実行速度は高速化されるという特徴があるためである。
Facebookが公開しているPHP実行環境の「HHVM」もJITコンパイラの一種。2013年夏にFacebookのエンジニアたちが、Webサーバー上で使用するCPUを15%低下させるためにHHVMのJITコンパイラを再設計して大きな話題を呼んだ。