From 278344b3fab67fcc471f475992a86c3748a83e23 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gon=C3=A7alo=20Silva?= <goncalossilva@gmail.com>
Date: Fri, 25 Mar 2011 19:03:59 +0000
Subject: fixed time and size units (should be seconds / bytes), fixed typo
 when counting memory allocations under rubinius

---
 .../lib/active_support/testing/performance/rubinius.rb      | 13 ++++++-------
 .../lib/active_support/testing/performance/ruby.rb          |  2 +-
 .../lib/active_support/testing/performance/ruby/mri.rb      |  4 ++--
 .../lib/active_support/testing/performance/ruby/yarv.rb     |  2 +-
 4 files changed, 10 insertions(+), 11 deletions(-)

(limited to 'activesupport/lib')

diff --git a/activesupport/lib/active_support/testing/performance/rubinius.rb b/activesupport/lib/active_support/testing/performance/rubinius.rb
index ef4d2bd493..b9c7061571 100644
--- a/activesupport/lib/active_support/testing/performance/rubinius.rb
+++ b/activesupport/lib/active_support/testing/performance/rubinius.rb
@@ -9,19 +9,18 @@ module ActiveSupport
         end
 
       module Metrics        
-        class Base          
+        class Base
+          attr_reader :loopback
+                    
           # TODO
           def profile
             yield
           end
-          
-          def loopback
-            @loopback ||= Rubinius::Agent.loopback
-          end
 
           protected
             # overridden by each implementation
             def with_gc_stats
+              @loopback = Rubinius::Agent.loopback
               GC.run(true)
               yield
             end
@@ -53,7 +52,7 @@ module ActiveSupport
 
         class Objects < Amount
           def measure
-            loopback.get("system.memory.counter.bytes").last
+            loopback.get("system.memory.counter.objects").last
           end
         end
 
@@ -65,7 +64,7 @@ module ActiveSupport
 
         class GcTime < Time
           def measure
-            loopback.get("system.gc.full.wallclock").last + loopback.get("system.gc.young.wallclock").last
+            (loopback.get("system.gc.full.wallclock").last + loopback.get("system.gc.young.wallclock").last) / 1000.0
           end
         end
       end
diff --git a/activesupport/lib/active_support/testing/performance/ruby.rb b/activesupport/lib/active_support/testing/performance/ruby.rb
index f786b85925..892baceeb2 100644
--- a/activesupport/lib/active_support/testing/performance/ruby.rb
+++ b/activesupport/lib/active_support/testing/performance/ruby.rb
@@ -1,7 +1,7 @@
 begin
   require 'ruby-prof'
 rescue LoadError
-  $stderr.puts "Specify ruby-prof as application's dependency in Gemfile to run benchmarks."
+  $stderr.puts 'Specify ruby-prof as application\'s dependency in Gemfile to run benchmarks.'
   exit
 end
 
diff --git a/activesupport/lib/active_support/testing/performance/ruby/mri.rb b/activesupport/lib/active_support/testing/performance/ruby/mri.rb
index d12482b58f..5fa0269b6a 100644
--- a/activesupport/lib/active_support/testing/performance/ruby/mri.rb
+++ b/activesupport/lib/active_support/testing/performance/ruby/mri.rb
@@ -19,7 +19,7 @@ module ActiveSupport
           # Ruby 1.8 + ruby-prof wrapper
           if RubyProf.respond_to?(:measure_memory)
             def measure
-              RubyProf.measure_memory / 1024.0
+              RubyProf.measure_memory
             end
           end
         end
@@ -48,7 +48,7 @@ module ActiveSupport
           # Ruby 1.8 + ruby-prof wrapper
           if RubyProf.respond_to?(:measure_gc_time)
             def measure
-              RubyProf.measure_gc_time / 1000
+              RubyProf.measure_gc_time / 1000.0 / 1000.0
             end
           end
         end
diff --git a/activesupport/lib/active_support/testing/performance/ruby/yarv.rb b/activesupport/lib/active_support/testing/performance/ruby/yarv.rb
index 1e6fa2f289..d226e75d0d 100644
--- a/activesupport/lib/active_support/testing/performance/ruby/yarv.rb
+++ b/activesupport/lib/active_support/testing/performance/ruby/yarv.rb
@@ -20,7 +20,7 @@ module ActiveSupport
             # Ruby 1.9 + GCdata patch
           if GC.respond_to?(:malloc_allocated_size)
             def measure
-              GC.malloc_allocated_size / 1024.0
+              GC.malloc_allocated_size
             end
           end
         end
-- 
cgit v1.2.3