blob: 711d8e11e93d07b25bd41f6a8f6a561f6ce3b9b4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
prelude: |
require "fileutils"
def prepare
num_files = 10000
basename = File.dirname($0)
data_dir = File.join(basename, "bm_require.data")
# skip if all of files exists
if File.exist?(File.join(data_dir, "c#{num_files}.rb"))
return
end
FileUtils.mkdir_p(data_dir)
1.upto(num_files) do |i|
f = File.open("#{data_dir}/c#{i}.rb", "w")
f.puts <<-END
class C#{i}
end
END
end
end
prepare
benchmark:
require: |
$:.push File.join(File.dirname(__FILE__), "bm_require.data")
1.upto(10000) do |i|
require "c#{i}"
end
$:.pop
loop_count: 1
|