aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/testing
diff options
context:
space:
mode:
authorGonçalo Silva <goncalossilva@gmail.com>2011-03-28 01:32:56 +0100
committerGonçalo Silva <goncalossilva@gmail.com>2011-03-28 01:32:56 +0100
commite6cb3962bb51aa1f91487117b99e660cc2c43e37 (patch)
treeeb470665aa4fa677ef85b27e98b831d233c8746a /activesupport/lib/active_support/testing
parente17f60879782b3b0d8a4bc2444e1d024c65ec59e (diff)
downloadrails-e6cb3962bb51aa1f91487117b99e660cc2c43e37.tar.gz
rails-e6cb3962bb51aa1f91487117b99e660cc2c43e37.tar.bz2
rails-e6cb3962bb51aa1f91487117b99e660cc2c43e37.zip
benchmarking metrics are also implementation-specific
Diffstat (limited to 'activesupport/lib/active_support/testing')
-rw-r--r--activesupport/lib/active_support/testing/performance/jruby.rb16
-rw-r--r--activesupport/lib/active_support/testing/performance/rubinius.rb4
-rw-r--r--activesupport/lib/active_support/testing/performance/ruby.rb4
3 files changed, 20 insertions, 4 deletions
diff --git a/activesupport/lib/active_support/testing/performance/jruby.rb b/activesupport/lib/active_support/testing/performance/jruby.rb
index 5985e942f1..51c716ef4a 100644
--- a/activesupport/lib/active_support/testing/performance/jruby.rb
+++ b/activesupport/lib/active_support/testing/performance/jruby.rb
@@ -1,9 +1,21 @@
+require 'jruby/profiler'
+require 'java'
+import java.lang.management.ManagementFactory
+
module ActiveSupport
module Testing
- module Performance
+ module Performance
+ if ARGV.include?('--benchmark')
+ DEFAULTS.merge!({:metrics => [:wall_time, :user_time, :memory, :gc_runs, :gc_time, :ola]})
+ else
+ DEFAULTS.merge!(
+ { :metrics => [:wall_time],
+ :formats => [:flat, :graph] })
+ end
+
protected
def run_gc
- GC.start
+ ManagementFactory.memory_mx_bean.gc
end
class Performer; end
diff --git a/activesupport/lib/active_support/testing/performance/rubinius.rb b/activesupport/lib/active_support/testing/performance/rubinius.rb
index 67d21e2a43..bdbb530b37 100644
--- a/activesupport/lib/active_support/testing/performance/rubinius.rb
+++ b/activesupport/lib/active_support/testing/performance/rubinius.rb
@@ -3,7 +3,9 @@ require 'rubinius/agent'
module ActiveSupport
module Testing
module Performance
- if !ARGV.include?('--benchmark')
+ if ARGV.include?('--benchmark')
+ DEFAULTS.merge!({:metrics => [:wall_time, :memory, :objects, :gc_runs, :gc_time]})
+ else
DEFAULTS.merge!(
{ :metrics => [:wall_time],
:formats => [:flat, :graph] })
diff --git a/activesupport/lib/active_support/testing/performance/ruby.rb b/activesupport/lib/active_support/testing/performance/ruby.rb
index dc77f22ba2..b36b201531 100644
--- a/activesupport/lib/active_support/testing/performance/ruby.rb
+++ b/activesupport/lib/active_support/testing/performance/ruby.rb
@@ -8,7 +8,9 @@ end
module ActiveSupport
module Testing
module Performance
- if !ARGV.include?('--benchmark')
+ if ARGV.include?('--benchmark')
+ DEFAULTS.merge!({:metrics => [:wall_time, :memory, :objects, :gc_runs, :gc_time]})
+ else
DEFAULTS.merge!(
{ :min_percent => 0.01,
:metrics => [:process_time, :memory, :objects],