Re: [PATCH v2] t/io_uring: Vectored fixed buffer test support for nvme passthrough path
Pavel Begunkov <[email protected]> Thu, 18 Sep 2025 10:40:51 +0100
| Newsgroups | org.kernel.vger.fio |
|---|---|
| Message-ID | <[email protected]> |
On 9/17/25 07:58, Xiaobing Li wrote: > The current kernel NVMe passthrough path already supports vectored IO > when using fixed buffers, but fio has not yet adapted it. This patch > aims to add a corresponding test interface in fio. Great to have, and good to see that the performance impact is not noticeable. It'd also be nice to add support for vectored OP_READV with registered buffers, unless I'm missing sth and it's already enabled. > > Test results: > > taskset -c 1 t/io_uring -b512 -d64 -c2 -s2 -p1 -F1 -B1 -O0 -n1 -V1 -u1 -r4 /dev/ng1n1 > submitter=0, tid=6179, file=/dev/ng1n1, nfiles=1, node=-1 > polled=1, fixedbufs=1, register_files=1, buffered=1, QD=64 > Engine=io_uring, sq_ring=64, cq_ring=64 > IOPS=289.78K, BW=141MiB/s, IOS/call=1/1 > IOPS=294.68K, BW=143MiB/s, IOS/call=1/1 > IOPS=295.26K, BW=144MiB/s, IOS/call=1/1 > Exiting on timeout > Maximum IOPS=295.26K > > taskset -c 1 t/io_uring -b512 -d64 -c2 -s2 -p1 -F1 -B1 -O0 -n1 -V0 -u1 -r4 /dev/ng1n1 > submitter=0, tid=6183, file=/dev/ng1n1, nfiles=1, node=-1 > polled=1, fixedbufs=1, register_files=1, buffered=1, QD=64 > Engine=io_uring, sq_ring=64, cq_ring=64 > IOPS=292.31K, BW=142MiB/s, IOS/call=1/1 > IOPS=295.79K, BW=144MiB/s, IOS/call=1/1 > IOPS=290.78K, BW=141MiB/s, IOS/call=1/1 > Exiting on timeout > Maximum IOPS=295.79K > > Signed-off-by: Xiaobing Li <[email protected]> -- Pavel Begunkov