ZFS-FUSE, XFS, NTFS3G and LESSFS
A PERFORMANCE COMPARISON
Once in a while I run a set of tests to compare Lessfs with other filesystems. The results of these tests are used to determine where lessfs can be improved and how it does in general. The upcoming 18.104.22.168 release of lessfs again improves some performance aspects which made it interesting to perform a set of performance tests. This article describes the tests and shows the results.
As usual I started with iozone. In the past lessfs would do great on writes but would be weak on reads. The latest code completely changes this as can be observed from these iozone results.
Sequential throughput test:
This is a simple test that shows how fast the filesystem can write a data stream to disk.
Test : time (dd if=/dev/sda1 of=/fs bs=1M; sync)
ntfs3g : 999292928 bytes (999 MB) copied, 33.803 s, 29.6 MB/s real 0m39.394s lessfs : 999292928 bytes (999 MB) copied, 9.2262 s, 108 MB/s real 0m17.347s xfs : 999292928 bytes (999 MB) copied, 2.55242 s, 392 MB/s real 0m12.722s zfs-fuse : 999292928 bytes (999 MB) copied, 40.9082 s, 24.4 MB/s real 0m41.451s
Extract kernel archive
Test : time tar xjf /Downloads/linux-2.6.34.tar.bz
ntfs3g : 0m32.314s lessfs : 2m51.920s xfs: 2m24.540 zfs-fuse: 1m29.172s
Test : cp -ar /etc /fs
ntfs3g: 0m2.338s lessfs: 0m8.347s xfs: 0m4.528s zfs-fuse: 0m2.088s
What does all this tell us? Lessfs has originally been designed for backup purposes and has therefore been tuned to store a small number of fairly large files as fast as possible. This still is a point in which lessfs excels. Although the creation and handling of many small files can still be improved the last releases come with acceptable performance, even on this point. Read and write performance are excellent. The next release will focus on further improvement of file creation / metadata performance. But all things considered it does not look bad at all.