hammer2 - Increase bulkfree buffer size request and cap
authorMatthew Dillon <dillon@apollo.backplane.com>
Sun, 1 Apr 2018 05:02:22 +0000 (22:02 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Sun, 1 Apr 2018 05:02:22 +0000 (22:02 -0700)
commita886bddb9b3e5d8e1a9257fd6ce9bdf4bc75e7c9
tree7ebe1719f7f26509e1068c4ed0e84a06d96835b5
parent9559adf5dcb595ff6d7f53b7845b0e7829eed322
hammer2 - Increase bulkfree buffer size request and cap

* Increase the kernel buffer size cap for hammer2 cleanups
  (aka bulkfree's) from 64MB to 1/16 physical memory.  Systems
  with more memory can accomodate larger in-memory bulkfree bitmap
  buffers.  Systems with less memory simply do multiple scan
  passes as per usual.

* Increase the buffer size requested by the hammer2 utility
  from 8MB to 1/16 physical memory.  The actual amount of memory
  allocated by the kernel will be 32MB per 1TB of filesystem, up to
  the cap.

* This will generally reduce the number of scans required for
  a 4TB filesystem from 16 to 1, meaning that bulkfree will take
  1/16 the time as it did before for a filesystem of that size.

  For example, a system with 128GB of ram would be able to
  request up to 8GB of buffer which can accomodate a bulkfree
  operation on a 256TB filesystem in a single pass.
sbin/hammer2/cmd_bulkfree.c
sys/vfs/hammer2/hammer2_bulkfree.c