The Linux 3.0 Kernel With EXT4 & Btrfs
With the Linux 3.0 kernel carrying CleanCache support along with various improvements to the EXT4 and Btrfs file-system modules, it is time for another Phoronix file-system comparison. This time around the EXT4 vs. Btrfs performance is particularly important with Fedora 16 possibly switching to Btrfs by default. Due to this level of interest, for our Linux 3.0 kernel benchmarks of the EXT4 and Btrfs file-systems, an Intel SSD was tested as well as an old 5400RPM IDE notebook hard drive to represent two ends of the spectrum.
The first system was the Sandy Bridge notebook that Intel sent over, which is the HP EliteBook with an Intel Core i5 2520M, 4GB of RAM, 160GB Intel X-25 Extreme (SSDSA2M160) SSD, and SNB HD 3000 graphics. The other system was an old IBM ThinkPad R52 notebook with an Intel Pentium M 1.86GHz CPU, 2GB RAM, 80GB Hitachi HTS541080G9AT00 IDE HDD, and ATI Mobility Radeon X300 graphics. Both systems were running Ubuntu 11.04 with the Linux 3.0 development kernel. The Sandy Bridge notebook was able to run Ubuntu 11.04 64-bit while the Pentium M notebook was running the 32-bit release.
Testing was done with the default file-system mount options and other stock Ubuntu 11.04 settings. The Linux 3.0 kernel build had CleanCache/ZCache support enabled. Benchmarks were done via the Phoronix Test Suite. It is as simple as that so we can jump straight to the results.
Testing began with the Apache static web serving benchmark. For the high-end notebook with the quad-core Sandy Bridge CPU and Intel X-25 SSD, Btrfs was much faster than EXT4. Using Btrfs on this higher-end system led to 26% more requests per second being handled than EXT4. For the crippled Pentium M notebook, however, the performance was indifferent between the two file-systems likely due to being bottlenecked at the CPU.