回合社区 virtiofs 随机写性能优化补丁
9d769e6aa252 fuse: support SB_NOSEC flag to improve write performance
643a666a89c3 fuse: add a flag FUSE_OPEN_KILL_SUIDGID for open() request
8981bdfda744 fuse: don't send ATTR_MODE to kill suid/sgid for handle_killpriv_v2
3179216135ec fuse: setattr should set FATTR_KILL_SUIDGID
b866739596ae fuse: set FUSE_WRITE_KILL_SUIDGID in cached write path
10c52c84e3f4 fuse: rename FUSE_WRITE_KILL_PRIV to FUSE_WRITE_KILL_SUIDGID
63f9909ff602 fuse: introduce the notion of FUSE_HANDLE_KILLPRIV_V2
Hi cool-water, welcome to the openEuler Community.
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here.
If you have any questions, please contact the SIG: Kernel, and any of the maintainers: @YangYingliang , @pi3orama , @成坚 (CHENG Jian) , @Qiuuuuu , @zhengzengkai , @Xie XiuQi
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
【测试方法】
config: CONFIG_VIRTIO_FS=y && CONFIG_FUSE_DAX=y
qemu-5.1.0
fio-3.27
mkdir -p /tmp/shared
sudo mkfs.ext4 -F /dev/nvme0n1
sudo mount -o user_xattr /dev/nvme0n1 /tmp/shared
磁盘挂载参考 https://virtio-fs.gitlab.io/howto-qemu.html
sudo ./virtiofsd --socket-path=/tmp/vhostqemu -o source=/tmp/shared -o cache=always
-chardev socket,id=char0,path=/tmp/vhostqemu \
-device vhost-user-fs-pci,chardev=char0,tag=myfs \
-object memory-backend-memfd,id=mem,size=16G,share=on \
-numa node,memdev=mem \
mount -t virtiofs myfs /mnt
./fio --ioengine=libaio --direct=1 --name=test --filename=/mnt/random_read_write.fio --bs=4k --iodepth=64 --size=4G --readwrite=randwrite
【server 不支持 FUSE_HANDLE_KILLPRIV_V2】 X86_64 ext4 +25.8%
before: AVG: 54.34MiB/s
WRITE: bw=67.6MiB/s (70.9MB/s), 67.6MiB/s-67.6MiB/s (70.9MB/s-70.9MB/s), io=4096MiB (4295MB), run=60590-60590msec
WRITE: bw=57.6MiB/s (60.4MB/s), 57.6MiB/s-57.6MiB/s (60.4MB/s-60.4MB/s), io=4096MiB (4295MB), run=71123-71123msec
WRITE: bw=48.8MiB/s (51.2MB/s), 48.8MiB/s-48.8MiB/s (51.2MB/s-51.2MB/s), io=4096MiB (4295MB), run=83948-83948msec
WRITE: bw=48.6MiB/s (51.0MB/s), 48.6MiB/s-48.6MiB/s (51.0MB/s-51.0MB/s), io=4096MiB (4295MB), run=84246-84246msec
WRITE: bw=49.1MiB/s (51.5MB/s), 49.1MiB/s-49.1MiB/s (51.5MB/s-51.5MB/s), io=4096MiB (4295MB), run=83392-83392msec
after: AVG: 68.38MiB/s
WRITE: bw=68.7MiB/s (72.0MB/s), 68.7MiB/s-68.7MiB/s (72.0MB/s-72.0MB/s), io=4096MiB (4295MB), run=59661-59661msec
WRITE: bw=68.4MiB/s (71.7MB/s), 68.4MiB/s-68.4MiB/s (71.7MB/s-71.7MB/s), io=4096MiB (4295MB), run=59867-59867msec
WRITE: bw=67.3MiB/s (70.6MB/s), 67.3MiB/s-67.3MiB/s (70.6MB/s-70.6MB/s), io=4096MiB (4295MB), run=60847-60847msec
WRITE: bw=68.4MiB/s (71.7MB/s), 68.4MiB/s-68.4MiB/s (71.7MB/s-71.7MB/s), io=4096MiB (4295MB), run=59861-59861msec
WRITE: bw=69.1MiB/s (72.4MB/s), 69.1MiB/s-69.1MiB/s (72.4MB/s-72.4MB/s), io=4096MiB (4295MB), run=59284-59284msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 支持】
root
WRITE: bw=70.0MiB/s (73.4MB/s), 70.0MiB/s-70.0MiB/s (73.4MB/s-73.4MB/s), io=4096MiB (4295MB), run=58520-58520msec
test
WRITE: bw=67.3MiB/s (70.6MB/s), 67.3MiB/s-67.3MiB/s (70.6MB/s-70.6MB/s), io=4096MiB (4295MB), run=60858-60858msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 不支持】
root
WRITE: bw=50.2MiB/s (52.6MB/s), 50.2MiB/s-50.2MiB/s (52.6MB/s-52.6MB/s), io=4096MiB (4295MB), run=81673-81673msec
test
WRITE: bw=44.6MiB/s (46.8MB/s), 44.6MiB/s-44.6MiB/s (46.8MB/s-46.8MB/s), io=4096MiB (4295MB), run=91839-91839msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 支持】
root
WRITE: bw=62.4MiB/s (65.5MB/s), 62.4MiB/s-62.4MiB/s (65.5MB/s-65.5MB/s), io=4096MiB (4295MB), run=65598-65598msec
test
WRITE: bw=64.5MiB/s (67.6MB/s), 64.5MiB/s-64.5MiB/s (67.6MB/s-67.6MB/s), io=4096MiB (4295MB), run=63534-63534msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 不支持】
root
WRITE: bw=52.8MiB/s (55.4MB/s), 52.8MiB/s-52.8MiB/s (55.4MB/s-55.4MB/s), io=4096MiB (4295MB), run=77519-77519msec
test
WRITE: bw=54.5MiB/s (57.1MB/s), 54.5MiB/s-54.5MiB/s (57.1MB/s-57.1MB/s), io=4096MiB (4295MB), run=75199-75199msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 支持】
root
WRITE: bw=63.1MiB/s (66.2MB/s), 63.1MiB/s-63.1MiB/s (66.2MB/s-66.2MB/s), io=4096MiB (4295MB), run=64902-64902msec
test
WRITE: bw=59.3MiB/s (62.2MB/s), 59.3MiB/s-59.3MiB/s (62.2MB/s-62.2MB/s), io=4096MiB (4295MB), run=69096-69096msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 不支持】
root
WRITE: bw=67.7MiB/s (71.0MB/s), 67.7MiB/s-67.7MiB/s (71.0MB/s-71.0MB/s), io=4096MiB (4295MB), run=60506-60506msec
test
WRITE: bw=63.0MiB/s (66.0MB/s), 63.0MiB/s-63.0MiB/s (66.0MB/s-66.0MB/s), io=4096MiB (4295MB), run=65028-65028msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 支持】
root
WRITE: bw=64.2MiB/s (67.3MB/s), 64.2MiB/s-64.2MiB/s (67.3MB/s-67.3MB/s), io=4096MiB (4295MB), run=63838-63838msec
test
WRITE: bw=63.7MiB/s (66.8MB/s), 63.7MiB/s-63.7MiB/s (66.8MB/s-66.8MB/s), io=4096MiB (4295MB), run=64344-64344msec
【server 支持 FUSE_HANDLE_KILLPRIV_V2, client 不支持】
root
WRITE: bw=66.7MiB/s (69.9MB/s), 66.7MiB/s-66.7MiB/s (69.9MB/s-69.9MB/s), io=4096MiB (4295MB), run=61448-61448msec
test
WRITE: bw=63.9MiB/s (67.0MB/s), 63.9MiB/s-63.9MiB/s (67.0MB/s-67.0MB/s), io=4096MiB (4295MB), run=64140-64140msec
登录 后才可以发表评论