require 'rubygems'
libraries = ['open-uri', 'rack', 'rest_client', 'activerecord', 'activesupport', 'heroku', 'net/http']
libraries = [libraries[2]]
first_time = {}
later_time = {}
def time_it(&block)
t = Time.now
block.call
Time.now - t
end
libraries.each do |lib|
time = time_it do
require lib
end
first_time[lib] = time
n = 1000
time = time_it do
n.times { require lib }
end
time = time / n.to_f
later_time[lib] = time
end
libraries.each do |lib|
puts "#{lib}: initial: #{first_time[lib]}, subsequent: #{(first_time[lib]/later_time[lib]).round}x"
end