4 ms·
There is still lots of optimizations to make. On the JIT side, there is still no inlining, which opens the door to much more aggressive optimizations. But also
by byroot 3y ago
There is still lots of optimizations to make. On the JIT side, there is still no inlining, which opens the door to much more aggressive optimizations.
But also on memory as well. There was a lot of improvements done on the Ruby garbage collector for 3.3, but there's still a lot of room for improvement, and a few fine folks at Shopify are looking into making the GC swappable so we'd be able to use mttk GCs with MRI.
As for the community caring about memory usage, I wonder how much of that has to do with the default Heroku dynos. Because it's an issue for small scale deployment. Once you scale more, you recoup a lot with CoW etc, so it's much less of a worry.
- claudiug 3y agocan you share on this? :)
- ksec 3y ago>On the JIT side, there is still no inlining, Oh wow. Had no idea there was no inlining. That is potentially another 2-3x performance.
- byroot 3y agoTo be slightly more correct, there is inlining but only of trivial methods that simply return an immediate value or a constant, e.g. class NilClass def blank? true end def present? false end end