RubyGems Navigation menu

zenprofile 1.3.0

zenprofiler helps answer WHAT is being called the most. spy_on helps answer WHERE those calls are being made. ZenProfiler provides a faster version of the standard library ruby profiler. It is otherwise pretty much the same as before. spy_on provides a clean way to redefine a bottleneck method so you can account for and aggregate all the calls to it. % ruby -Ilib bin/zenprofile misc/factorial.rb 50000 Total time = 3.056884 Total time = 2.390000 total self self total % time seconds seconds calls ms/call ms/call name 50.70 1.64 1.64 50000 0.03 0.05 Integer#downto 19.63 2.27 0.63 200000 0.00 0.00 Fixnum#* 14.19 2.73 0.46 50000 0.01 0.05 Factorial#factorial 9.93 3.05 0.32 1 320.36 3047.10 Range#each 5.54 3.23 0.18 2 89.40 178.79 ZenProfiler#start_hook Once you know that Integer#downto takes 50% of the entire run, you can use spy_on to find it. (See misc/factorial.rb for the actual code): % SPY=1 ruby -Ilib misc/factorial.rb 50000 Spying on Integer#downto Integer.downto 50000: total 50000: ./misc/factorial.rb:6:in `factorial' via ./misc/factorial.rb:6:in `factorial'

Versions:

  1. 1.3.2 - April 7, 2012 (13 KB)
  2. 1.3.1 - February 18, 2011 (13 KB)
  3. 1.3.0 - September 2, 2010 (13 KB)
  4. 1.2.0 - August 14, 2009 (10 KB)
  5. 1.1.0 - June 23, 2009 (13 KB)
Show all versions (6 total)

Runtime Dependencies:

Authors:

  • Ryan Davis

Owners:

5a837592409354297424994e8d62f722

Total downloads 8,092

For this version 1,334

Show all versions (6 total)

Required Ruby Version: None

Licenses:

N/A

Gemfile:
gem 'zenprofile', '~> 1.3.0' = Copy to clipboard Copied!

install:
gem install zenprofile -v 1.3.0 = Copy to clipboard Copied!

Links: