# Zenprofile 1.0.2 Released

**URL:** <https://www.ruby-forum.com/t/zenprofile-1-0-2-released/168383>\
**Category:** Ruby\
**Created:** [May 20, 2009, 9:06am UTC](https://www.ruby-forum.com/t/zenprofile-1-0-2-released/168383 "2009-05-20T09:06:41Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [May 20, 2009, 9:06am UTC](https://www.ruby-forum.com/t/zenprofile-1-0-2-released/168383/1 "2009-05-20T09:06:41Z")

</div>

zenprofile version 1.0.2 has been released!

- [http://rubyforge.org/projects/seattlerb](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

- [http://rubyforge.org/projects/seattlerb](http://rubyforge.org/projects/seattlerb)
