Ruby 代码片段运行时间统计
Benchmark 位于 Ruby 的标准库里边,因此使用时需要 require。
该模块用来测量和报告执行 Ruby 代码所用时间。
示例代码
例子是测试 for、times、each 循环 1 亿遍的时间
require 'benchmark'
# 输出列宽
col_width = 10
Benchmark.bm(col_width) do |bm|
bm.report('for') do
for i in 0...100_000_000
a = 1
end
end
bm.report('times') do
100_000_000.times do
b = 1
end
end
bm.report('each') do
(0...100_000_000).each do
c = 1
end
end
end
输出结果
user system total real
for 3.093000 0.000000 3.093000 ( 3.085236)
times 2.813000 0.000000 2.813000 ( 2.819954)
each 2.797000 0.000000 2.797000 ( 2.800927)