BTRFS EXT3 EXT4 XFS and KVM virtual machine: a host-side filesystem comparison

Written by Gionatan Danti on . Posted in Linux & Unix

User Rating:  / 14

Virtual disk image fragmentation

Speed, while crucial, is not the only thing to care. Fragmentation at the host-system level is also a very important factor, as an highly fragmented HD image file will become slower and slower over the time.

So, what filesystem is the better in contain fragmentation? Let analyze HD image file state after IOMeter tests:

Fragments 297652 94 66 4

Yeah, you read it correctly: while XFS is the absolute champion in reducing fragmentation and EXT3 / EXT4 remain at acceptable level (albeit much worse then the leader), BTRFS is shockingly bad in this regard. The virtual disk image file was fragmented into almost 300K fragments!

I know that BTRFS had a fame to be very fragmentation prone, [1] [2], but I hoped that during latest kernel development this problem had been corrected or reduced, but this don't seems to be the case.


#1 NGRhodes 2012-07-25 12:07

When looking at fragmentation, do not forget that EXT4 supports a maximum 32K blocks in an extent, which at the default 4KB block size is 128MB.
As your benchmarks show, does not appear to be a performance limitation.
What would be more interesting is rerunning the benchmarks on an aged filesystem and compare how performance degrades with age.
#2 Gionatan Danti 2012-07-30 11:20
Hi NGRhodes,
sorry for the late reply.

You are correct about EXT4 extent size, but theoretically nothing prevents 2 extents to be placed one after the other. In fact, the filefrag utility checks if two extents are consecutively placed and, in this case, it does not report two different fragments, but only one.

Do you have any proposal about the aged filesystem? Any idea is welcomed ;)
#3 Jack Douglas 2012-10-14 21:15

Thanks for the very helpful article. Would you be open to the suggestion of running the same tests with OCFS2 on a single node (it is the only fs other than btrfs with 'reflink' file snapshots that are very useful for backing up VMs)

Kind regards
#4 Boki 2016-04-21 12:59
Thanks for great article, and now, almost 4 years later, is there any new diff results or suggestions?

You have no rights to post comments