XRuby 0.1.2 released

XRuby 0.1.2 is now available for download from the project download page: http://code.google.com/p/xruby/downloads/list

This latest release contains more built-in libraries and a few bug fixes for the compiler. We expect to release a new stable version every month.

Last week, Antonio Cangiano did a very interesting job to compare the performance of different ruby implementations using YARV's benchmark suite. XRuby is not included in his test as Antonio may not know our project exists. For people who are interested, here is the XRuby's performance data (due to my limited resource, only ruby 1.8.5 interpreter was compared):

>java -Xmx512m -jar xruby-0.1.2.jar benchmark\run.rb

Test Ruby 1.8.5 XRuby 0.1.2
bm_app_answer.rb fail fail
bm_app_factorial.rb fail fail
bm_app_fib.rb 20.42 33.84
bm_app_mandelbrot.rb 7.270 15.33
bm_app_pentomino.rb 294.2 956.9
bm_app_raise.rb 4.906 4.597
bm_app_strconcat.rb 5.917 5.858
bm_app_tak.rb 26.46 38.95
bm_app_tarai.rb 21.08 35.51
bm_loop_times.rb 14.83 93.55
bm_loop_whileloop.rb 26.26 76.5
bm_loop_whileloop2.rb 5.327 16.15
bm_so_ackermann.rb fail fail
bm_so_array.rb 19.35 300.2
bm_so_concatenate.rb 5.868 26.58
bm_so_count_words.rb 2.253 46.43
bm_so_exception.rb 9.893 9.973
bm_so_lists.rb 3.696 41.04
bm_so_matrix.rb 6.328 21.29
bm_so_nested_loop.rb 15.38 68.20
bm_so_object.rb 21.97 20.77
bm_so_random.rb 6.269 15.69
bm_so_sieve.rb 1.992 5.476
bm_vm1_block.rb 65.67 98.91
bm_vm1_const.rb 48.05 82.31
bm_vm1_ensure.rb 46.19 75.38
bm_vm1_length.rb 55.62 105.6
bm_vm1_rescue.rb 36.47 80.91
bm_vm1_simplereturn.rb 57.12 88.16
bm_vm1_swap.rb 76.21 85.73
bm_vm2_array.rb 18.64 19.65
bm_vm2_method.rb 33.41 35.32
bm_vm2_poly_method.rb 45.42 47.78
bm_vm2_poly_method_ov.rb 12.81 25.98
bm_vm2_proc.rb 21.54 31.23
bm_vm2_regexp.rb 13.40 52.35
bm_vm2_send.rb 11.87 31.60
bm_vm2_super.rb 13.98 20.25
bm_vm2_unif1.rb 11.46 19.95
bm_vm2_zsuper.rb 15.84 21.92
bm_vm3_thread_create_join.rb 0.120 1.402


The test environment is Intel Pentium M 1G CPU, 1G Memory, Windows XP SP2, Java 1.5.0_09. It may be worth to mention we have done almost nothing for optimization, not even a simple method cache. I think it is quite possible for a JVM based ruby compiler to beat the classic Ruby interpreter on performance, while YARV's number is going to be very hard for us to reach.

你可能感兴趣的:(jvm,XP,Google,Ruby,performance)