We used fio to test a 1 GB file under both traditional FUSE and FUSE-over-io_uring modes. The experiments were conducted with the following iodepth and numjobs configurations: 1-1, 64-1, 1-4, and 64-4, with 70% read and 30% write, resulting in a total of eight test cases, measuring both latency and throughput.
Test results: https://gist.github.com/hibriansong/a4849903387b297516603e83b53bbde4 On 8/29/25 10:50 PM, Brian Song wrote: > Hi all, > > This is a GSoC project. More details are available here: > https://wiki.qemu.org/Google_Summer_of_Code_2025#FUSE-over-io_uring_exports > > This patch series includes: > - Add a round-robin mechanism to distribute the kernel-required Ring > Queues to FUSE Queues > - Support multiple in-flight requests (multiple ring entries) > - Add tests for FUSE-over-io_uring > > More detail in the v2 cover letter: > https://lists.nongnu.org/archive/html/qemu-block/2025-08/msg00140.html > > And in the v1 cover letter: > https://lists.nongnu.org/archive/html/qemu-block/2025-07/msg00280.html > > > Brian Song (4): > export/fuse: add opt to enable FUSE-over-io_uring > export/fuse: process FUSE-over-io_uring requests > export/fuse: Safe termination for FUSE-uring > iotests: add tests for FUSE-over-io_uring > > block/export/fuse.c | 838 +++++++++++++++++++++------ > docs/tools/qemu-storage-daemon.rst | 11 +- > qapi/block-export.json | 5 +- > storage-daemon/qemu-storage-daemon.c | 1 + > tests/qemu-iotests/check | 2 + > tests/qemu-iotests/common.rc | 45 +- > util/fdmon-io_uring.c | 5 +- > 7 files changed, 717 insertions(+), 190 deletions(-) >