require 'benchmark' n = 1_000_000 login = 'login' time = Time.now.to_i Benchmark.bmbm 20 do |results| results.report 'cycle' do n.times do end end # result: 3 array object usage results.report '[] + []' do n.times do [login, time] + [3, 4, 5] end end # result: 2 array object usage results.report '[].push(*[])' do n.times do [login, time].push(*[3, 4, 5]) end end # result: 1 array object usage results.report '[].unshift(a, b)' do n.times do [3, 4, 5].unshift(login, time) end end end