On Sep 14, 2011, at 11:31 AM, Tsyren Ochirov wrote:

> everyone!
> 
> It's nice to work with Ruby and write some code. But in past of this
> week, i notice that we have some problem in our application. Memory
> usage is growing like O(x*3) function.
> 
> Our application very complex, it is based on EventMachine and other
> external libs. Even more, it is running under amd64 bit version of
> FreeBSD using Ruby 1.8.7-p382
> 
> I'v tried to research by myself the way how find memory leak in our app.
> I've found many tools and libs, but they doesn't work under
> FreeBSD'64bit and I have no idea how step up to find leaks in huge ruby
> application. It's OK, if you have few files with 200-300 lines of code,
> but here you have around 30 files with average 200-300 line's of code.
> 
> I just realize, i need too much of time to find those leaks, doing
> stupid actions: believe/research/assume that some of part of this code
> is may be actually leaking and wrap some tracking code, like using
> ruby-prof gem technice. But it's so painfully slow way, because as i
> said we have too much of code.
> 
> So, my question is how to find memory leak in very complex Ruby app and
> not put all my life into this work?

I also recommend trying to run your code under JRuby and Rubinius. Both have very powerful tools for detecting and finding memory leaks, so those other runtimes may help shed some light on your problem.

cr