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).