On 1/17/24 5:38 PM, Bart Van Assche wrote: > On 1/17/24 10:43, Jens Axboe wrote: >> Do we care? Maybe not, if we accept that an IO scheduler is just for >> "slower devices". But let's not go around spouting some 200K number as >> if it's gospel, when it depends on so many factors like IO workload, >> system used, etc. > I've never seen more than 200K IOPS in a single-threaded test. Since > your tests report higher IOPS numbers, I assume that you are submitting > I/O from multiple CPU cores at the same time. Single core, using mq-deadline (with the poc patch, but number without you can already find in a previous reply): axboe@7950x ~/g/fio (master)> cat /sys/block/nvme0n1/queue/scheduler none [mq-deadline] axboe@7950x ~/g/fio (master)> sudo t/io_uring -p1 -d128 -b512 -s32 -c32 -F1 -B1 -R1 -X1 -n1 /dev/nvme0n1 submitter=0, tid=1957, file=/dev/nvme0n1, node=-1 polled=1, fixedbufs=1/0, register_files=1, buffered=0, QD=128 Engine=io_uring, sq_ring=128, cq_ring=128 IOPS=5.10M, BW=2.49GiB/s, IOS/call=32/31 IOPS=5.10M, BW=2.49GiB/s, IOS/call=32/32 IOPS=5.10M, BW=2.49GiB/s, IOS/call=31/31 Using non-polled IO, the number is around 4M. -- Jens Axboe