This is really really cool. Thanks for posting. I'm especially interested in memory usage right now. I wrote a way to generate load and measure memory impact on your app: https://github.com/schneems/derailed_benchmarks
From `ps` i'm seeing about ~ 200mb RSS usage where rbkit is only showing ~50mb. I wonder what we could do to increase the accuracy here without having to shell out (very slow).
Also as a note if the gem install fails, on a mac I needed to run this:
$ brew install msgpack
$ brew install zeromq
Then it worked fine. Thanks again! Projects like this get me really excited for a future with faster applications and better informed developers.
I think, we have some work to document what those values mean. RES in graph - is not total RSS memory usage, it is memory ruby has allocated on C heap via `malloc` calls.
If you are familiar with Ruby internals, ruby heap can store small sized objects (such as smaller strings, smaller arrays etc) in its own heap, but for larger objects ruby uses `malloc` and the ruby heap itself just keeps a pointer to memory allocated. The RES size in graph is approximately that value.
Total RSS size of ruby process is lot bigger, it is combination of C heap, Ruby heap and other allocations which ruby is not even aware of (such as a C extension using `malloc` calls).
Comparing the two, it looks like this app only uses heap size for memory and doesn't take into account memory that isn't being used but hasn't been freed. https://www.dropbox.com/s/679sd83gqlkligk/Screenshot%202015-...
From `ps` i'm seeing about ~ 200mb RSS usage where rbkit is only showing ~50mb. I wonder what we could do to increase the accuracy here without having to shell out (very slow).
Also as a note if the gem install fails, on a mac I needed to run this:
Then it worked fine. Thanks again! Projects like this get me really excited for a future with faster applications and better informed developers.