Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Lowering parity check priority (I want to slow it down!)

Featured Replies

Time for me to ask a question...

 

Generally I am very happy with my servers, but I find that while the monthly parity check is running (set up via unMenu packages) that I only have very limited speed of transfer from my shares.  I would expect some slow-down due to the disks with the needed data having to read from different areas, but I am seeing a greater than 90% slow-down.  Normally I can saturate a gigabit lan connection with SMB transfers.  With the parity check running I see the transfer speed vary in the range 5 to 50Mbits/sec.  I am running unRAID 5.0.5 - hardware is as listed in my sig below.

 

I know a little Linux (enough to be only a little bit dangerous, not enough to get very creative), so I tried playing with the niceness of tasks apparently related to the parity checking, but I was unable to have any impact on the transfer from the shares.

 

I don't care whether the parity check takes 6 and a half hours or twice as long, but I would like to find a way to allow a reasonable access speed (enough to watch a Blu-ray rip at least) while it's in progress.  I feel that the solution should be available by some means of process priority juggling rather than just throwing more processor power at the problem.  Am I missing something obvious?  Or is there some magic tweak that I can apply?

 

Thanks,

 

Les.

I doubt you can impact this.  The problem is a parity check is not very CPU-intensive, so reducing its priority isn't going to have much impact.  And any time you start thrashing your disks by doing multiple things that require extensive head movement, things are going to slow down -- not only does it slow down your transfers a lot; but the parity check is also going to take a good bit longer.

 

The best approach is to simply do your parity checks when the system isn't otherwise needed (I do all of mine overnight).

 

  • Author

Thanks Gary, I figured that may well be the case.  Perhaps I should just look at rescheduling the parity check so that it starts a few hours later.  I am a bit of a night owl and am often still using the server until at least 2am.  But it would be nice if there was a way for the parity check to just allow more time for other things if so configured, even if it did then run slower.

I'm also a late night owl -- often up until ~ 4 or so.

 

It'd be nice if there was a "Pause" button for the parity checks ... although it's simply enough to just Stop it if you're going to be doing other things and just restart it when you're done.

 

I think I remember pausing the parity check a long time ago. Using The top command you should be able to identify the process and issue to command to pause it.

I would not suggest altering the priority of any process dealing with unraid or the md driver. This could have a negative impact to everything you do on the array.

 

Instead, go to settings, the disk settings.

The numbers to tweak are

 

Tunable (md_num_stripes)

Tunable (md_write_limit)

Tunable (md_sync_window)

 

These were introduced back in 4.5 or something.

---

Other changes:

- Increased write peformance and added three user-tunables:

  md_num_stripes to set the stripe cache size

  md_write_limit to set a ceiling on most number of active write stripes

  md_sync_window to set the parity sync/check window size in stripes

---

 

 

Find your values, write them down or save them somewhere.

Check on the board for suggested values.

Adjust yours accordingly.

 

For the most part people are trying to increase parity speed and I believe md_sync_window comes into play.

I would surmise that adjusting that lower may yield a slower parity check operation.

  • Author

Thanks All.  I will play a little more with the tuning parameters as suggested, but I suspect that altering the time that the check starts will be more helpful to me.

Thanks All.  I will play a little more with the tuning parameters as suggested, but I suspect that altering the time that the check starts will be more helpful to me.

 

Definitely agree that the best option is to simply change the time you're doing the checks.  De-tuning the checks isn't going to change the fact that there's a LOT of head movement when you're doing other things -- and THAT is what's causing your slowdown.    By far, the best approach is to simply do the checks when the system is otherwise not being used.

 

As I recall, pausing and resuming the parity check process was relatively simple.

 

I'll have to play around with it again.

 

A nice feature would be if unRaid would allow you to start the parity check at an arbitrary percentage, thus allowing easy cancelation and later resumption.

There was some discussion about providing a Pause feature a while back, but I think the consensus was that it simply isn't needed enough to be worthwhile.    Would be nice for when you need it though -- although simply stopping the check; then starting it up again later works fine (just wastes a bit of time).

 

What would be even nicer is if the parity check worked like a lot of other utilities that are fairly disk intensive in Windows ... e.g. virus scanners;  cloud backup utilities like Carbonite; etc. ==> these simply half themselves when they detect extensive disk activity and wait until a certain amount of time has passed without further activity before resuming.    If parity checks did this, then whenever you were actively using the server they'd "self pause" ... and when your usage ended they'd pick back up and continue.  No user intervention required  :)

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.