2009-02-05 11 views
6

He leído que la última versión del intérprete de Ruby (YARV) tendrá mejoras sustanciales en el rendimiento debido a la compilación de códigos de bytes. Mi pregunta es si alguien ha intentado ejecutar esto en contra de JRuby. ¿Alguna diferencia notoria en la ejecución en Windows?JRuby vs rendimiento de YARV --- ¿diferencia notable?

Este enlace tenía algunas buenas métricas pero la mayor parte se ejecuta en Linux ... http://antoniocangiano.com/2007/02/19/ruby-implementations-shootout-ruby-vs-yarv-vs-jruby-vs-gardens-point-ruby-net-vs-rubinius-vs-cardinal/

Gracias de antemano!

Todd

Respuesta

9

que la entrada fib es de casi 2 años de edad. JRuby es mucho más rápido que eso ahora. Fib no es un buen punto de referencia para el rendimiento en tiempo de ejecución, pero aquí hay algunos números en mi máquina (32 bits MBP corriendo SoyLatte (Java 6)):

jruby --server bench/bench_fib_recursive.rb 
    0.661000 0.000000 0.661000 ( 0.661139) 
    0.346000 0.000000 0.346000 ( 0.345864) 
    0.343000 0.000000 0.343000 ( 0.342955) 
    0.348000 0.000000 0.348000 ( 0.348176) 
    0.343000 0.000000 0.343000 ( 0.342783) 

jr --fast --server bench/bench_fib_recursive.rb 
    0.833000 0.000000 0.833000 ( 0.832847) 
    0.265000 0.000000 0.265000 ( 0.264644) 
    0.249000 0.000000 0.249000 ( 0.248780) 
    0.254000 0.000000 0.254000 ( 0.253551) 
    0.254000 0.000000 0.254000 ( 0.254364) 

ruby1.9 bench/bench_fib_recursive.rb 
    0.380000 0.010000 0.390000 ( 0.381058) 
    0.370000 0.000000 0.370000 ( 0.400535) 
    0.370000 0.000000 0.370000 ( 0.388423) 
    0.370000 0.000000 0.370000 ( 0.400368) 
    0.370000 0.010000 0.380000 ( 0.398530) 

Así que nuestro modo por defecto es un poco más rápido que YARV y nuestra más reciente aún algo experimental: el modo rápido es bastante más rápido. Nunca nos quedamos quietos trabajando en el rendimiento de JRuby, y seguiremos acelerando.

Para el comentarista que publicó un gráfico antiguo, compruebe las fechas de estas cosas. Si fue solo una semana o tal vez un mes o dos años ... entonces tal vez ... pero la mayoría de los proyectos cambian sustancialmente en un tiempo mucho menos dos.