スポンサー広告---------
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
過去_log_0-2013-07-21
Benchmark ruby1.9.3 ruby2.0.0
rhhh8h88h88vcvc.jpg
適当に



require"benchmark"

def fib(n)
return n if (n < 2)
return fib(n - 2) + fib(n - 1)
end

class A
attr_accessor :x
end
n = 5000000
nn = 10000000
a = 0..nn
Benchmark.bm do |x|
x.report(:a){
n.times { A.new }
}
x.report(:b){
a.map do |m| m+1 end
}
x.report(:c){
a.each do |m| m+1 end
}
x.report(:d){
fib 36
}
end

ruby 1.9.3p429 (2013-05-15) [i386-mingw32]

user system total real
a 1.014000 0.000000 1.014000 ( 1.015819)
b 0.998000 0.047000 1.045000 ( 1.076411)
c 0.593000 0.000000 0.593000 ( 0.592804)
d 3.682000 0.000000 3.682000 ( 3.728436)




ruby 2.0.0p247 (2013-06-27) [i386-mingw32]

user system total real
a 1.030000 0.000000 1.030000 ( 1.040465)
b 0.983000 0.062000 1.045000 ( 1.069679)
c 0.561000 0.000000 0.561000 ( 0.572221)
d 3.744000 0.000000 3.744000 ( 3.742188)


・・・・・微妙
とりあえず、eachが少しはやくなったと思う
mapも僅かに・・・。

   0..
Name
comment

hibana
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。