metaslab_min_alloc_size may be too big
See bugs.opensolaris.org: CR 6962304. It seems like we could adjust this tunable to be a bit more sane.
The current default value of metaslab_min_alloc_size is 10M
Several systems which have pools that are in the neighborhood of 70% or so full
were observed spending a lot of time in metaslab-related code and were generally seen as slow.
Someone suggested patching metaslab_min_alloc_size to 4K, and this has significantly reduced the amount of cpu used by zfs and made the systems significantly more responsive.
Looks like the default value is wrong.
Add the following to /etc/system and reboot:
- Work around 6962304