Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 May 2007 20:03:34 -0300
From:      Alejandro Pulver <alepulver@FreeBSD.org>
To:        freebsd-ports@FreeBSD.org
Subject:   [HEADS UP] ntfs-3g: better performance with libublio
Message-ID:  <20070502200334.29732258@deimos.mars.bsd>

next in thread | raw e-mail | index | archive | help
--Sig_sTHnT+OZDc1YADdi0K/J29S
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

Hello.

I have applied the libublio patch to the current ntfs-3g and integrated
with fjoe's aligned I/O layer. Before the read/write speed was about
2/1.2 MB/s, and now about 15/9 MB/s (of course depends on many things,
but to illustrate the point that is drastically improves performance).
The ni-kernel driver reads at 10MB/s, but is much faster in filesystem
operations (listing files, find(1), etc). In addition the disk activity
is a lot smoother. Also it outputs an error when creating a file
sometimes, but can be safely ignored (just try again), I will
investigate it (this happened before too).

The reason AFAIK is the lack of cache for block devices, which was
(re)added in FreeBSD-CURRENT (7.x). So the solution for users of
FreeBSD 6 (and 5, but the port isn't available for that release)
consists on using a user space cache.

I tried to contact fuse4bsd/libublio author, port maintainer, and asked
in freebsd-hackers@/freebsd-performance@ without response (I am not
blaming them, perhaps they were busy, I didn't ask correctly or simply
there was no interest about this there). I don't even know what's the
OSVERSION value to check this.

That's why I am asking for testers here. The patch to the current port
is at people.freebsd.org/~alepulver/fusefs-ntfs.diff, if
libublio-20070103.tar.gz can't be fetched because the mirrors weren't
updated get it from: http://people.freebsd.org/~alepulver/).

Without UBLIO_SYNC_IO=3D0 it's slower than without UBLIO, and increasing
UBLIO_BLOCKSIZE to 1/2/4MB seems a good improvement (also the disk is
not constantly reading/writing). Increasing UBLIO_ITEMS more than 24
doesn't seem to increase performance.

In Mac OS X the same problem exists, but cache for block devices was
not added AFAIK so this would be interesting (currently the only
working solution) for them.

Best Regards,
Ale

--Sig_sTHnT+OZDc1YADdi0K/J29S
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (FreeBSD)

iD8DBQFGORjGiV05EpRcP2ERAiIoAJ0TkmQwFwIuQL7PKkGyTIcT/23ycgCfUFOh
DI+wyTl84SYkjTHWdyqs2fw=
=JL30
-----END PGP SIGNATURE-----

--Sig_sTHnT+OZDc1YADdi0K/J29S--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070502200334.29732258>