blob: 86e650050bc45cb3e9ff69b73f38584f6e45c8b4 (
plain) (
tree)
|
|
module ActiveSupport
module Testing
module Performance
module Metrics
class Base
protected
# Ruby 1.8 + ruby-prof wrapper (enable/disable stats for Benchmarker)
if GC.respond_to?(:enable_stats)
def with_gc_stats
GC.enable_stats
GC.start
yield
ensure
GC.disable_stats
end
end
end
class Memory < DigitalInformationUnit
# Ruby 1.8 + ruby-prof wrapper
if RubyProf.respond_to?(:measure_memory)
def measure
RubyProf.measure_memory
end
end
end
class Objects < Amount
# Ruby 1.8 + ruby-prof wrapper
if RubyProf.respond_to?(:measure_allocations)
def measure
RubyProf.measure_allocations
end
end
end
class GcRuns < Amount
# Ruby 1.8 + ruby-prof wrapper
if RubyProf.respond_to?(:measure_gc_runs)
def measure
RubyProf.measure_gc_runs
end
end
end
class GcTime < Time
# Ruby 1.8 + ruby-prof wrapper
if RubyProf.respond_to?(:measure_gc_time)
def measure
RubyProf.measure_gc_time / 1000.0 / 1000.0
end
end
end
end
end
end
end
|