zfs: bring per_txg_dirty_frees_percent back to 30
This cherry-picks upstream eb9bec0a5d
The current value causes significant artificial slowdown during mass
parallel file removal, which can be observed both on FreeBSD and Linux
when running real workloads.
Sample results from Linux doing make -j 96 clean after an allyesconfig
modules build:
before: 4.14s user 6.79s system 48% cpu 22.631 total
after: 4.17s user 6.44s system 153% cpu 6.927 total
FreeBSD results in the ticket.
See https://github.com/openzfs/zfs/issues/13932
This commit is contained in:
parent
91ec809f0a
commit
de56ac8809
@ -1671,7 +1671,7 @@ prefetched during a pool traversal, like
|
||||
.Nm zfs Cm send
|
||||
or other data crawling operations.
|
||||
.
|
||||
.It Sy zfs_per_txg_dirty_frees_percent Ns = Ns Sy 5 Ns % Pq ulong
|
||||
.It Sy zfs_per_txg_dirty_frees_percent Ns = Ns Sy 30 Ns % Pq ulong
|
||||
Control percentage of dirtied indirect blocks from frees allowed into one TXG.
|
||||
After this threshold is crossed, additional frees will wait until the next TXG.
|
||||
.Sy 0 No disables this throttle.
|
||||
|
@ -70,7 +70,7 @@ static int zfs_nopwrite_enabled = 1;
|
||||
* will wait until the next TXG.
|
||||
* A value of zero will disable this throttle.
|
||||
*/
|
||||
static unsigned long zfs_per_txg_dirty_frees_percent = 5;
|
||||
static unsigned long zfs_per_txg_dirty_frees_percent = 30;
|
||||
|
||||
/*
|
||||
* Enable/disable forcing txg sync when dirty checking for holes with lseek().
|
||||
|
Loading…
Reference in New Issue
Block a user