mirror of
https://github.com/freebsd/freebsd-src
synced 2024-09-06 17:18:32 +00:00
Increase L2ARC write rate and headroom
Current L2ARC write rate and headroom parameters are very conservative: l2arc_write_max=8M and l2arc_headroom=2 (ie: a full L2ARC writes at 8 MB/s, scanning 16/32 MB of ARC tail each time; a warming L2ARC runs at 2x these rates). These values were selected 15+ years ago based on then-current SSDs size, performance and endurance. Today we have multi-TB, fast and cheap SSDs which can sustain much higher read/write rates. For this reason, this patch increases l2arc_write_max to 32M and l2arc_headroom to 8 (4x increase for both). Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Alexander Motin <mav@FreeBSD.org> Signed-off-by: Gionatan Danti <g.danti@assyoma.it> Closes #15457
This commit is contained in:
parent
1c1be60fa2
commit
887a3c533b
|
@ -97,7 +97,7 @@ and only applicable in related situations.
|
|||
.It Sy l2arc_feed_secs Ns = Ns Sy 1 Pq u64
|
||||
Seconds between L2ARC writing.
|
||||
.
|
||||
.It Sy l2arc_headroom Ns = Ns Sy 2 Pq u64
|
||||
.It Sy l2arc_headroom Ns = Ns Sy 8 Pq u64
|
||||
How far through the ARC lists to search for L2ARC cacheable content,
|
||||
expressed as a multiplier of
|
||||
.Sy l2arc_write_max .
|
||||
|
@ -200,12 +200,12 @@ to enable caching/reading prefetches to/from L2ARC.
|
|||
.It Sy l2arc_norw Ns = Ns Sy 0 Ns | Ns 1 Pq int
|
||||
No reads during writes.
|
||||
.
|
||||
.It Sy l2arc_write_boost Ns = Ns Sy 8388608 Ns B Po 8 MiB Pc Pq u64
|
||||
.It Sy l2arc_write_boost Ns = Ns Sy 33554432 Ns B Po 32 MiB Pc Pq u64
|
||||
Cold L2ARC devices will have
|
||||
.Sy l2arc_write_max
|
||||
increased by this amount while they remain cold.
|
||||
.
|
||||
.It Sy l2arc_write_max Ns = Ns Sy 8388608 Ns B Po 8 MiB Pc Pq u64
|
||||
.It Sy l2arc_write_max Ns = Ns Sy 33554432 Ns B Po 32 MiB Pc Pq u64
|
||||
Max write bytes per interval.
|
||||
.
|
||||
.It Sy l2arc_rebuild_enabled Ns = Ns Sy 1 Ns | Ns 0 Pq int
|
||||
|
|
|
@ -776,8 +776,8 @@ uint64_t zfs_crc64_table[256];
|
|||
* Level 2 ARC
|
||||
*/
|
||||
|
||||
#define L2ARC_WRITE_SIZE (8 * 1024 * 1024) /* initial write max */
|
||||
#define L2ARC_HEADROOM 2 /* num of writes */
|
||||
#define L2ARC_WRITE_SIZE (32 * 1024 * 1024) /* initial write max */
|
||||
#define L2ARC_HEADROOM 8 /* num of writes */
|
||||
|
||||
/*
|
||||
* If we discover during ARC scan any buffers to be compressed, we boost
|
||||
|
|
Loading…
Reference in a new issue