# Announcing memprof: a ruby level memory profiler

**URL:** <https://www.ruby-forum.com/t/announcing-memprof-a-ruby-level-memory-profiler/182271>\
**Category:** Ruby\
**Created:** [January 25, 2010, 9:15pm UTC](https://www.ruby-forum.com/t/announcing-memprof-a-ruby-level-memory-profiler/182271 "2010-01-25T21:15:32Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joe\_Damato](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/85f322/32.png) [@Joe\_Damato](https://www.ruby-forum.com/u/Joe_Damato)\
**Post date:** [January 25, 2010, 9:15pm UTC](https://www.ruby-forum.com/t/announcing-memprof-a-ruby-level-memory-profiler/182271/1 "2010-01-25T21:15:32Z")

</div>

Hi -

I’ve been working on a Ruby level memory profiler for Ruby 1.8.6 and  
1.8.7 for a few weeks. This profiler is just a ruby gem (available on  
gemcutter) and can be installed and used with NO PATCHES to the Ruby  
VM. It provides functionality similar to bleakhouse.

The gem ONLY SUPPORTS x86\_64 LINUX builds of MRI 1.8.6/1.8.7 and REE.

You can read about how to use the profiler on my blog:  
[http://timetobleed.com/memprof-a-ruby-level-memory-profiler/](http://timetobleed.com/memprof-a-ruby-level-memory-profiler/)

If you are interested in learning how this works without patching the  
ruby VM, have a look at my blog posts that explain the scary hacks  
needed:  
[http://timetobleed.com/rewrite-your-ruby-vm-at-runtime-to-hot-patch-useful-features/](http://timetobleed.com/rewrite-your-ruby-vm-at-runtime-to-hot-patch-useful-features/)  
[http://timetobleed.com/hot-patching-inlined-functions-with-x86\_64-asm-metaprogramming/](http://timetobleed.com/hot-patching-inlined-functions-with-x86_64-asm-metaprogramming/)  
[http://timetobleed.com/string-together-global-offset-tables-to-build-a-ruby-memory-profiler/](http://timetobleed.com/string-together-global-offset-tables-to-build-a-ruby-memory-profiler/)

Questions, comments, and patches welcome!

joe

---

<div class="post-metadata">

**Author:** ![Joe\_Damato](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/85f322/32.png) [@Joe\_Damato](https://www.ruby-forum.com/u/Joe_Damato)\
**Post date:** [January 25, 2010, 9:29pm UTC](https://www.ruby-forum.com/t/announcing-memprof-a-ruby-level-memory-profiler/182271/2 "2010-01-25T21:29:59Z")

</div>

> The gem ONLY SUPPORTS x86\_64 LINUX builds of MRI 1.8.6/1.8.7 and REE.

Is there more supported platforms planned? (and/or versions?)

---

<div class="post-metadata">

**Author:** ![Joe\_Damato](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/85f322/32.png) [@Joe\_Damato](https://www.ruby-forum.com/u/Joe_Damato)\
**Post date:** [January 25, 2010, 9:41pm UTC](https://www.ruby-forum.com/t/announcing-memprof-a-ruby-level-memory-profiler/182271/3 "2010-01-25T21:41:18Z")

</div>

On Mon, Jan 25, 2010 at 12:30 PM, Roger P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> > The gem ONLY SUPPORTS x86\_64 LINUX builds of MRI 1.8.6/1.8.7 and REE.
> 
> Is there more supported platforms planned? (and/or versions?)

yes, from highest priority to lowest:

1.) ruby 1.9 support  
2.) i386/i686 linux support  
3.) osx support

windows support is not planned, but patches are accepted.

joe
