Just-In-Time Compilation
JIT compila el código caliente a código máquina en tiempo de ejecución, combinando la flexibilidad de un intérprete con el rendimiento de un compilador.
Propósito
Optimizar la ejecución interpretada en tiempo de ejecución, optimizando adaptativamente los puntos calientes.
Mecanismo
Interpreta primero mientras recopila datos de perfilado. Los métodos/bucles calientes disparan la compilación JIT a código máquina. V8 TurboFan, PyPy y la JVM HotSpot usan JIT. La desoptimización vuelve al intérprete cuando se rompen las suposiciones.
Casos de uso
- Runtimes de lenguajes
- Optimización de rendimiento
- Compilación adaptativa