De acuerdo con la información que pude reunir el entorno de ejecución de Java y .NET, el estado actual de las cosas es el siguiente:.NET runtime vs. Java Hotspot: ¿Está .NET una generación atrás?
moderna máquina virtual de Java son capaces de realizar recopilación continua, lo que combinado con perfiles pueden producir un gran rendimiento mejoras. Las JVM más antiguas emplean JIT. Más información en este artículo: http://www.ibm.com/developerworks/library/j-jtp12214/ y especialmente: Java theory and practice: Dynamic compilation and performance measurement
.NET utiliza JIT o NGEN para generar código nativo, pero una vez que se genera el código nativo, no más lejos se llevan a cabo (tiempo de ejecución) optimizaciones.
puntos de referencia a un lado y con la intención de escalar la guerra santa, ¿significa esto que Java HotSpot VM es una generación por delante de .Net. ¿Acaso estas tecnologías empleadas en Java VM finalmente llegarán al tiempo de ejecución de .NET?
El artículo vinculado sugiere que la recompilación dinámica podría ser algo bueno, pero que es difícil saber con certeza, ya que la VM puede optar por volver a optimizar sin previo aviso. Sin un perfil de código razonable, parece un artículo de fe, ya que no hay pruebas de que realmente se produzcan "grandes mejoras de rendimiento". –
Parece ser una técnica eficiente para mejorar la sobrecarga de envío polimórfico. Ver también: http://en.wikipedia.org/wiki/Adaptive_optimization y http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.49.3894&rep=rep1&type=pdf – Dan
Si esa tecnología era Tal mejora sobre el modelo JIT/NJEN estoy seguro de que Microsoft lo hubiera implementado. Esa disertación es de 1994 y el artículo de IBM es de 2004. –