Skip to content

Commit 21a3839

Browse files
committed
man: Update L2ARC tunables for DWPD and parallel writes
Add l2arc_dwpd_limit, remove l2arc_write_boost, update related tunables. Signed-off-by: Ameer Hamza <ahamza@ixsystems.com>
1 parent a2ce515 commit 21a3839

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

man/man4/zfs.4

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,7 @@ Seconds between L2ARC writing.
109109
.
110110
.It Sy l2arc_headroom Ns = Ns Sy 8 Pq u64
111111
How far through the ARC lists to search for L2ARC cacheable content,
112-
expressed as a multiplier of
113-
.Sy l2arc_write_max .
112+
expressed as a multiplier of the effective write size.
114113
ARC persistence across reboots can be achieved with persistent L2ARC
115114
by setting this parameter to
116115
.Sy 0 ,
@@ -125,6 +124,14 @@ A value of
125124
.Sy 100
126125
disables this feature.
127126
.
127+
.It Sy l2arc_dwpd_limit Ns = Ns Sy 1 Pq uint
128+
Drive Writes Per Day limit for L2ARC devices to protect SSD endurance.
129+
A value of 1 means each L2ARC device can write its own capacity once per day.
130+
Higher values allow more writes (10 = 10x capacity per day).
131+
A value of 0 disables DWPD rate limiting entirely.
132+
DWPD limiting only applies after the initial fill pass completes and when
133+
total L2ARC capacity meets the persist threshold.
134+
.
128135
.It Sy l2arc_exclude_special Ns = Ns Sy 0 Ns | Ns 1 Pq int
129136
Controls whether buffers present on special vdevs are eligible for caching
130137
into L2ARC.
@@ -179,9 +186,8 @@ can render it slow or unusable.
179186
This parameter limits L2ARC writes and rebuilds to achieve the target.
180187
.
181188
.It Sy l2arc_trim_ahead Ns = Ns Sy 0 Ns % Pq u64
182-
Trims ahead of the current write size
183-
.Pq Sy l2arc_write_max
184-
on L2ARC devices by this percentage of write size if we have filled the device.
189+
Trims ahead of the current write size on L2ARC devices by this percentage
190+
of write size if we have filled the device.
185191
If set to
186192
.Sy 100
187193
we TRIM twice the space required to accommodate upcoming writes.
@@ -216,13 +222,12 @@ to enable caching/reading prefetches to/from L2ARC.
216222
.It Sy l2arc_norw Ns = Ns Sy 0 Ns | Ns 1 Pq int
217223
No reads during writes.
218224
.
219-
.It Sy l2arc_write_boost Ns = Ns Sy 33554432 Ns B Po 32 MiB Pc Pq u64
220-
Cold L2ARC devices will have
221-
.Sy l2arc_write_max
222-
increased by this amount while they remain cold.
223-
.
224225
.It Sy l2arc_write_max Ns = Ns Sy 33554432 Ns B Po 32 MiB Pc Pq u64
225-
Max write bytes per interval.
226+
Maximum write rate in bytes per second for each L2ARC device.
227+
Used directly during initial fill, when DWPD limiting is disabled,
228+
or for non-persistent L2ARC.
229+
When DWPD limiting is active, writes are capped by this rate.
230+
Total L2ARC throughput scales with the number of cache devices in a pool.
226231
.
227232
.It Sy l2arc_rebuild_enabled Ns = Ns Sy 1 Ns | Ns 0 Pq int
228233
Rebuild the L2ARC when importing a pool (persistent L2ARC).

0 commit comments

Comments
 (0)