大量にあるsnapshotをzfs destroyで消すような場合、1つずつzfs destroy tank/foo@barとやるよりも
for X in bar1 bar2 ... ; do zfs destroy tank/foo@$X & done; wait
というようにバックグラウンドで複数実行した方がかなり速く終わる。たぶんまとめて実行することでCoWの量が減らせるんだとおもう。ただ、対象となるスナップショットが大量にある場合にはプロセス数に注意。バッチ的にまとめて消したい場合はこんな感じ:
zfs list -r -t snapshot -o name tank/home/koie | while read X; do ...