In the latests years, there was considerable ferment in the Linux community regarding which filesystem is best suited to accomplish its goal – to organize your files. In endless discussion, we can read about the alleged superiority of one filesystem over another one, however often these statements lack some objective data points to prove that.

As a typical Linux user can choice from a plethora of very different filesystems, I would like to give you some number to compare them. In this article, we will focus on the performances of these filesystems:

  • ext3, which was the “standard” Linux filesystem since almost a decade;

  • ext4, the high-anticipated ext3 successor;

  • xfs, an high-performance filesystem originally developed by Silicon Graphics, Inc. for the IRIX operating system;

  • btrfs, a new, next-gen filesystem developed with scalability in mind.

The above filesystems have quite different features, with the ext3 having the more limited feature set. However, this article is not about features: if you need such comparison, you can refer to the very complete Wikipedia article [1]

This article is about performance: we are going to see which filesystem performed the best and by which margin. Keep in mind that different usage patterns can favor different filesystems, so I don't pretend to elect the always-better, stronger FS on the world. 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.

Please also consider that FS performances can vary dramatically between kernel releases. For example, EXT4 and BTRFS both had some speed improvements and some serious regression between the latest kernel releases. You can read some very interesting tests about these improvements/regressions on the Phoronix's website and other web sources.

So, let's go on...