reduce L2ARC_WRITE_SIZE on FreeBSD
FreeBSD has ARC_BUFC_NUMMETADATALISTS metadata lists and ARC_BUFC_NUMDATALISTS data lists (currently both are 16) while illumos has just a single list of each kind. L2ARC_WRITE_SIZE determines the default value of l2arc_write_max which defines limits on how much data is scanned and written to a cache device during each run of the l2arc feed thread. The limits are applied on the per buffer list basis. Because FreeBSD has more lists we proportionally reduce the limits. Reviewed by: Brendan Gregg (earlier version) MFC after: 2 weeks Sponsored by: HybridCluster
This commit is contained in:
parent
ab26525af2
commit
4c3b02bfce
@ -711,7 +711,9 @@ uint64_t zfs_crc64_table[256];
|
||||
* Level 2 ARC
|
||||
*/
|
||||
|
||||
#define L2ARC_WRITE_SIZE (8 * 1024 * 1024) /* initial write max */
|
||||
/* initial write max */
|
||||
#define L2ARC_WRITE_SIZE \
|
||||
(8 * 1024 * 1024 * 2 / (ARC_BUFC_NUMMETADATALISTS + ARC_BUFC_NUMDATALISTS))
|
||||
#define L2ARC_HEADROOM 2 /* num of writes */
|
||||
/*
|
||||
* If we discover during ARC scan any buffers to be compressed, we boost
|
||||
|
Loading…
x
Reference in New Issue
Block a user