Deoptimizing Ruby
Chris Seaton
• San Diego, CA
•
Talk
Date: December 26, 2014
Published: unknown
Announced: unknown
By, Chris Seaton
Ruby is notoriously difficult to optimize, but there is a solution: deoptimization. This means jumping from compiled code back to an interpreter, and it allows Ruby implementations to take shortcuts, make guesses and pretend Ruby is simpler than it is, but at the same time still be ready to handle the full language if it’s needed.
You’ve seen talks about what makes Ruby slow: monkey patching, bindings, set_trace_func, object space & so on. We’ll show how with a Ruby implementation using deoptimization, such as JRuby+Truffle, you can use these features without any runtime overhead at all.
RubyConf 2014