Phase 1: choose a filesystem
The main goal is storing laaaarge files as fast as possible,
therefore the main selection criterion was the speed of disk output.
Three kinds of measurement was done:
- Read-write test with bonnie++
- Write test with dd
- Write test with cstream
All test ran on 1.8 TB ext3, reiserfs and xfs partitions,
with any possible RAID stripe size.
1. bonnie++ write
Command lines:
# bonnie++ -u nobody -d . -s 1024 -n 16 -r 64
# bonnie++ -u nobody -d . -s 1024 -n 16
Results:
2. dd write
Command lines:
# time sh -c "dd if=/dev/zero bs=64k count=16384 of=jonagy ; sync"
# time sh -c "dd if=/dev/zero bs=1024k count=65536 of=jonagy2 ; sync"
Results:
Comment: IMHO the second xfs test with 1 MB stripe size
seems to be unrealistic.
3. cstream write
Command lines:
# cstream -B 1m -b 1m -n 1024m -i - -o cgigasz -v 2
# cstream -B 1m -b 1m -n 65536m -i - -o cgigasz2 -v 2
Results:
Comment: IMHO the first xfs test with 512 kB stripe size
seems to be unrealistic.
Conclusions
- xfs is far faster than the other two filesystems.
- stripe size is almost indifferent at disk output.
So any further test will be done with xfs only.
Stripe size and other parameters will be tuned for maximum input speed.
(I may have some suspects according to bonnie++ sequential
read test:
)
Next: Reading XFS