Benoit Daloze
eregon.me
Benoit Daloze
@eregon.me
Expert in dynamic language runtimes and JIT compilation, TruffleRuby lead, Rubyist.
https://eregon.me
Yes, my thought here is booting itself is "useless", one always wants to do something with the booted app, which will load more modules/classes and so will amortize any extra loading done before to some degree.
February 2, 2026 at 11:56 AM
IOW the change sounds to me like a nice simplification which seems cleaner and e.g. worth it to avoid redefining require. The 10% overhead doesn't sound ideal, but I wonder how much overhead would actually be felt by Zeitwerk users (i.e. just booting is not useful, one always wants to do something).
February 2, 2026 at 11:36 AM
Of course, but what I meant by small test is not the app being big/small but the test testing e.g. a single model/controller and not loading the whole app. I think as soon as a model/controller is loaded, a bunch more gets loaded, and any extra "eager loading" (as in your change) is less visible.
February 2, 2026 at 11:33 AM
What if you timed running a single small test? I would guess much less difference there.
Similarly for the dev case, one idea would be to time process-start to first-request handled.
Then if the difference is minimal there it's probably hardly visible to the user.
February 2, 2026 at 11:25 AM
How did you measure the increase for dev/test? I'd expect for those the time from start-the-process to something-useful changes less because they will both load some parts of the app at least.
February 2, 2026 at 9:30 AM
Typo fix: always removing empty **kw on the caller* side
January 30, 2026 at 9:01 AM
That looks pretty wild, is the logic ported from CRuby?
In TruffleRuby it's a lot simpler, partly due to some intentional simplifications like always removing empty **kw on the callee side, always dup kw and let escape analysis deal with it, and pass kwargs in calling convention as last argument
January 29, 2026 at 2:55 PM
I suspect it's done like that for extra safety but one can also just run `sudo dnf upgrade` while running the system and it works fine.
I don't like apt because it's so much slower to install packages, last case I saw is building a Docker image, > 2 minutes to install 7 packages with apt.
January 22, 2026 at 11:56 AM
That page takes a while to load with all the iframes though so I'd actually prefer to link to RubyEvents if all talks are there, but that's not reasonable since there are also talks at non-Ruby conferences. Could do a mixed approach with linking to RubyEvents and list the few extra talks directly.
January 17, 2026 at 11:51 AM
Let me know if I can make a PR about that/to which file or so. If we want to be extensive I recently went through all RubyKaigi+RubyConf talks about TruffleRuby to make truffleruby.dev/talks
January 17, 2026 at 11:51 AM
Not a request and feel free to do nothing about it, but I noticed some talks from Chris notably www.rubyevents.org/talks/deopti... and www.rubyevents.org/talks/ruby-s... are not included in the TruffleRuby page. Which kind of makes sense since it was called JRuby+Truffle back then 😅
January 17, 2026 at 11:51 AM
May I suggest including bsky.app/profile/truf..., maybe in the next edition?
TruffleRuby kicks off the year with a new website, a new release, and a blog post to go with it! 🎉
truffleruby.dev/blog/truffle...
Many changes:
* New versioning
* Thread-safe Hash
* No system dependencies anymore
* Installs in 2 seconds
* Development is now fully in the open
TruffleRuby 33 is Released
TruffleRuby 33.0.0 is released and available on GitHub, in your favorite Ruby installer, and on Maven Central!
truffleruby.dev
January 17, 2026 at 11:33 AM
Yeah that's pretty shady behavior, seems worth reporting. I usually leave a comment to let people know the spam they are causing in such cases. Pretty weird to copy issues like that.
January 16, 2026 at 7:12 AM
Not entirely sure because I haven't tried in a while but worth a shot. It might also depend on which parts you use so I'd suggest to try it and see.
January 15, 2026 at 1:54 PM
@statitudes.com Maybe you could try running the full benchmark or even the full app on TruffleRuby?
January 15, 2026 at 12:23 PM
I ran your benchmarks from bugs.ruby-lang.org/issues/21824 on TruffleRuby with a slight tweak to use benchmark-ips for warmup and the result is 2.42x faster than CRuby 3.4.8 on the first benchmark and 4.66x faster on the second/minimal benchmark!
See gist.github.com/eregon/e3692... for details.
January 15, 2026 at 12:23 PM