A Ruby gem for memory profiling
Switch branches/tags
Nothing to show
Pull request Compare This branch is 279 commits behind ice799:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ext
spec
.gitignore
README
memprof.gemspec

README

memprof (c) Joe Damato  @joedamato   http://timetobleed.com

What is memprof?
================
Memprof is a memory profiler for Ruby that requires no patches to the Ruby VM.
It can help you find Ruby level memory leaks in your application.

Required to install
===================
If you are using the Linux version, you need to install libelf:

apt-get install libelfg0-dev

The experimental OSX version needs no additional libraries.

How to use
==========

require 'memprof'
Memprof.start

# ruby code

Memprof.stats

# more ruby code

Memprof.stats
Memprof.stop


The above code will output 2 summaries, allowing you to compare which objects were
destroyed and which are still around.

Memprof.stats also takes an (optional) file name to write the output to a file.

Supported systems
=================
This only works on unstripped binaries.

Currently supporting:

  Linux:
    x86_64 builds of Ruby Enterprise Edition 1.8.6/1.8.7
    x86_64 builds of MRI Ruby (enabled-shared and disable-shared)

Experimental (somewhat broken) support:

  Linux:
    i386/i686 support.

  Snow Leopard:
    x86_64 builds of MRI (both enable-shared and disable-shared)
    OSX system Ruby, distributed with Snow Leopard

Coming soon:

  Official support for Snow Leopard.

  Linux:
    Tracking object allocationns in C extensions.

CREDITS
=======
Jake Douglas for the Mach O/snow leopard support.

Aman Gupta for various bug fixes and other cleanup.