Skip to content

dseev/memprof

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 

Repository files navigation

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 if built with --disable-shared

Experimental 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.
    x86_64 builds of MRI Ruby with --enable-shared

  i386/i686 support for all the above.

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

Aman Gupta for various bug fixes and other cleanup.

About

A Ruby gem for memory profiling

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published