diff --git a/ChangeLog b/ChangeLog index 509251f69c1e30..5604f4381aac33 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Thu Sep 27 16:01:53 2007 Koichi Sasada + + * benchmark/driver.rb: fix to output some helpful messages. + Thu Sep 27 15:44:51 2007 Koichi Sasada * benchmark/driver.rb: added. diff --git a/benchmark/bmx_temp.rb b/benchmark/bmx_temp.rb index 2b780927931cb9..e69de29bb2d1d6 100644 --- a/benchmark/bmx_temp.rb +++ b/benchmark/bmx_temp.rb @@ -1,5 +0,0 @@ -str = '*' * 1_000_000 - -1.times{ - str.split('*').size -} diff --git a/benchmark/driver.rb b/benchmark/driver.rb index 7837e8b728a459..ff214619e61ae5 100644 --- a/benchmark/driver.rb +++ b/benchmark/driver.rb @@ -38,7 +38,8 @@ def initialize execs, dir, opt = {} @results = [] if @verbose - puts Time.now + @start_time = Time.now + puts @start_time @execs.each_with_index{|(e, v), i| puts "target #{i}: #{v}" } @@ -46,17 +47,23 @@ def initialize execs, dir, opt = {} end def show_results + puts if @verbose puts '-----------------------------------------------------------' puts 'raw data:' pp @results + + puts + puts "Elapesed time: #{Time.now - @start_time} (sec)" end puts '-----------------------------------------------------------' puts 'benchmark results:' + if @verbose and @repeat > 1 puts "minimum results in each #{@repeat} measurements." end + puts "name\t#{@execs.map{|(e, v)| v}.join("\t")}" @results.each{|v, result| rets = [] @@ -104,6 +111,7 @@ def measure_file file load prepare_file if FileTest.exist?(prepare_file) if @verbose + puts puts '-----------------------------------------------------------' puts name puts File.read(file) @@ -113,8 +121,16 @@ def measure_file file result = [name] result << @execs.map{|(e, v)| (0...@repeat).map{ - print "#{v}\t" if @verbose - STDOUT.flush + if @verbose + print "#{v}\t" + STDOUT.flush + end + + if !@verbose || !STDOUT.tty? + STDERR.print '.' + STDERR.flush + end + m = measure e, file puts "#{m}" if @verbose m @@ -125,8 +141,10 @@ def measure_file file end def measure executable, file + + cmd = "#{executable} #{file}" m = Benchmark.measure{ - `#{executable} #{file}` + `#{cmd}` } if $? != 0