quick_benchmark
Sometimes I'm curious which of a few choices is fastest, but I can never remember the benchmark syntax. Do not use this gem to benchmark anything non-trivial.
$ gem install quick_benchmark
require 'quick_benchmark'
nums = (0..99).to_a
benchmark 1000.times do
time :reject do
nums.reject(&:even?)
end
time 'select' do
nums.select(&:odd?)
end
end
# Rehearsal -------------------------------------------
# reject 0.000000 0.000000 0.000000 ( 0.000234)
# select 0.000000 0.000000 0.000000 ( 0.000225)
# ---------------------------------- total: 0.000000sec
#
# user system total real
# reject 0.000000 0.000000 0.000000 ( 0.000207)
# select 0.000000 0.000000 0.000000 ( 0.000207)
On Optimization
As a word of warning, remember not to optimize prematurely. You're just wasting your time. 99/100 times you use quick_benchmark
the results are going to be exactly the same (hence the example).