Skip to content

Instantly share code, notes, and snippets.

@simeonwillbanks
Last active January 3, 2016 07:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save simeonwillbanks/8428172 to your computer and use it in GitHub Desktop.
Save simeonwillbanks/8428172 to your computer and use it in GitHub Desktop.
Copy Hash #ruby #benchmark
require 'benchmark'
puts "\n\n"
puts RUBY_VERSION
iterations = 100_000
Benchmark.bmbm do |bm|
bm.report 'Hash#dup' do
WHITELIST1 = { :protocols => { :from => 'constant' } }
iterations.times do
context1 = { :whitelist => { :protocols => { :from => 'context' } } }
whitelist1 = (context1[:whitelist] || WHITELIST1).dup
whitelist1[:protocols] = whitelist1[:protocols].dup
whitelist1[:protocols][:from] = 'copy'
end
end
bm.report 'Hash#[]' do
WHITELIST2 = { :protocols => { :from => 'constant' } }
iterations.times do
context2 = { :whitelist => { :protocols => { :from => 'context' } } }
whitelist2 = Hash[context2[:whitelist] || WHITELIST2]
whitelist2[:protocols] = Hash[whitelist2[:protocols]]
whitelist2[:protocols][:from] = 'copy'
end
end
bm.report 'Marshal#dump and Markshal#load' do
WHITELIST3 = { :protocols => { :from => 'constant' } }
iterations.times do
context3 = { :whitelist => { :protocols => { :from => 'context' } } }
whitelist3 = Marshal.load(Marshal.dump(context3[:whitelist] || WHITELIST3))
whitelist3[:protocols][:from] = 'copy'
end
end
end
1 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.080000 0.740000 ( 0.729420)
Hash#[] 0.560000 0.060000 0.620000 ( 0.625059)
Marshal#dump and Markshal#load 1.000000 0.050000 1.050000 ( 1.055827)
--------------------------------------------------------- total: 2.410000sec
user system total real
Hash#dup 0.630000 0.060000 0.690000 ( 0.687276)
Hash#[] 0.560000 0.050000 0.610000 ( 0.627457)
Marshal#dump and Markshal#load 0.990000 0.060000 1.050000 ( 1.048365)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.600000 0.010000 0.610000 ( 0.602448)
Hash#[] 0.510000 0.000000 0.510000 ( 0.512229)
Marshal#dump and Markshal#load 1.150000 0.000000 1.150000 ( 1.155172)
--------------------------------------------------------- total: 2.270000sec
user system total real
Hash#dup 0.590000 0.000000 0.590000 ( 0.584820)
Hash#[] 0.510000 0.000000 0.510000 ( 0.509779)
Marshal#dump and Markshal#load 1.250000 0.000000 1.250000 ( 1.259450)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.630000 0.010000 0.640000 ( 0.650870)
Hash#[] 0.560000 0.020000 0.580000 ( 0.570682)
Marshal#dump and Markshal#load 1.320000 0.020000 1.340000 ( 1.343246)
--------------------------------------------------------- total: 2.560000sec
user system total real
Hash#dup 0.620000 0.010000 0.630000 ( 0.628753)
Hash#[] 0.530000 0.010000 0.540000 ( 0.548167)
Marshal#dump and Markshal#load 1.250000 0.020000 1.270000 ( 1.268663)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.550000 0.030000 0.580000 ( 0.580127)
Hash#[] 0.420000 0.020000 0.440000 ( 0.444686)
Marshal#dump and Markshal#load 1.230000 0.050000 1.280000 ( 1.271945)
--------------------------------------------------------- total: 2.300000sec
user system total real
Hash#dup 0.550000 0.030000 0.580000 ( 0.576024)
Hash#[] 0.420000 0.020000 0.440000 ( 0.445109)
Marshal#dump and Markshal#load 1.220000 0.050000 1.270000 ( 1.266542)
2 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.680000 0.080000 0.760000 ( 0.758334)
Hash#[] 0.570000 0.060000 0.630000 ( 0.624032)
Marshal#dump and Markshal#load 1.010000 0.060000 1.070000 ( 1.071950)
--------------------------------------------------------- total: 2.460000sec
user system total real
Hash#dup 0.670000 0.070000 0.740000 ( 0.736544)
Hash#[] 0.580000 0.060000 0.640000 ( 0.649803)
Marshal#dump and Markshal#load 1.060000 0.060000 1.120000 ( 1.121195)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.600000 0.010000 0.610000 ( 0.610093)
Hash#[] 0.520000 0.000000 0.520000 ( 0.514073)
Marshal#dump and Markshal#load 1.300000 0.000000 1.300000 ( 1.309881)
--------------------------------------------------------- total: 2.430000sec
user system total real
Hash#dup 0.620000 0.000000 0.620000 ( 0.625297)
Hash#[] 0.540000 0.000000 0.540000 ( 0.541126)
Marshal#dump and Markshal#load 1.220000 0.010000 1.230000 ( 1.218019)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.640000 0.010000 0.650000 ( 0.657562)
Hash#[] 0.550000 0.010000 0.560000 ( 0.566157)
Marshal#dump and Markshal#load 1.370000 0.020000 1.390000 ( 1.387560)
--------------------------------------------------------- total: 2.600000sec
user system total real
Hash#dup 0.800000 0.020000 0.820000 ( 0.819766)
Hash#[] 0.540000 0.010000 0.550000 ( 0.545969)
Marshal#dump and Markshal#load 1.300000 0.020000 1.320000 ( 1.318892)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.540000 0.030000 0.570000 ( 0.576066)
Hash#[] 0.480000 0.020000 0.500000 ( 0.514435)
Marshal#dump and Markshal#load 1.280000 0.040000 1.320000 ( 1.312040)
--------------------------------------------------------- total: 2.390000sec
user system total real
Hash#dup 0.590000 0.030000 0.620000 ( 0.607084)
Hash#[] 0.430000 0.020000 0.450000 ( 0.451049)
Marshal#dump and Markshal#load 1.240000 0.040000 1.280000 ( 1.277814)
3 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.080000 0.740000 ( 0.737276)
Hash#[] 0.580000 0.060000 0.640000 ( 0.639665)
Marshal#dump and Markshal#load 1.020000 0.060000 1.080000 ( 1.080547)
--------------------------------------------------------- total: 2.460000sec
user system total real
Hash#dup 0.650000 0.060000 0.710000 ( 0.713536)
Hash#[] 0.680000 0.070000 0.750000 ( 0.745957)
Marshal#dump and Markshal#load 1.100000 0.060000 1.160000 ( 1.154757)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.010000 0.670000 ( 0.664093)
Hash#[] 0.600000 0.000000 0.600000 ( 0.606202)
Marshal#dump and Markshal#load 1.210000 0.000000 1.210000 ( 1.215187)
--------------------------------------------------------- total: 2.480000sec
user system total real
Hash#dup 0.610000 0.000000 0.610000 ( 0.612437)
Hash#[] 0.510000 0.000000 0.510000 ( 0.509631)
Marshal#dump and Markshal#load 1.180000 0.010000 1.190000 ( 1.188626)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.630000 0.010000 0.640000 ( 0.645609)
Hash#[] 0.530000 0.010000 0.540000 ( 0.549883)
Marshal#dump and Markshal#load 1.270000 0.020000 1.290000 ( 1.283085)
--------------------------------------------------------- total: 2.470000sec
user system total real
Hash#dup 0.620000 0.020000 0.640000 ( 0.633545)
Hash#[] 0.550000 0.010000 0.560000 ( 0.560563)
Marshal#dump and Markshal#load 1.290000 0.020000 1.310000 ( 1.309957)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.570000 0.030000 0.600000 ( 0.602406)
Hash#[] 0.440000 0.020000 0.460000 ( 0.463543)
Marshal#dump and Markshal#load 1.210000 0.040000 1.250000 ( 1.247611)
--------------------------------------------------------- total: 2.310000sec
user system total real
Hash#dup 0.550000 0.030000 0.580000 ( 0.579189)
Hash#[] 0.420000 0.020000 0.440000 ( 0.438066)
Marshal#dump and Markshal#load 1.210000 0.040000 1.250000 ( 1.257569)
4 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.650000 0.070000 0.720000 ( 0.714861)
Hash#[] 0.580000 0.060000 0.640000 ( 0.641332)
Marshal#dump and Markshal#load 1.020000 0.060000 1.080000 ( 1.077968)
--------------------------------------------------------- total: 2.440000sec
user system total real
Hash#dup 0.660000 0.060000 0.720000 ( 0.727918)
Hash#[] 0.590000 0.050000 0.640000 ( 0.647448)
Marshal#dump and Markshal#load 1.020000 0.050000 1.070000 ( 1.083708)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.580000 0.010000 0.590000 ( 0.579480)
Hash#[] 0.490000 0.000000 0.490000 ( 0.494392)
Marshal#dump and Markshal#load 1.160000 0.000000 1.160000 ( 1.164025)
--------------------------------------------------------- total: 2.240000sec
user system total real
Hash#dup 0.600000 0.000000 0.600000 ( 0.600392)
Hash#[] 0.510000 0.000000 0.510000 ( 0.517759)
Marshal#dump and Markshal#load 1.170000 0.000000 1.170000 ( 1.169549)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.620000 0.010000 0.630000 ( 0.641780)
Hash#[] 0.540000 0.010000 0.550000 ( 0.556858)
Marshal#dump and Markshal#load 1.330000 0.020000 1.350000 ( 1.340993)
--------------------------------------------------------- total: 2.530000sec
user system total real
Hash#dup 0.640000 0.020000 0.660000 ( 0.649642)
Hash#[] 0.520000 0.010000 0.530000 ( 0.534291)
Marshal#dump and Markshal#load 1.250000 0.010000 1.260000 ( 1.263958)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.530000 0.020000 0.550000 ( 0.556504)
Hash#[] 0.430000 0.030000 0.460000 ( 0.462678)
Marshal#dump and Markshal#load 1.200000 0.040000 1.240000 ( 1.234779)
--------------------------------------------------------- total: 2.250000sec
user system total real
Hash#dup 0.540000 0.020000 0.560000 ( 0.557686)
Hash#[] 0.480000 0.030000 0.510000 ( 0.498896)
Marshal#dump and Markshal#load 1.320000 0.040000 1.360000 ( 1.354119)
5 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.680000 0.090000 0.770000 ( 0.754525)
Hash#[] 0.610000 0.060000 0.670000 ( 0.684249)
Marshal#dump and Markshal#load 1.040000 0.060000 1.100000 ( 1.096650)
--------------------------------------------------------- total: 2.540000sec
user system total real
Hash#dup 0.640000 0.060000 0.700000 ( 0.705488)
Hash#[] 0.590000 0.060000 0.650000 ( 0.650876)
Marshal#dump and Markshal#load 1.010000 0.060000 1.070000 ( 1.075045)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.580000 0.010000 0.590000 ( 0.590122)
Hash#[] 0.510000 0.000000 0.510000 ( 0.510892)
Marshal#dump and Markshal#load 1.170000 0.000000 1.170000 ( 1.167657)
--------------------------------------------------------- total: 2.270000sec
user system total real
Hash#dup 0.640000 0.000000 0.640000 ( 0.647678)
Hash#[] 0.540000 0.000000 0.540000 ( 0.531637)
Marshal#dump and Markshal#load 1.250000 0.010000 1.260000 ( 1.257712)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.670000 0.010000 0.680000 ( 0.689623)
Hash#[] 0.550000 0.020000 0.570000 ( 0.561771)
Marshal#dump and Markshal#load 1.340000 0.020000 1.360000 ( 1.367409)
--------------------------------------------------------- total: 2.610000sec
user system total real
Hash#dup 0.640000 0.010000 0.650000 ( 0.662517)
Hash#[] 0.530000 0.010000 0.540000 ( 0.547099)
Marshal#dump and Markshal#load 1.320000 0.020000 1.340000 ( 1.342391)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.530000 0.030000 0.560000 ( 0.559761)
Hash#[] 0.450000 0.020000 0.470000 ( 0.476867)
Marshal#dump and Markshal#load 1.290000 0.040000 1.330000 ( 1.334202)
--------------------------------------------------------- total: 2.360000sec
user system total real
Hash#dup 0.610000 0.030000 0.640000 ( 0.648645)
Hash#[] 0.450000 0.030000 0.480000 ( 0.468519)
Marshal#dump and Markshal#load 1.210000 0.040000 1.250000 ( 1.261307)
6 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.650000 0.080000 0.730000 ( 0.724522)
Hash#[] 0.590000 0.060000 0.650000 ( 0.647856)
Marshal#dump and Markshal#load 1.030000 0.050000 1.080000 ( 1.089944)
--------------------------------------------------------- total: 2.460000sec
user system total real
Hash#dup 0.650000 0.060000 0.710000 ( 0.711137)
Hash#[] 0.570000 0.060000 0.630000 ( 0.627944)
Marshal#dump and Markshal#load 1.060000 0.060000 1.120000 ( 1.118553)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.580000 0.010000 0.590000 ( 0.584097)
Hash#[] 0.500000 0.000000 0.500000 ( 0.505008)
Marshal#dump and Markshal#load 1.190000 0.000000 1.190000 ( 1.185764)
--------------------------------------------------------- total: 2.280000sec
user system total real
Hash#dup 0.600000 0.000000 0.600000 ( 0.596504)
Hash#[] 0.550000 0.000000 0.550000 ( 0.558812)
Marshal#dump and Markshal#load 1.200000 0.010000 1.210000 ( 1.201347)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.630000 0.020000 0.650000 ( 0.653327)
Hash#[] 0.580000 0.010000 0.590000 ( 0.597951)
Marshal#dump and Markshal#load 1.280000 0.020000 1.300000 ( 1.298842)
--------------------------------------------------------- total: 2.540000sec
user system total real
Hash#dup 0.630000 0.010000 0.640000 ( 0.645761)
Hash#[] 0.530000 0.020000 0.550000 ( 0.543414)
Marshal#dump and Markshal#load 1.290000 0.010000 1.300000 ( 1.303788)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.560000 0.030000 0.590000 ( 0.597195)
Hash#[] 0.430000 0.020000 0.450000 ( 0.461331)
Marshal#dump and Markshal#load 1.200000 0.040000 1.240000 ( 1.245033)
--------------------------------------------------------- total: 2.280000sec
user system total real
Hash#dup 0.540000 0.030000 0.570000 ( 0.569226)
Hash#[] 0.420000 0.030000 0.450000 ( 0.441824)
Marshal#dump and Markshal#load 1.210000 0.040000 1.250000 ( 1.253262)
7 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.650000 0.080000 0.730000 ( 0.723260)
Hash#[] 0.590000 0.060000 0.650000 ( 0.651686)
Marshal#dump and Markshal#load 1.030000 0.050000 1.080000 ( 1.085173)
--------------------------------------------------------- total: 2.460000sec
user system total real
Hash#dup 0.630000 0.060000 0.690000 ( 0.696004)
Hash#[] 0.570000 0.060000 0.630000 ( 0.629045)
Marshal#dump and Markshal#load 1.020000 0.050000 1.070000 ( 1.072315)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.580000 0.010000 0.590000 ( 0.583569)
Hash#[] 0.500000 0.000000 0.500000 ( 0.497534)
Marshal#dump and Markshal#load 1.170000 0.000000 1.170000 ( 1.169937)
--------------------------------------------------------- total: 2.260000sec
user system total real
Hash#dup 0.600000 0.000000 0.600000 ( 0.598889)
Hash#[] 0.500000 0.000000 0.500000 ( 0.500828)
Marshal#dump and Markshal#load 1.170000 0.000000 1.170000 ( 1.170834)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.010000 0.670000 ( 0.686220)
Hash#[] 0.570000 0.020000 0.590000 ( 0.577891)
Marshal#dump and Markshal#load 1.350000 0.020000 1.370000 ( 1.378694)
--------------------------------------------------------- total: 2.630000sec
user system total real
Hash#dup 0.670000 0.020000 0.690000 ( 0.690536)
Hash#[] 0.570000 0.010000 0.580000 ( 0.583724)
Marshal#dump and Markshal#load 1.320000 0.020000 1.340000 ( 1.347690)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.560000 0.030000 0.590000 ( 0.591048)
Hash#[] 0.450000 0.020000 0.470000 ( 0.476076)
Marshal#dump and Markshal#load 1.320000 0.050000 1.370000 ( 1.375444)
--------------------------------------------------------- total: 2.430000sec
user system total real
Hash#dup 0.620000 0.030000 0.650000 ( 0.652378)
Hash#[] 0.420000 0.020000 0.440000 ( 0.438861)
Marshal#dump and Markshal#load 1.250000 0.040000 1.290000 ( 1.296928)
8 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.710000 0.080000 0.790000 ( 0.788141)
Hash#[] 0.620000 0.070000 0.690000 ( 0.687562)
Marshal#dump and Markshal#load 1.030000 0.060000 1.090000 ( 1.089807)
--------------------------------------------------------- total: 2.570000sec
user system total real
Hash#dup 0.690000 0.070000 0.760000 ( 0.746891)
Hash#[] 0.620000 0.060000 0.680000 ( 0.677953)
Marshal#dump and Markshal#load 1.050000 0.060000 1.110000 ( 1.100252)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.010000 0.670000 ( 0.664399)
Hash#[] 0.540000 0.000000 0.540000 ( 0.548963)
Marshal#dump and Markshal#load 1.190000 0.000000 1.190000 ( 1.185349)
--------------------------------------------------------- total: 2.400000sec
user system total real
Hash#dup 0.580000 0.000000 0.580000 ( 0.588587)
Hash#[] 0.510000 0.000000 0.510000 ( 0.504488)
Marshal#dump and Markshal#load 1.170000 0.010000 1.180000 ( 1.175884)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.010000 0.670000 ( 0.677631)
Hash#[] 0.610000 0.020000 0.630000 ( 0.622494)
Marshal#dump and Markshal#load 1.300000 0.020000 1.320000 ( 1.328885)
--------------------------------------------------------- total: 2.620000sec
user system total real
Hash#dup 0.630000 0.010000 0.640000 ( 0.644585)
Hash#[] 0.540000 0.020000 0.560000 ( 0.557325)
Marshal#dump and Markshal#load 1.270000 0.010000 1.280000 ( 1.278605)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.600000 0.030000 0.630000 ( 0.627560)
Hash#[] 0.440000 0.020000 0.460000 ( 0.465796)
Marshal#dump and Markshal#load 1.250000 0.040000 1.290000 ( 1.288190)
--------------------------------------------------------- total: 2.380000sec
user system total real
Hash#dup 0.550000 0.020000 0.570000 ( 0.572702)
Hash#[] 0.460000 0.020000 0.480000 ( 0.485700)
Marshal#dump and Markshal#load 1.270000 0.040000 1.310000 ( 1.313738)
9 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.080000 0.740000 ( 0.730862)
Hash#[] 0.570000 0.060000 0.630000 ( 0.628816)
Marshal#dump and Markshal#load 1.030000 0.060000 1.090000 ( 1.102531)
--------------------------------------------------------- total: 2.460000sec
user system total real
Hash#dup 0.640000 0.060000 0.700000 ( 0.706221)
Hash#[] 0.560000 0.060000 0.620000 ( 0.623369)
Marshal#dump and Markshal#load 1.010000 0.050000 1.060000 ( 1.063615)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.580000 0.010000 0.590000 ( 0.584218)
Hash#[] 0.500000 0.000000 0.500000 ( 0.498817)
Marshal#dump and Markshal#load 1.230000 0.000000 1.230000 ( 1.238805)
--------------------------------------------------------- total: 2.320000sec
user system total real
Hash#dup 0.580000 0.000000 0.580000 ( 0.579962)
Hash#[] 0.510000 0.000000 0.510000 ( 0.509214)
Marshal#dump and Markshal#load 1.280000 0.000000 1.280000 ( 1.280836)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.650000 0.010000 0.660000 ( 0.671738)
Hash#[] 0.610000 0.020000 0.630000 ( 0.625665)
Marshal#dump and Markshal#load 1.280000 0.020000 1.300000 ( 1.307212)
--------------------------------------------------------- total: 2.590000sec
user system total real
Hash#dup 0.630000 0.020000 0.650000 ( 0.639954)
Hash#[] 0.570000 0.010000 0.580000 ( 0.580897)
Marshal#dump and Markshal#load 1.260000 0.020000 1.280000 ( 1.280575)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.570000 0.020000 0.590000 ( 0.596239)
Hash#[] 0.410000 0.030000 0.440000 ( 0.441060)
Marshal#dump and Markshal#load 1.230000 0.040000 1.270000 ( 1.270814)
--------------------------------------------------------- total: 2.300000sec
user system total real
Hash#dup 0.540000 0.030000 0.570000 ( 0.563869)
Hash#[] 0.440000 0.020000 0.460000 ( 0.457845)
Marshal#dump and Markshal#load 1.220000 0.040000 1.260000 ( 1.257053)
10 Run
1.8.7
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.080000 0.740000 ( 0.726997)
Hash#[] 0.560000 0.060000 0.620000 ( 0.626470)
Marshal#dump and Markshal#load 1.000000 0.050000 1.050000 ( 1.055093)
--------------------------------------------------------- total: 2.410000sec
user system total real
Hash#dup 0.620000 0.050000 0.670000 ( 0.680028)
Hash#[] 0.570000 0.060000 0.630000 ( 0.628912)
Marshal#dump and Markshal#load 1.010000 0.060000 1.070000 ( 1.066958)
1.9.2
Rehearsal ------------------------------------------------------------------
Hash#dup 0.600000 0.010000 0.610000 ( 0.602959)
Hash#[] 0.490000 0.000000 0.490000 ( 0.487989)
Marshal#dump and Markshal#load 1.150000 0.000000 1.150000 ( 1.157308)
--------------------------------------------------------- total: 2.250000sec
user system total real
Hash#dup 0.590000 0.000000 0.590000 ( 0.588780)
Hash#[] 0.510000 0.000000 0.510000 ( 0.512949)
Marshal#dump and Markshal#load 1.160000 0.000000 1.160000 ( 1.168901)
1.9.3
Rehearsal ------------------------------------------------------------------
Hash#dup 0.660000 0.010000 0.670000 ( 0.681392)
Hash#[] 0.570000 0.020000 0.590000 ( 0.588236)
Marshal#dump and Markshal#load 1.260000 0.020000 1.280000 ( 1.276774)
--------------------------------------------------------- total: 2.540000sec
user system total real
Hash#dup 0.640000 0.010000 0.650000 ( 0.648792)
Hash#[] 0.540000 0.010000 0.550000 ( 0.547864)
Marshal#dump and Markshal#load 1.260000 0.020000 1.280000 ( 1.281328)
2.0.0
Rehearsal ------------------------------------------------------------------
Hash#dup 0.550000 0.030000 0.580000 ( 0.578762)
Hash#[] 0.420000 0.020000 0.440000 ( 0.441427)
Marshal#dump and Markshal#load 1.210000 0.040000 1.250000 ( 1.250886)
--------------------------------------------------------- total: 2.270000sec
user system total real
Hash#dup 0.560000 0.030000 0.590000 ( 0.579946)
Hash#[] 0.410000 0.020000 0.430000 ( 0.432355)
Marshal#dump and Markshal#load 1.210000 0.050000 1.260000 ( 1.261264)
for i in {1..10}
do
echo "\n\n$i Run"
for r in ree-1.8.7-2011.03 1.9.2-p290 1.9.3-p429 2.0.0-p247;
do
rbenv local $r; ruby benchmark.rb;
done
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment