It'd be kinda awesome if we could have an io_uring with multiple submission queues/rings, but only one completion queue/ring. With the ability to map the submission queue only in one process, but the completion queue in multiple.
CC: @axboe
If it'd require more manual work to set up, it'd be fair enough. Though it turns out that the contention I was just seeing was unnecessary. Still bothersome to have to be careful to hold submission side lock until all submissions have to be consumed by kernel (due to mm/fds).
-
-
It'd be trivial to ensure things are correct and eliminate any need to think about locking, which is always a win on the application side imho. I'll have to think about it a bit.
-
Cool! Random update: FWIW, got PG to be competitive with io_uring based AIO for several workloads (but file appending is really bad right now). But only when using DIO, buffered has considerably higher CPU usage/contention.
- 9 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.