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/
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/hot-patching-inlined-functions-with-x86_64-asm-metaprogramming/
http://timetobleed.com/string-together-global-offset-tables-to-build-a-ruby-memory-profiler/
Questions, comments, and patches welcome!
joe