Filesystems comparison using iozone


This is an update of the previous test using Iozone. These tests are divided into 2 parts:
- Performance measurement using a normal environnement which will show us the behaviour of the different filesystem using the buffer cache.
- Real I/O performance on a low memory system.

The kernel tested is a 2.6.21-rc4 on a 4way machine (2 Intel Xeon 2.80GHz HT) 2GB of RAM with a 68GB SCSI ultra320 10 000rpm disk. 3 differents filesystems were tested, XFS using default setting, Ext3 with data=writeback option and Ext4 with data=writeback,delalloc,extents options. Therefore the kernel was patched with the last delayed allocation patches

Test sequence:
mount -t ext3 -o data=writeback
mount -t ext4dev -o data=writeback,extents,delalloc
mount -t xfs
iozone -az -g max_file_size -n min_file_size -y min_record_size -q max_record_size -i 0 -i 1 -i 2 -f /mnt/test/iozonetest

1. I/O Performance


In order to get real I/O performance, I used the "mem=64M" boot option, and ran Iozone several time with a record size from 4MB to 16MB and file size starting from 256MB to 2GB. A record size of 8MB, has been taken as a reference.
Whereas Ext4 performs better than Xfs on write sequences, Xfs is still better when reading. However, there is a real improvment between Ext3 and Ext4.







2. Buffer cache performance


In this case, no memory limitation has been set. The record size is 2MB and the file size goes from 2MB to 512MB.
Ext4 with extents and delayed allocation patch performs much better than Ext3 during write sequence and is a little better than xfs. Read sequence is not significant.