Bonnie++: random seeks and file handling

The following graph show the number of random seeks per second and the corresponding CPU load:

Bonnie++ random seeks

BTRFS's results are very disappointing: not only it scores less than 20 seeks/sec, but is also cause a 350% CPU load! This is very strange, as maximum CPU load can only be at 200% (remember that this is a dual core machine). Can be a bonnie++ measurement error? Yes, but I am not sure, as EXT3, EXT4 and XFS seems to score OK. Note that EXT3 is the fastest here: this is an important win, as random performances are relevant for a large number of applications. In contrast, the very low BTRFS's score can be related to a quite complex metadata handling.

How these filesystems stack when creating and deleting a large number of files?

Bonnie++ file creation deletion

Wow! BTRFS is by very far the slowest, at a point where we can not read correctly the other results. Let's examine the same data without BTRFS score:

Bonnie++ file creation deletion without BTRFS

Now we can see that EXT4 is the faster and more efficient filesystem, followed by XFS and finally by EXT3. This file creation/deletion test corroborate my guess about too complex metadata handling for BTRFS filesystem. On the other end of the spectrum, FS with delayed allocation capabilities (EXT4 and XFS) are way faster than the good old EXT3.

UPDATE: preparing the system for another benchmark, I noticed that, in contrast to what written in Fedora 14 documentation, write barriers were non enabled on EXT3 filesystem. Please read the updated "Conclusions" page.