With all the discussion on IO and networking, I hope that this article may be relevant and helpful:
2 Likes
My first thought, a bit off topic, is that that coding style really looks like somebody who writes a lot of k. And sure enough, it turns out the author of the linked article gave this talk: Geo Carncross: How to program computers (kos) , the transcript of which popped up on lobste.rs about a month ago.
2 Likes
It doesn’t mention io_uring though. Would you recommend the same scheme (multiple ring buffers, affinity per core with a pool of workers) for io_uring too?
The same should also be possible with io_uring and have similar or better performance depending on how you set it up