2010-08-25 25 views
7

No sé nada sobre Java.¿Qué es "estado estable de Java 6"

Hay Java 6 steady state en referencia

http://shootout.alioth.debian.org/u64q/which-programming-languages-are-fastest.php 

cuales Java 6 steady state es el más rápido entre todos los demás Java. He buscado y no hay buenos resultados al respecto

¿Qué es Java 6 steady state? ¿Se puede ejecutar cualquier framework web Java en Java 6 steady state?

+0

Según mi entender, "estado estable" simplemente significa un estado del recolector de basura, que debe alcanzarse para obtener resultados comparativos confiables. No sé lo que realmente significa estar en un estado estable. – Carlos

Respuesta

3

"estado estable de Java 6" hace referencia a la evaluación comparativa de las pruebas después de que se haya realizado todo el arranque de JVM, carga de clases, JIT'ing, etc., es decir, qué tan rápido funciona una vez que lo está ejecutando estado.

Me estoy metiendo en el lado de desarrollo web, así que no puedo asegurarlo, pero sospecho que cualquier cosa que ejecute contenedores/servlets/whathaveyou se está ejecutando en estado estable.

11

Es posible que desee mirar el description page. La respuesta corta es que ejecuta el programa 66 veces, luego divide el tiempo por 66 para obtener un promedio en una gran cantidad de ejecuciones. La idea básica es que esto amortiza cosas como JVM startup time JIT compilando en un gran número de ejecuciones para que se haga una idea de lo que podría esperar de algo así como un servicio web muy usado que se ejecuta todo el tiempo, por lo que cosas como El tiempo de inicio de JVM y El tiempo de compilación JIT se vuelve (casi) irrelevante.

+2

+1 - haciendo referencia a la documentación + explicación, ¡siempre vale la pena subir el voto! – Carl

+0

afaict el tiempo de ejecución estándar utilizado en el juego de puntos de referencia amortiza la compilación de JIT (excepto el muy corto tiempo de ejecución de meteoritos), pero para algunos de esos pequeños programas, el método compilado totalmente optimizado no se usa hasta que se ejecuta el programa de nuevo. – igouy

+0

buena respuesta, aunque es interesante, que en realidad no coincide con la definición normal de "estado estable" (que excluiría el tiempo de inicio en lugar de simplemente amortizarlo ...) – mikera