Sha256: 861ed65fd01a2b5620f65ee28e149a0069da126e2b76df0d126b0045699437d8

Contents?: true

Size: 570 Bytes

Versions: 53

Compression:

Stored size: 570 Bytes

Contents

require 'benchmark'
$LOAD_PATH << File.dirname(__FILE__) + '/../lib'

def time_in_fork(&block)
  read, write = IO.pipe
  Process.fork do
    write.puts Benchmark.realtime{ block.call }
  end
  Process.wait
  write.close
  read.read.tap do
    read.close
  end
end

class Array
  def avg
    map(&:to_f).inject(:+) / size
  end
end

def report(label, n = 10, &block)
  puts label
  puts "%.4f" % n.times.map{ time_in_fork &block }.avg
  puts
end

N = 10

report("require fog:", N)             { require 'fog' }
report("require fog/aws:", N)         { require 'fog/aws' }

Version data entries

53 entries across 53 versions & 4 rubygems

Version Path
fog-maestrodev-1.19.0.20140212012611 benchs/load_times.rb
fog-maestrodev-1.19.0.20140110004459 benchs/load_times.rb
fog-maestrodev-1.19.0.20140110003812 benchs/load_times.rb
fog-maestrodev-1.19.0.20140109202555 benchs/load_times.rb
fog-maestrodev-1.19.0.20140107192102 benchs/load_times.rb
fog-maestrodev-1.19.0.20140107142106 benchs/load_times.rb
fog-maestrodev-1.19.0.20131219203941 benchs/load_times.rb
fog-maestrodev-1.18.0.20131219193542 benchs/load_times.rb
fog-1.19.0 benchs/load_times.rb
fog-maestrodev-1.18.0.20131219033443 benchs/load_times.rb
fog-maestrodev-1.18.0.20131219032002 benchs/load_times.rb
fog-maestrodev-1.18.0.20131219030716 benchs/load_times.rb
fog-maestrodev-1.18.0.20131219022322 benchs/load_times.rb
fog-maestrodev-1.18.0.20131218202447 benchs/load_times.rb
fog-maestrodev-1.18.0.20131209091424 benchs/load_times.rb
fog-maestrodev-1.18.0.20131209090811 benchs/load_times.rb
fog-maestrodev-1.18.0.20131206115947 benchs/load_times.rb
fog-maestrodev-1.18.0.20131205181604 benchs/load_times.rb
fog-maestrodev-1.18.0.20131127194823 benchs/load_times.rb
fog-maestrodev-1.18.0.20131126183714 benchs/load_times.rb