On Fri, 11/11 13:59, Karl Rister wrote: > > Stefan > > I ran some quick tests with your patches and got some pretty good gains, > but also some seemingly odd behavior. > > These results are for a 5 minute test doing sequential 4KB requests from > fio using O_DIRECT, libaio, and IO depth of 1. The requests are > performed directly against the virtio-blk device (no filesystem) which > is backed by a 400GB NVme card. > > QEMU_AIO_POLL_MAX_NS IOPs > unset 31,383 > 1 46,860 > 2 46,440 > 4 35,246 > 8 34,973 > 16 46,794 > 32 46,729 > 64 35,520 > 128 45,902
For sequential read with ioq=1, each request takes >20000ns under 45,000 IOPs. Isn't a poll time of 128ns a mismatching order of magnitude? Have you tried larger values? Not criticizing, just trying to understand how it workd. Also, do you happen to have numbers for unpatched QEMU (just to confirm that "unset" case doesn't cause regression) and baremetal for comparison? Fam