Almost one year passed from my latest all-around Linux filesystem comparison, and a lot of things changed. First, I discovered that, while Fedora documentation stated that ext3 write barriers were enabled by default, they were not correctly activated on my test setup. This inflated ext3 benchmarks in a unfair manner. Second, a lot of kernel development activity happened: xfs got some much-needed metadata handling speedup, btrfs saw intensive performance optimization and write barriers were replaced by FUAs .
So, it time to refresh Linux filesystems performances. We already know the contenders:
- ext3, the classic Linux filesystem;
- ext4, the natural ext3 successor as default Linux filesystem;
- xfs, an high performance filesystem designed with scalability in mind;
- btrfs, the new, actively developed, feature-rich filesystem.
While this article has a focus on performance, keep in mind that ext3 is limited to 2 TB volumes. If you plan to use bigger volumes, you had to chose another filesystem. For an in-depth feature-based comparison, you can see the relative Wikipedia page .
UPDATE 2011/10/20: a reader pointed to me that, if you use bigger block size (eg: 4 KB blocks), EXT3-based volumes can grow up to 16 TB in size. This will, however, cause somewhat greater wasted space. Thank you for the correction!
Remember that different usage patterns can favor different filesystems, so I don't pretend to elect the always-better, stronger filesystem on earth. I simply want to give you some numbers collected in a quite various usage pattern, so that I can help you in the choice of the right filesystem for some common jobs.