[OpenIndiana-discuss] Mitigating the performance impact of scrub

Richard Elling richard.elling at richardelling.com
Thu Sep 27 18:15:34 UTC 2012

On Sep 27, 2012, at 8:44 AM, Reginald Beardsley <pulaskite at yahoo.com> wrote:

> The only thing google turned up was "stop the scrub if it impacts performance too badly" which is not really all that helpful. Or ways to speed up scrubs & resilvers.

On modern ZFS implementations, scrub I/O is throttled to avoid impacting application I/O
performance. There are some kernel-level tunable parameters that can be adjusted, but
AFAIK, nobody has done any characterization studies.

> In my case, I'd like to be able to run a scrub and have all the performance hits taken by the scrub process if the system has other loads.  I care that the scrub runs, but not how fast.
> From observed behavior, it appears that the scrub is consuming too large a share of DRAM (12 GB in this case).  Is that correct and if so, is there a way to limit the proportion of memory used by the scrub process?

Data is cached in the ARC, but scrub data is placed in the MRU/LRU side of the ARC
and shouldn't impact the MFU side. In most cases, the memory usage during a scrub
is not a problem. Have you seen a different behaviour?
 -- richard

> I'd like to be able to schedule scrubs regularly, but the present behavior would require predicting when I didn't want to use the system for work.
> Thanks,
> Reg

illumos Day & ZFS Day, Oct 1-2, 2012 San Fransisco 
Richard.Elling at RichardElling.com

More information about the OpenIndiana-discuss mailing list