SamSaffron / flamegraph

Flamegraph profiling support for Ruby 2.0
MIT License
382 stars 36 forks source link

Support JRuby by removing fast_stack as a hard dependency #11

Closed nilbus closed 9 years ago

nilbus commented 9 years ago

Since fast_stack uses a C extension, it is not compatible with JRuby. With this patch, fast_stack will be used when it is available, only after after using StackProf if that is available.

Tested manually on JRuby, and the specs still pass on MRI.

What do you think about this approach?

SamSaffron commented 9 years ago

In principal I am ok with this, but can you confirm you can get stack traces fast enough from JRuby to even make this project useful for JRuby ?

A screenshot perhaps?

nilbus commented 9 years ago

Here's a screenshot, but how do you know what the sample rate is?

image 2015-04-08 at 2 32 06 pm

SamSaffron commented 9 years ago

That flamegraph does seem useful, you can get a rough measure of your sample rate by figuring out how long it takes to execute the page without flame graph and then dividing by the number of samples you got in the graph.

On Fri, Apr 17, 2015 at 11:58 AM, Edward Anderson notifications@github.com wrote:

Here's a screenshot, but how do you know what the sample rate is?

[image: image 2015-04-08 at 2 32 06 pm] https://cloud.githubusercontent.com/assets/64751/7194788/ad001d6e-e483-11e4-8b72-2b825ad6b3a1.png

— Reply to this email directly or view it on GitHub https://github.com/SamSaffron/flamegraph/pull/11#issuecomment-93877499.

SamSaffron commented 9 years ago

cool I merged this

nilbus commented 9 years ago

I probably won't have time to go back and redo the flame graph to measure the sample rate, but it was a high enough sample rate to be useful.