- Joined
- May 28, 2011
- Messages
- 10,996
So after reading something today I started thinking about the scrub & resilvering priority. I possibly think changing the values could help out some people with certain speed requirements. I was able to find out how to speed up scrubbing and resilvering but not able to find out how to slow them down. One might think just do the opposite of the speed up settings but I'm not that brave or stupid to thing that is true.
Here is the link to how to speed it up and I am not saying anyone should do this, it's only to support my question. https://broken.net/uncategorized/zfs-performance-tuning-for-scrubs-and-resilvers/
So for my own use I'd like to know if I can slow down a scrub. It's not so my system can process more I/O while a scrub is going on but rather I'm looking to reduce the heat generated from the hard drives by maybe a few degrees (if I'm lucky). During a scrub two of my drives hit 44C, the rest are 40 or less. Normal operating temps are about 8C less.
I have no idea if changing the priority of a scrub when nothing is accessing the NAS would do anything at all, meaning since there is no competition due to I/O operations, the scrub would get the job anyway. So if a delay or pause isn't forced then I don't see things working my way.
In the link above there is a sysctl called zfs_scrub_delay in which the default value is 4. I understand a value of 0 (zero) is a higher priority. I don't believe this will solve my problem by setting it to say a value of 8. I believe there must be a time limit associated to limit the minimum and maximum time allowed for the process to take control. Again even if this is true just because there are no competing processes might be a reason this wouldn't work.
Any help would be appreciated or a pointer to another link that discusses this.
As for resilvering priority, for someone who really wants to resilver fast like if you have a RAIDZ1 (not recommended now days for data safety) you might want resilvering to occur as the highest priority over I/O. Again I'm not saying anyone should use the example in the link above, it's there just as a reference for my question but if someone knew what settings would work in FreeNAS 9.2.x, that might be helpful. It might even be nice if this became an on-the-fly option in the GUI.
Here is the link to how to speed it up and I am not saying anyone should do this, it's only to support my question. https://broken.net/uncategorized/zfs-performance-tuning-for-scrubs-and-resilvers/
So for my own use I'd like to know if I can slow down a scrub. It's not so my system can process more I/O while a scrub is going on but rather I'm looking to reduce the heat generated from the hard drives by maybe a few degrees (if I'm lucky). During a scrub two of my drives hit 44C, the rest are 40 or less. Normal operating temps are about 8C less.
I have no idea if changing the priority of a scrub when nothing is accessing the NAS would do anything at all, meaning since there is no competition due to I/O operations, the scrub would get the job anyway. So if a delay or pause isn't forced then I don't see things working my way.
In the link above there is a sysctl called zfs_scrub_delay in which the default value is 4. I understand a value of 0 (zero) is a higher priority. I don't believe this will solve my problem by setting it to say a value of 8. I believe there must be a time limit associated to limit the minimum and maximum time allowed for the process to take control. Again even if this is true just because there are no competing processes might be a reason this wouldn't work.
Any help would be appreciated or a pointer to another link that discusses this.
As for resilvering priority, for someone who really wants to resilver fast like if you have a RAIDZ1 (not recommended now days for data safety) you might want resilvering to occur as the highest priority over I/O. Again I'm not saying anyone should use the example in the link above, it's there just as a reference for my question but if someone knew what settings would work in FreeNAS 9.2.x, that might be helpful. It might even be nice if this became an on-the-fly option in the GUI.