liburing icon indicating copy to clipboard operation
liburing copied to clipboard

Coalescing of sequential read requests

Open andyg24 opened this issue 2 years ago • 6 comments

If I add 100 sequential read requests (e.g. for blocks 0-99 of a file), they appear to be coalesced and executed atomically by the NVME. That is, io_uring_wait_cqe_nr(1) will block until all 100 reads complete.

I see how this helps with throughput, but this can be a problem for an application that cares about latency and is ready to handle individual block reads as soon as they complete.

Is there a flag to prevent this coalescing and if not, would it make sense to add one?

andyg24 avatar Nov 20 '23 21:11 andyg24