Skip to content

fuse: {io-uring} Prefer the current core over mapping#95

Closed
bsbernd wants to merge 1 commit intoredfs-rhel9_4-427.42.1from
queue-select-and-dio-redfs-rhel9_4-427.42.1
Closed

fuse: {io-uring} Prefer the current core over mapping#95
bsbernd wants to merge 1 commit intoredfs-rhel9_4-427.42.1from
queue-select-and-dio-redfs-rhel9_4-427.42.1

Conversation

@bsbernd
Copy link
Collaborator

@bsbernd bsbernd commented Feb 13, 2026

Mapping might point to a totally different core due to random assignment. For performance using the current core might be beneficial

Example (with core binding)

unpatched WRITE: bw=841MiB/s
patched WRITE: bw=1363MiB/s

With
fio --name=test --ioengine=psync --direct=1
--rw=write --bs=1M --iodepth=1 --numjobs=1
--filename_format=/redfs/testfile.$jobnum --size=100G
--thread --create_on_open=1 --runtime=30s --cpus_allowed=1

In order to get the good number --cpus_allowed=1 is needed. This could be improved by a future change that avoids cpu migration in fuse_request_end() on wake_up() call.

(cherry picked from commit 32e0073)

Mapping might point to a totally different core due to
random assignment. For performance using the current
core might be beneficial

Example (with core binding)

unpatched WRITE: bw=841MiB/s
patched   WRITE: bw=1363MiB/s

With
fio --name=test --ioengine=psync --direct=1 \
    --rw=write --bs=1M --iodepth=1 --numjobs=1 \
    --filename_format=/redfs/testfile.\$jobnum --size=100G \
    --thread --create_on_open=1 --runtime=30s --cpus_allowed=1

In order to get the good number `--cpus_allowed=1` is needed.
This could be improved by a future change that avoids
cpu migration in fuse_request_end() on wake_up() call.

(cherry picked from commit 32e0073)
@bsbernd bsbernd closed this Feb 13, 2026
@bsbernd bsbernd deleted the queue-select-and-dio-redfs-rhel9_4-427.42.1 branch February 13, 2026 18:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant