作者:不详 来源:JavaEye 酷勤网收集 2008-04-30
摘要
不用把这次测试当作正式的性能选择依据,可以大概了解一下ruby不同版本的运行速度。我本来以为Ruby 1.8会很慢,没想到Ruby 1.8速度仅次于Ruby 1.9,而Rubinius的速度是最慢的,考虑到它是一个虚拟机,而且这是一个很新的项目,这意味着未来还有很大的成长空间。
这个星期我使用charlie(一个遗传算法库)和重写的TSP范例来测试Ruby1.8, Ruby 1.9, JRuby和Rubinius(Ruby虚拟机)。测试结果让人吃惊,数据如下:
Ruby 1.8 (MRI):
$ time ruby tsp_solver.rb
real 0m34.940s
user 0m34.398s
sys 0m0.125s
Ruby 1.9 :
$ time ruby19 tsp_solver.rb
real 0m21.533s
user 0m20.736s
sys 0m0.119s
Let's move to the alternatives now.
First JRuby 1.1:
$ time jruby tsp_solver.rb
real 0m57.815s
user 0m48.651s
sys 0m0.751s
JRuby 1.1 with -J-server flag:
$ time jruby -J-server tsp_solver.rb
real 0m34.834s
user 0m37.714s
sys 0m0.667s
And finally Rubinius:
$ time rbx tsp_solver.rb
real 12m29.830s
user 12m20.105s
sys 0m4.219s
我本来以为Ruby 1.8会很慢,没想到Ruby 1.8速度仅次于Ruby 1.9,而Rubinius的速度是最慢的,考虑到它是一个虚拟机,而且这是一个很新的项目,这意味着未来还有很大的成长空间。
我使用的机器是:MacBook Pro with 2.2GHz Intel Core 2 Duo and 2GB Ram running Mac OS X Leopard 10.5.2。测试代码tsp_solver.rb,需要安装charlie gem。不用把这次测试当作正式的性能选择依据,可以大概了解一下ruby不同版本的运行速度。
下面是RVMs versions:
* $ ruby -v
ruby 1.8.6 (2007-09-24 patchlevel 111) [universal-darwin9.0]
* rbx -v
rubinius 0.8.0 (ruby 1.8.6 compatible) (bbe450f22) (04/15/2008) [i686-apple-darwin9.2.2]
* $ ruby19 -v
ruby 1.9.0 (2007-12-25 revision 14709) [i686-darwin9.2.2]
* $ jruby -v
ruby 1.8.6 (2008-03-28 rev 6360) [i386-jruby1.1]
And: $ java -version
java version "1.5.0_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237)
Java HotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing)
Ruby 1.8 (MRI):
$ time ruby tsp_solver.rb
real 0m34.940s
user 0m34.398s
sys 0m0.125s
Ruby 1.9 :
$ time ruby19 tsp_solver.rb
real 0m21.533s
user 0m20.736s
sys 0m0.119s
Let's move to the alternatives now.
First JRuby 1.1:
$ time jruby tsp_solver.rb
real 0m57.815s
user 0m48.651s
sys 0m0.751s
JRuby 1.1 with -J-server flag:
$ time jruby -J-server tsp_solver.rb
real 0m34.834s
user 0m37.714s
sys 0m0.667s
And finally Rubinius:
$ time rbx tsp_solver.rb
real 12m29.830s
user 12m20.105s
sys 0m4.219s
我本来以为Ruby 1.8会很慢,没想到Ruby 1.8速度仅次于Ruby 1.9,而Rubinius的速度是最慢的,考虑到它是一个虚拟机,而且这是一个很新的项目,这意味着未来还有很大的成长空间。
我使用的机器是:MacBook Pro with 2.2GHz Intel Core 2 Duo and 2GB Ram running Mac OS X Leopard 10.5.2。测试代码tsp_solver.rb,需要安装charlie gem。不用把这次测试当作正式的性能选择依据,可以大概了解一下ruby不同版本的运行速度。
下面是RVMs versions:
* $ ruby -v
ruby 1.8.6 (2007-09-24 patchlevel 111) [universal-darwin9.0]
* rbx -v
rubinius 0.8.0 (ruby 1.8.6 compatible) (bbe450f22) (04/15/2008) [i686-apple-darwin9.2.2]
* $ ruby19 -v
ruby 1.9.0 (2007-12-25 revision 14709) [i686-darwin9.2.2]
* $ jruby -v
ruby 1.8.6 (2008-03-28 rev 6360) [i386-jruby1.1]
And: $ java -version
java version "1.5.0_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237)
Java HotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing)
原文:nikos-d.blogspot.com
来自:使用遗传算法对Ruby1.8 1.9,JRuby和Rubinius测试的结果

