disk devices speed is ugly

Harald Schmalzbauer h.schmalzbauer at omnilan.de
Tue Jan 31 10:32:31 UTC 2012


 schrieb Alex Samorukov am 26.01.2012 14:52 (localtime):
> Hi,
>
> I ported exfat fuse module to FreeBSD (PR 164473) and found that it
> works much slower then on Linux. I found 2 reasons for this:
>

Thanks a lot! I saw the new port :-)
Hope that someone can help you improove fusefs-kmod. I remember more
porters were blaming FreeBSDs fusefs support making their work
hard/impossible (TrueCrypt). Hopefully some kernel hacker will read and
help...

Best regards,

-Harry

> 1) FreeBSD kernel do not allow to have nonalignment access to device
> with standard read/write commands. mmap to the entire disk
> (/dev/da0s1) doesn`t work also (EINVAL).
>
> When its not a big deal for read requests, for write it becomes a real
> issue - to write non-aligned data i need to read beginning and end of
> the block. So in fact for one write request i can get 2 reads.
>
> 2) It seems that there is a very simple read caching on such devices
> without write caching at all. It makes write performance enormously
> slow. I found geom_cache module, but it provides only read optimization.
>
>
> I decided to compare speed on Linux and FreeBSD and below are my
> results. I used old USB flash drive to do the tests.
>
> Read Speed of 100Mb:
>
> Linux 3.0.0:  22.7 Mb/sec
> FreeBSD: 10.22 Mb/sec
> FreeBSD + gcache: 18.75 Mb/sec (!)
>
> Write speed of 100Mb file:
> Linux: 90Mb/sec (cache, much higher then device speed)
> FreeBSD: 0.52 Mb/sec (!)
> FreeBSD + gcache: 0.52 Mb/sec
>
> As you could see write performance is enormously slow. May be we need
> to create some geom provider for such caching or i am missing
> something? I think, that other fuse modules like ntfs-3g and fuse-ext4
> having same issue. Also i found that fuse4bsd itself is non stable and
> may crash the system without any visible reasons.
> _______________________________________________
> freebsd-stable at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 196 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20120131/cc7b9cf2/signature.pgp


More information about the freebsd-stable mailing list