[Bug 230260] [FUSE] [PERFORMANCE]: Performance issue (I/O block size)
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed Aug 1 12:39:03 UTC 2018
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230260
Bug ID: 230260
Summary: [FUSE] [PERFORMANCE]: Performance issue (I/O block
size)
Product: Base System
Version: 11.1-RELEASE
Hardware: Any
URL: https://robo.moosefs.com/support/fuse_helloworld.tgz
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: kern
Assignee: bugs at FreeBSD.org
Reporter: freebsd at moosefs.com
This is one of three issues we detected in FreeBSD FUSE while developing our
distributed file system. All four issues can be replicated using this simple
test script:
https://robo.moosefs.com/support/fuse_helloworld.tgz
Performance issue in FUSE: if a program uses FUSE without the "direct" option,
any I/O is always performed in 4k blocks. Maximum I/O speed we managed to get
was 600MB/s (no physical I/O, just sending zeros from a RAM buffer).
With "direct" it's fast, 5GB/s, but "direct" is not the best solution: no
cache, read operation has no limit on block size and if one uses extremely big
block size, the read speed drastically drops again (we performed dd with bs=1G
and the speed was only 40MB/s). Generally, "direct" is geared toward
stream-like data (character devices) and should not be used for disk-like I/O.
Other FUSE implementations (Linux, MacOS) use 64k block.
Best regards,
Peter / MooseFS Team
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list