如果您能提供帮助或希望成为维护者之一,请开始提供帮助。您可以在 RVM Github 组织。 中找到更多与 RVM 相关的项目。
使用 RVM 进行基准测试
如果您有一些代码想要在多个版本的 ruby 上进行基准测试,现在可以使用 RVM 很容易地做到这一点。假设
$ cat increment.rb require 'benchmark' puts RUBY_DESCRIPTION puts Benchmark.measure do y=0 1000.times do |x| y = x + 1 end end
我们可以很容易地针对多个 ruby 版本对这段代码进行基准测试
$ rvm 1.8.6,1.8.7,1.9.1,ree do ruby increment.rb ruby-1.8.6-p383: ruby 1.8.6 (2009-08-04 patchlevel 383) [i686-darwin10.0.0] Rehearsal --------------------------------------------------------------- benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.000261) \------------------------------------------------------ total: 0.000000sec user system total real benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.000263) ruby-1.8.7-p174: ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10.0.0] Rehearsal --------------------------------------------------------------- benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.001448) \------------------------------------------------------ total: 0.000000sec user system total real benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.001364) ruby-1.9.1-p243: ruby 1.9.1p243 (2009-07-16 revision 24175) [i386-darwin10.0.0] Rehearsal --------------------------------------------------------------- benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.000096) \------------------------------------------------------ total: 0.000000sec user system total real benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.000090) ruby-enterprise-1.8.6-20090610: ruby 1.8.6 (2008-08-11 patchlevel 287) [i686-darwin10.0.0] Ruby Enterprise Edition 20090610 Rehearsal --------------------------------------------------------------- benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.000281) \------------------------------------------------------ total: 0.000000sec user system total real benchmarking 'increment.rb' 0.000000 0.000000 0.000000 ( 0.000272)