5 ms·
Boy I lost track of all the Ruby Jit attempts. According to the computer language shootout all micro-optimizations
by jhoechtl 4y ago
Boy I lost track of all the Ruby Jit attempts.
According to the computer language shootout all micro-optimizations
- ezekg 4y agoYJIT sped up my Rails app by about 30%. It has a memory overhead, but it's worth it.
- nerpderp82 4y agoThat is huge, did it also reduce(~~bring in~~) tail latency? *edit, fix confusing vernacular
- ezekg 4y agoNope -- P99 also decreased. I've heard similar things for other Rails apps as well.
- nerpderp82 4y agoSorry, in my usage "bring in" means move tail latency P99/P100 more to the left not as introduce, I'll be more clear next time. So yes! That is great news.
- maxime_cb 4y agoFor anyone curious, we've been working to reduce the memory overhead and have added some stats to keep track of memory usage over time. On this graph, you can see a comparison with the CRuby interpreter: https://speed.yjit.org/memory_timeline#railsbench https://speed.yjit.org/memory_timeline#railsbench
- greenpeas 4y agoWhat happened on jun 14? (the dramatic drop in memory usage) Edit: I guess this (https://github.com/ruby/ruby/pull/5944 https://github.com/ruby/ruby/pull/5944) PR was merged.
- maxime_cb 4y agoYes. Prior to that point we used to allocate a large chunk of executable memory upfront. We switched to mapping that memory on demand, and that alone was a huge improvement.
- nirvdrum 4y agohttps://ruby-compilers.com/ https://ruby-compilers.com/ is a comprehensive list of the various Ruby compilers. There's a table summarizing them along with detailed descriptions for some.