por
pobrecito hablador
el Miércoles, 09 Agosto de 2006, 15:04h
(#791841)
Hotspot generalmente es mas rápido que JIT.
Te lo voy a explicar del porqué.
En JIT, cada instrucción de intérprete (esto es un bytecode) es compilada inmediatamente a un grupo de instrucciones de código nativo, lo cual se va amontonando la pila de instrucciones de código nativo con el riesgo de que ésta será grande para la caché de CPU, y no habrá distinción entre puntos calientes y zonas frías de ejecución.
En Hotspot, cada instrucción de intérprete (esto es un bytecode) no es compilada inmediatamente sino que se retarda su compilación pero va profilando (actualizando el contador y la temporización de dicha instrucción de intérprete), hasta que después de un tiempo, una tarea agente localiza los puntos más calientes y los compila a código nativo, lo cual la pila de instrucciones de código nativo será más compacta y rápida, y gracias a esto, ocupará muy poco espacio de caché y sus saltos de código nativo serán muy cortos.
Hotspot es mas rápido que JIT.
(Puntos:0)