diff --git a/ChangeLog b/ChangeLog index 6ed66c2a86..58fd2da365 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +Thu Jun 20 15:14:00 2013 Koichi Sasada + + * benchmark/gc: create a directory to store GC related benchmark. + + * benchmark/gc/gcbench.rb: moved from tool/gcbench.rb. + + * benchmark/gc/hash(1|2).rb: ditto. + + * benchmark/gc/rdoc.rb: ditto. + + * benchmark/gc/null.rb: added. + + * common.mk: fix rule. + Thu Jun 20 14:09:54 2013 Koichi Sasada * tool/hashbench1.rb: fix paramter too. Increase temporary objects. diff --git a/tool/gcbench.rb b/benchmark/gc/gcbench.rb similarity index 67% rename from tool/gcbench.rb rename to benchmark/gc/gcbench.rb index ca9f3cd950..5fee2a2bce 100644 --- a/tool/gcbench.rb +++ b/benchmark/gc/gcbench.rb @@ -2,7 +2,11 @@ require 'benchmark' require 'pp' -script = ARGV.shift || raise +script = File.join(__dir__, ARGV.shift) +script += '.rb' unless FileTest.exist?(script) +raise "#{script} not found" unless FileTest.exist?(script) + +puts "Script: #{script}" GC::Profiler.enable tms = Benchmark.measure{|x| @@ -14,6 +18,7 @@ pp GC.stat gc_time = GC::Profiler.total_time puts +puts script puts Benchmark::CAPTION puts tms puts "GC total time (sec): #{gc_time}" diff --git a/tool/hashbench1.rb b/benchmark/gc/hash1.rb similarity index 100% rename from tool/hashbench1.rb rename to benchmark/gc/hash1.rb diff --git a/tool/hashbench2.rb b/benchmark/gc/hash2.rb similarity index 100% rename from tool/hashbench2.rb rename to benchmark/gc/hash2.rb diff --git a/benchmark/gc/null.rb b/benchmark/gc/null.rb new file mode 100644 index 0000000000..31c18878b5 --- /dev/null +++ b/benchmark/gc/null.rb @@ -0,0 +1 @@ +# null diff --git a/benchmark/gc/rdoc.rb b/benchmark/gc/rdoc.rb new file mode 100644 index 0000000000..14c89f5611 --- /dev/null +++ b/benchmark/gc/rdoc.rb @@ -0,0 +1,13 @@ +require 'rdoc/rdoc' +require 'tmpdir' + +srcdir = File.expand_path('../..', __dir__) + +Dir.mktmpdir('rdocbench-'){|d| + dir = File.join(d, 'rdocbench') + args = %W(--root #{srcdir} --page-dir #{srcdir}/doc --encoding=UTF-8 --no-force-update --all --ri --debug --quiet #{srcdir}) + args << '--op' << dir + + r = RDoc::RDoc.new + r.document args +} diff --git a/common.mk b/common.mk index 83e6ce7599..88043575d0 100644 --- a/common.mk +++ b/common.mk @@ -426,19 +426,13 @@ rdoc-coverage: PHONY main RDOCBENCHOUT=/tmp/rdocbench +GCBENCH_ITEM=null + +gcbench: PHONY + $(Q) $(XRUBY) "$(srcdir)/benchmark/gc/gcbench.rb" $(GCBENCH_ITEM) + gcbench-rdoc: PHONY - @echo Benchmark with Generating RDoc documentation - $(Q) $(XRUBY) "$(srcdir)/tool/gcbench.rb" "$(srcdir)/tool/rdocbench.rb" --root "$(srcdir)" --page-dir "$(srcdir)/doc" --encoding=UTF-8 --no-force-update --all --ri --debug $(RDOCFLAGS) --quiet "$(srcdir)" - -gcbench-hash1: PHONY - @echo "Benchmark with hashbench1 (many temporal objects / obj count intensive)" - $(Q) $(XRUBY) "$(srcdir)/tool/gcbench.rb" "$(srcdir)/tool/hashbench1.rb" - -gcbench-hash2: PHONY - @echo "Benchmark with hashbench2 (increasing hash size / malloc intensive)" - $(Q) $(XRUBY) "$(srcdir)/tool/gcbench.rb" "$(srcdir)/tool/hashbench2.rb" - -gcbench-hash: PHONY gcbench-hash1 gcbench-hash2 + $(Q) $(XRUBY) "$(srcdir)/benchmark/gc/gcbench.rb" rdoc nodoc: PHONY diff --git a/tool/rdocbench.rb b/tool/rdocbench.rb deleted file mode 100644 index a248b9a9b7..0000000000 --- a/tool/rdocbench.rb +++ /dev/null @@ -1,11 +0,0 @@ -require 'rdoc/rdoc' -require 'tmpdir' - -Dir.mktmpdir('rdocbench-'){|d| - dir = File.join(d, 'rdocbench') - args = ARGV.dup - args << '--op' << dir - - r = RDoc::RDoc.new - r.document args -}