Daisuke Aritomo (osyoyu)
Daisuke Aritomo (osyoyu)

Computer lover and software engineer at SmartBank, Inc. Interested in performance profiling, and has been recently working on Pf2, which is a novel CRuby profiler.

The depths of profiling Ruby

Useful profilers are capable of accurately tracking program execution and providing sleek visualization, with minimal performance impact. When it comes to Ruby profilers, advanced features such as merging Ruby-level and C-level stacks or recording GC / GVL events would be also wanted.

There were many challenges in implementing these features in Pf2, my experimental Ruby profiler. In this talk, I will visit the internals of CRuby and present the difficulties in creating a profiler for the interpreter.

In this talk, I'll discuss the difficulties of creating a Ruby profiler through exploring the internals of CRuby, and introduce Pf2's design choices to overcome challenges. Let us discuss the future of profiling Ruby!