IO_uring Bringing Better Send Zero-Copy Performance With Linux 6.10
Linux I/O expert and subsystem maintainer Jens Axboe has submitted all of the IO_uring feature updates ahead of the imminent Linux 6.10 merge window.
Exciting on the IO_uring front this cycle is to "greatly improve" the send zero-copy performance. This big performance improvement for zero-copy send is thanks to coalescing of sent buffers. Axboe explained:
IO_uring for the next kernel also unifies async preparation handling across opcodes, support for bundles for send/receive to yield greater efficiency, cleaning up of some workqueue handling, and various other code reworks/improvements.
More details on the IO_uring feature changes for Linux 6.10 via this pull request.
Exciting on the IO_uring front this cycle is to "greatly improve" the send zero-copy performance. This big performance improvement for zero-copy send is thanks to coalescing of sent buffers. Axboe explained:
"Greatly improve send zerocopy performance, by enabling coalescing of sent buffers. MSG_ZEROCOPY already does this with send(2) and sendmsg(2), but the io_uring side did not. In local testing, the crossover point for send zerocopy being faster is now around 3000 byte packets, and it performs better than the sync syscall variants as well. This feature relies on a shared branch with net-next, which was pulled into both branches."
IO_uring for the next kernel also unifies async preparation handling across opcodes, support for bundles for send/receive to yield greater efficiency, cleaning up of some workqueue handling, and various other code reworks/improvements.
More details on the IO_uring feature changes for Linux 6.10 via this pull request.
14 Comments