I wrote down my personal thoughts on whether it's worth removing Ruby's GVL and what it would take.
I wanted to talk about Ractors too, but this is already too long, so that's for another time.
https://byroot.github.io/ruby/performance/2025/01/29/so-you-want-to-remove-the-gvl.html
=> More informations about this toot | View the thread
Before I can talk about Pitchfork, I obviously have to talk about fork.
If you ever did some system programming you likely won't learn much though.
https://byroot.github.io/ruby/performance/2025/01/25/why-does-everyone-hate-fork.html
=> More informations about this toot | View the thread
I want to write a post about Pitchfork, but before I can get to that I need to share some thoughts.
I suspect this one may be more controversial than the optimizing JSON series 😅.
https://byroot.github.io/ruby/performance/2025/01/23/the-mythical-io-bound-rails-app.html
=> More informations about this toot | View the thread
It is done, I finally concluded the ruby/json optimization series.
I hope you enjoyed it: https://byroot.github.io/ruby/json/2025/01/14/optimizing-ruby-json-part-7.html
=> More informations about this toot | View the thread
Here's most of the parsing optimization covered, only one extra part and the series should be over. But I have ideas of further topics.
https://byroot.github.io/ruby/json/2025/01/12/optimizing-ruby-json-part-6.html
=> More informations about this toot | View the thread
Part 5 is out, I'm finally done with the encoding side, so next time I can start talking about parsing:
https://byroot.github.io/ruby/json/2025/01/04/optimizing-ruby-json-part-5.html
=> More informations about this toot | View the thread
I thought that by part 4 I'd be done with JSON generation and that I could start talking about the parser in part 5, but apparently not.
This one is quite dense, let me know if some parts aren't as clear.
https://byroot.github.io/ruby/json/2024/12/29/optimizing-ruby-json-part-4.html
=> More informations about this toot | View the thread
I found a bit of time there and there to write part 3 over the last week, hopefully it isn't too disjointed.
https://byroot.github.io/ruby/json/2024/12/27/optimizing-ruby-json-part-3.html
=> More informations about this toot | View the thread
Since the first post was well received, that motivated me to continue, let's see how long it lasts https://byroot.github.io/ruby/json/2024/12/18/optimizing-ruby-json-part-2.html
=> More informations about this toot | View the thread
I got quite a lot of free time lately, so I figured I'd use it to blog a bit. Hopefully it's worth the effort?
Here's the first one, about some of the optimizations I and others made to ruby/json recently: https://byroot.github.io/ruby/json/2024/12/15/optimizing-ruby-json-part-1.html
=> More informations about this toot | View the thread
And it's out: https://github.com/ruby/json/releases/tag/v2.8.0
=> More informations about this toot | View the thread
This morning I though I was done optimizing the ruby/json parser, so I was doing some final cleanups before the 2.8.0 release. But nope, I found two more ~10% wins back to back...
This will never end...
https://github.com/ruby/json/pull/692
=> More informations about this toot | View the thread
I never thought I'd have to write a binary search function after I finished school.
https://github.com/ruby/json/pull/675
=> More informations about this toot | View the thread
Here's the post I teased last week.
TL;DR; Average latency: -5%, p99 latency -10%
https://railsatscale.com/2024-10-23-next-generation-oob-gc/
=> More informations about this toot | View the thread
I've just released json 2.7.3 with some bug fixes and lots of performance improvements: https://github.com/ruby/json/releases/tag/v2.7.3
This is my first release after being made maintainer two weeks ago.
If you got some realistic benchmarks in which JSON.dump is significantly slower than an alternative gem, please let me know.
As long as it's not the result of the alternative doing something incorrect, I'll consider it as a bug.
=> More informations about this toot | View the thread
I'm working on a blog post about our new out of band GC. Sneak peak:
=> More informations about this toot | View the thread
@flavorjones Exceptionally, I was listening.
=> More informations about this toot | View the thread
=> This profile with reblog | Go to byroot@ruby.social account This content has been proxied by September (3851b).Proxy Information
text/gemini