Forum: Ruby zenprofile 1.0.2 Released

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
5a837592409354297424994e8d62f722?d=identicon&s=25 Ryan Davis (Guest)
on 2009-05-20 09:06
(Received via mailing list)
zenprofile version 1.0.2 has been released!

* <http://rubyforge.org/projects/seattlerb>

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'

Changes:

### 1.0.0 / 2009-05-20

* 1 major enhancement

   * Birthday!

* <http://rubyforge.org/projects/seattlerb>
This topic is locked and can not be replied to.