On Thu, Aug 8, 2013 at 12:40 PM, Josef Bacik <jba...@fusionio.com> wrote: > On Thu, Aug 08, 2013 at 09:13:04AM -0700, John Williams wrote: >> Phoronix periodically runs benchmarks on filesystems, and one thing I >> have noticed is that btrfs always does terribly on their fio "Intel >> IOMeter fileserver access pattern" benchmark: >> >> http://www.phoronix.com/scan.php?page=article&item=linux_310_10fs&num=2
> So the reason this workload sucks for btrfs is because we fall back on > buffered > IO because fio does not do block size aligned writes for this workload. If > you > add > > ba=4k > > to the iometer fio file then we go the same speed as xfs and ext4. Not a > whole > lot we can do about this since unaligned writes means we have to read in pages > to cow the block properly, which is why we fall back to buffered. Once we do > that we end up having a lot of page locking stuff that gets in the way and > makes > us twice as slow. Thanks, Thanks for looking into it. So I guess the reason that ZFS does well with that workload is that ZFS is using smaller blocks, maybe just 512B ? I wonder how common these type of non-4K aligned workloads are. Apparently, people with such workloads should avoid btrfs, but maybe these types of workloads are very rare? -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html