On 02/09/2018 05:45 PM, Ellis H. Wilson III wrote: > > I am trying to better understand how the cleaner kthread (btrfs-cleaner) > impacts foreground performance, specifically during snapshot deletion. > My experience so far has been that it can be dramatically disruptive to > foreground I/O. > > Looking through the wiki at kernel.org I have not yet stumbled onto any > analysis that would shed light on this specific problem. I have found > numerous complaints about btrfs-cleaner online, especially relating to > quotas being enabled. This has proven thus far less than helpful, as > the response tends to be "use less snapshots," or "disable quotas," both > of which strike me as intellectually unsatisfying answers
Well, sometimes those answers help. :) "Oh, yes, I disabled qgroups, I didn't even realize I had those, and now the problem is gone." >, especially > the former in a filesystem where snapshots are supposed to be > "first-class citizens." Throwing complaints around is also not helpful. > The 2007 and 2013 Rodeh papers don't do the thorough practical snapshot > performance analysis I would expect to see given the assertions in the > latter that "BTRFS...supports efficient snapshots..." The former is > sufficiently pre-BTRFS that while it does performance analysis of btree > clones, it's unclear (to me at least) if the results can be > forward-propagated in some way to real-world performance expectations > for BTRFS snapshot creation/deletion/modification. I don't really think they can. > Has this analysis been performed somewhere else and I'm just missing it? > Also, I'll be glad to comment on my specific setup, kernel version, > etc, and discuss pragmatic work-arounds, but I'd like to better > understand the high-level performance implications first. The "performance implications" are highly dependent on your specific setup, kernel version, etc, so it really makes sense to share: * kernel version * mount options (from /proc/mounts|grep btrfs) * is it ssd? hdd? iscsi lun? * how big is the FS * how many subvolumes/snapshots? (how many snapshots per subvolume) And what's essential to look at is what your computer is doing while you are throwing a list of subvolumes into the cleaner. * is it using 100% cpu? * is it showing 100% disk read I/O utilization? * is it showing 100% disk write I/O utilization? (is it writing lots and lots of data to disk?) Since you could be looking at any combination of answers on all those things, there's not much specific to tell. -- Hans van Kranenburg -- 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