aboutsummaryrefslogtreecommitdiff
path: root/scripts/zfs_prepare_disk
diff options
context:
space:
mode:
authorAlexander Motin <alexander.motin@TrueNAS.com>2025-12-10 21:03:01 +0000
committerTony Hutter <hutter2@llnl.gov>2026-02-05 21:48:30 +0000
commit8a79d0968006cda8f6857ef901cf26818ebd7728 (patch)
tree841512de90a574d2cf4679f850496ab8f68c26d8 /scripts/zfs_prepare_disk
parent5e0f20088dcf142d16eb1330015b82881d389385 (diff)
ARC: Increase parallel eviction batching
Before parallel eviction implementation zfs_arc_evict_batch_limit caused loop exits after evicting 10 headers. The cost of it is not big and well motivated. Now though taskq task exit after the same 10 headers is much more expensive. To cover the context switch overhead of taskq introduce another level of batching, controlled by zfs_arc_evict_batches_limit tunable, used only for parallel eviction. My tests including 36 parallel reads with 4KB recordsize that shown 1.4GB/s (~460K blocks/s) before with heavy arc_evict_lock contention, now show 6.5GB/s (~1.6M blocks/s) without arc_evict_lock contention. Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Alexander Motin <alexander.motin@TrueNAS.com> Closes #17970
Diffstat (limited to 'scripts/zfs_prepare_disk')
0 files changed, 0 insertions, 0 deletions