mirror_zfs/man
Allan Jude b6916f995e
ARC: parallel eviction
On systems with enormous amounts of memory, the single arc_evict thread
can become a bottleneck if reads and writes are stuck behind it, waiting
for old data to be evicted before new data can take its place.

This commit adds support for evicting from multiple ARC lists in
parallel, by farming the evict work out to some number of threads and
then accumulating their results.

A new tuneable, zfs_arc_evict_threads, sets the number of threads. By
default, it will scale based on the number of CPUs.

Sponsored-by: Expensify, Inc.
Sponsored-by: Klara, Inc.
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Youzhong Yang <youzhong@gmail.com>
Signed-off-by: Allan Jude <allan@klarasystems.com>
Signed-off-by: Mateusz Piotrowski <mateusz.piotrowski@klarasystems.com>
Signed-off-by: Alexander Stetsenko <alex.stetsenko@klarasystems.com>
Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
Co-authored-by: Rob Norris <rob.norris@klarasystems.com>
Co-authored-by: Mateusz Piotrowski <mateusz.piotrowski@klarasystems.com>
Co-authored-by: Alexander Stetsenko <alex.stetsenko@klarasystems.com>
Closes #16486
2025-05-14 10:38:32 -04:00
..
man1 Harmonize on American spelling in several places 2025-03-24 14:36:34 -07:00
man4 ARC: parallel eviction 2025-05-14 10:38:32 -04:00
man5 SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
man7 zfsprops.7 manpage changes for default quotas 2025-04-03 10:36:49 -07:00
man8 Introduce zfs rewrite subcommand (#17246) 2025-05-12 10:22:17 -07:00
Makefile.am Introduce zfs rewrite subcommand (#17246) 2025-05-12 10:22:17 -07:00