Hacker News new | ask | show | jobs
by jeffbee 337 days ago
What's baffling to me about this post is that anyone would believe that io_uring was even capable of speeding up this workload by 10x. Unless your profile suggests that syscall entry is taking > 90% of your CPU time, that is impossible. The only thing io_uring can do for you is reduce your syscall count, so the upper bound of its utility is whatever you are currently spending on sysenter/exit.
2 comments

Io_uring could allow for better throughout by simply having multiple operations in flight and allow for better I/O scheduling.

But yes, this specific case seems to be a misunderstanding in what io_uring write completion means.

You would expect that they would have tested recovery by at least simulating system stops immediately after after Io completion notification.

Unless they are truly using asynchronous O_SYNC writes and are just bad at explaining it.

You could also imagine it hiding write latency by allowing a very naive single-threaded application to do IOs concurrently, overlapped in time, instead of serialized. (But a threadpool would do much the same thing.)