Benoit Daloze

407 Followers
112 Following
138 Posts
Expert in dynamic language runtimes and JIT compilation, TruffleRuby lead, Rubyist.
Bloghttps://eregon.me/blog/
New blog post: “Contributions to ruby/spec”
https://eregon.me/blog/2025/05/03/contributions-to-ruby-spec.html
Contributions to ruby/spec

As a maintainer of ruby/spec I sometimes wonder how much each Ruby implementation contributes to ruby/spec. Without further ado, here it is:

On the Edge of Ruby
New blog post: “Matching Regexps 200 Times Faster”
https://eregon.me/blog/2025/03/14/matching-regexps-200-times-faster.html
Matching Regexps 200 Times Faster

A blog about Ruby, Performance and Concurrency

On the Edge of Ruby
"Benchmarking Ruby parsers is trickier than one might expect, but overall the result is clear: ..." (new blog post)
https://eregon.me/blog/2024/10/27/benchmarking-ruby-parsers.html
Benchmarking Ruby Parsers

The new Prism parser has become the default in Ruby 3.4.0 preview 2.

On the Edge of Ruby

TruffleRuby 23.1 (to be released on Sep 19) is 4.6x and 3.5x faster than CRuby 3.2 on the new yjit-bench fluentd benchmark!

The fluentd benchmark was recently added in yjit-bench (https://github.com/Shopify/yjit-bench/pull/243) and I was eager to run it on TruffleRuby to see how it fares. Profiling revealed a small issue with Array#<< and with that fixed (https://github.com/oracle/truffleruby/pull/3234) we get this nice speedup.

Add fluentd benchmark by k0kubun · Pull Request #243 · Shopify/yjit-bench

This PR adds a new benchmark fluentd. Fluentd is a log collector that Shopify currently uses for services like Core and SFR. When Core calls Rails.logger.info("foo=bar"), our Fluentd config parses ...

GitHub
My @rubyconf talk “Splitting: the Crucial Optimization for Ruby Blocks” is now available online: https://youtu.be/Gn6p4rbbqEY Slides are at https://eregon.me/blog/assets/research/splitting-the-crucial-optimization-for-ruby-blocks.pdf
RM A D1 04 Benoit Daloze

YouTube
Getting ready for my @rubyconf talk, come learn about “Splitting: the Crucial Optimization for Ruby Blocks” at 3PM on Nov 29! https://rubyconf.org/schedule #rubyconf
Schedule | RubyConf 2022

RubyConf 2022

Today I tried to run #Mastodon on #TruffleRuby and it just worked as a drop-in replacement! 🚀
No Gemfile/app changes needed.
I only had to fix one small bug in rb_thread_fd_select() used by hiredis and a one-line change in the Puma config! cc @graalvm