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.

Parity check speed

Featured Replies

I've been running this unRAID build for a few years now with no real changes other than adding more/bigger hard drives.  I don't run VMs, dockers, etc.  It's just a NAS and it work great in that role. 

 

Parity check speed has never been great but as I've added more and more drives it kept slowing down and most recently it got quite a bit slower with V6.  Just prior to the upgrade it was completing in 23 hours and change.  With V6 it's getting close to 30 hours.  Below is a screenshot of it right now.  Once it gets past 2tb it does speed up a bit.     

 

2016-04-01_15-42-07.png

 

This is my primary server and all the specs in my sig are current.  I'm a bit concerned because I want to go with dual parity once that's out of beta  and as I understand it that will take a nice hit on performance too.

 

Does this look right for the equipment I have?  Are there any upgrade which would make sense to get better performance and what speed might I expect to get with an upgrade?

 

Thank you

  • Replies 69
  • Views 13.5k
  • Created
  • Last Reply

I'd say the SASLP-MV8 controllers are a bit of a bottleneck during parity checks. I assume normal read/write speeds are acceptable?

  • Community Expert

You have to main bottlenecks:

 

1-CPU

Probably the current bottleneck, that CPU will struggle with so many disks.

 

2-DMI

Except for the disks on the top slot SASLP, all others (8 on the bottom SASLP + 6 Onboard + 2 on SIL3132) share the DMI connection between the south and north bridges, your board uses 1st gen DMI, in theory up to 1000MB/s, real world max is 750/800MB/s, so even if you upgraded your CPU max speed you can expect with 16 disks sharing the DMI is <50MB/s

 

If you tell us your upgrade budged we can make some suggestions.

  • Author

It's used just as a NAS for Kodi.  Files I copy over to it generally transfer at around 50MB/s.  I've never had a problem with playback in Kodi so read speeds are good enough. 

 

I can't really say that I have an upgrade budget.  I'm sure it goes without saying but I'd like to keep it as low as possible.  If its a couple hundred bucks then sure why not, if it's more like $500+ then it's probably not worth it.

 

One thing very important to me is low power consumption when no disks are being used as this is the case 95% of the time. 

  • Community Expert

The SASLP-MV8's are probably your biggest bottle neck.  However, you might want to go into 'Settings' >> 'Display settings' and check the box in the 'Page update frequency:' setting to "disable page updates while parity operation is running."  This will help reduce the effect of the display updating has on CPU performance.  You will have to manually refresh the webpage to see any change on the webpage while a parity check is running.  Also, start a NON-CORRECTING parity check and watch the 'CPU utilization' on the Dashboard page.  This will give you a feel of any effect that your CPU performance is having on parity check speed... (remember to manually refresh the page).  By using the non-correcting option, cancelling the parity check will have absolutely zero effect on the array and can be done safely at any time. 

 

I can assure you that watching a parity check using the webpage has a significant effect on speed when you have a low performance CPU...

 

By getting some information on the performance of your system, you will be in a better position to decide where to invest your upgrade money.  You didn't provide any times for a complete parity check.  The only time I would be concerned with is one where the check is run to completion without accessing the server from the GUI!  (A watched pot never boils...      ::)    )

  • Author

Here is the completion time which is my new normal on V6.  I had the unRAID UI open for about 2 minutes to check it and take the screenshot. 

 

2016-04-02_12-53-34.png

  • Community Expert

An upgrade would only help with parity check speeds, not read speeds, but that's what your OP is about, if you don't mind buying used, you can get something like a supermicro x9scm-f + a dual core cpu, e.g., g2030 + 4gb of ecc ram for about 150$, much faster and power consumption should be about half your current setup, note however that the SASLPs will be your next bottleneck, 80MB/s with 8 disks, still twice the speed you're getting now, and you can upgrade those later if you want.

If I wanted to boost the speed with minimal budget, I think I'd try the CPU.  I would agree that the SASLP-MV8 are part of the issue, but I think it more likely that the CPU is the current limitation.  I also run the SASLP-MV8 and I hang 8 drives of it in my main server without major performance issues.  There's plenty of used LGA775 processors available with far greater performance that the Celeron 450.  It is a blind alley in terms of going further forwards though - that would be better accomplished by some of the other changes proposed.  As a first step I would check the compatibility list for the motherboard and BIOS combination (update the BIOS if there is an update) and then look on eBay or elsewhere for a cheap LGA775 CPU.  You should be able to double or quadruple the processing grunt such that the CPU would then no longer be the limitation.  One of the controllers or other bus limitations on the motherboard would then dominate, but things should go a fair bit faster.  Of course, the power consumption would also go up, and if that is a concern then perhaps the approach of a more modern motherboard, processor and RAM would be the way to go, though at significantly greater cost.

  • Community Expert

CPU can help a little but he can't get above 50MB/s with that setup because of the DMI, so IMO only worth it if he can get one almost for free.

  • Community Expert

Here is the completion time which is my new normal on V6.  I had the unRAID UI open for about 2 minutes to check it and take the screenshot. 

 

2016-04-02_12-53-34.png

 

Have you tried to see what your CPU utilization is on the Dashboard?  My CPU utilization is running between 35% and 95% with the  'disable page updates ' unchecked on my Test Bed server (specs below).  Remember that this server is also running dual parity which is an performance hit.  Last scheduled parity check ran in 7 hr, 53 min, 10 sec for basically a 3TB array.  So don't be quite so quick to jump to a conclusion that a new and faster CPU is going to make an dramatic  improvement. 

CPU can help a little but he can't get above 50MB/s with that setup because of the DMI, so IMO only worth it if he can get one almost for free.

Accepted - but a lot of the LGA775 CPUS can be got pretty much for free.  Something like a Core2 Duo E8400 (CPU Passmark = 2180, compares well to the Celeron 450 at a Passmark rating of 634) and can be had for under £6 in the UK.

While the controller and bus limitations outlined above DO account for some of the relatively slow check speeds, they don't account for the further slowdown after you upgraded to v6.    That additional time is almost entirely due to the increased CPU overhead and the old, single-core Celeron, which only scores 634 on PassMark.

 

As Frank suggested above, you should disable page updates ... this alone may get your updates back to the same timing as you had with v5.    If not, there's one other change you can make -- but try disabling the updates first to see if that resolves it.

 

 

Looked back to find details on my older system that uses the same motherboard as yours, but has a dual-core Pentium.    When I upgraded that to v6 the parity check times were 31% longer than with v5;  changing the display settings to "don't update during parity checks" improved it so the parity check was only 6% longer -- a MAJOR improvement.

 

After I had done that, Eric Schultz suggested changing the nr_requests for all of the drives to a lower number ... and THAT change along with the display update change got my checks back to the v5 speeds !

 

Basically, you need to type the following line on the UnRAID console for EVERY drive:

 

echo 8 > /sys/block/sdX/queue/nr_requests

 

... where sdX is, of course, the actual identifier for each drive (sda, sdb, etc.).    No need to do this for your cache drive or USB flash drive.

 

After confirming how well this worked, I simply added all the lines in my GO file.    I believe, however, that this change is no longer needed in the later v6 releases  [i was using 6.1.3 at the time I encountered the issue] ... so try just disabling the page updates first.

 

 

 

  • Community Expert

While the controller and bus limitations outlined above DO account for some of the relatively slow check speeds, they don't account for the further slowdown after you upgraded to v6.    That additional time is almost entirely due to the increased CPU overhead and the old, single-core Celeron, which only scores 634 on PassMark.

 

As Frank suggested above, you should disable page updates ... this alone may get your updates back to the same timing as you had with v5.    If not, there's one other change you can make -- but try disabling the updates first to see if that resolves it.

 

My AMD Semprons 140 and 145 are only rated at 743 and 798 respectively which is not really that much higher. 

 

BTW, you can also run    htop    from the Command Line and it will give the CPU utilization with very little CPU overhead.  Using this Linux OS utility will  quickly provide answer the question as to if the CPU is limiting your parity check speed with your current setup. 

  • Community Expert

The CPU is struggling with so many disks, but changing to a better CPU or any optimizing won't improve parity check speed past 50MB/s, limited by the DMI, maybe this diagram can better help to visualize the main bottleneck with the current setup:

 

width=200http://s9.postimg.org/ty8n46z33/Screenshot_2016_04_03_08_41_22.png[/img]

 

 

For comparison, with a server board like the X9SCM-F, it's possible to use for example 3 x LSI/SAS2LP + 6 Onboard = 30 Disks @ 180/200MB/s (with a powerful enough CPU)

 

width=200http://s9.postimg.org/iael9n9y7/Screenshot_2016_04_03_08_52_29.png[/img]

  • Author

I disabled display updates while parity checks are running.  I ran the htop utility and for the first few minutes of the parity check it was running from the high 80's to 100% After maybe 5-10 minutes it went down to the 60-70% range with occasional spikes up to or around 100%.  It has not been running long enough to really tell but so far it looks to be a few MB/sec faster.  I probably won't let it run for the first cycle though as I will want to copy data to it later and I don't like doing that when parity is running.

 

Sounds like I'm kinda up a creek - replace everything but the drives, power supply and case. :)

 

 

 

  • Author

The CPU is struggling with so many disks, but changing to a better CPU or any optimizing won't improve parity check speed past 50MB/s, limited by the DMI, maybe this diagram can better help to visualize the main bottleneck with the current setup:

 

width=200http://s9.postimg.org/ty8n46z33/Screenshot_2016_04_03_08_41_22.png[/img]

 

 

For comparison, with a server board like the X9SCM-F, it's possible to use for example 3 x LSI/SAS2LP + 6 Onboard = 30 Disks @ 180/200MB/s (with a powerful enough CPU)

 

width=200http://s9.postimg.org/iael9n9y7/Screenshot_2016_04_03_08_52_29.png[/img]

 

Very interesting - thank you.

 

I notice this X9SCM-F diagram shows 4xDMI II.  While it has 3 PCI-e slots connected directly to the CPU I'm assuming this would help for the onboard SATA ports and anything put in the other PCIe slot?

 

With just this upgrade I should see about a 100% bump in parity check speed and would be ready to upgrade the controller cards if/when I wanted to do that?

... Sounds like I'm kinda up a creek - replace everything but the drives, power supply and case. :)

 

Not at all => all you need is a beefier CPU.    Here's a Core 2 Duo E8400 which would work nicely for $7.98 with free shipping [This e-bay listing expires in 6 hrs, but there are others similarly priced].

http://www.ebay.com/itm/Intel-Core-2-Duo-SLAPL-E8400-3-0GHz-1333MHz-6MB-Cache-Socket-775-Processor-1366-/262332086792?hash=item3d1435fa08:g:KYkAAOSwQYZWxjtv

 

v6 will run nicely on the E8400.  It scores 2180 on PassMark ... a very nice bump from the 634 your old Celeron scores.

  • Community Expert

With just this upgrade I should see about a 100% bump in parity check speed and would be ready to upgrade the controller cards if/when I wanted to do that?

 

With the X9SCM (or similar) and a dual core CPU like the G2030, keeping your SASLPs, would get 80MB/s parity check.

 

More than that you'd need to replace the controllers.

I'd expect the same jump in parity speed with the current board if you boosted the CPU to an E8400, or perhaps even a Core 2 Quad.

 

  • Community Expert

Also, for clarification, this board, and all boards based on socket 1155 and 1151 have DMI 2.0, twice the speed of DMI 1.0, so you could use the 6 onboard ports + say a 4 port controller on a DMI slot and still have very good parity check performance.

  • Community Expert

I'd expect the same jump in parity speed with the current board if you boosted the CPU to an E8400, or perhaps even a Core 2 Quad.

 

It's physically impossible to get more than 50MB/s parity check with that board using the current configuration, no matter the CPU used.

I'd expect the same jump in parity speed with the current board if you boosted the CPU to an E8400, or perhaps even a Core 2 Quad.

 

It's physically impossible to get more than 50MB/s parity check with that board using the current configuration, no matter the CPU used.

 

 

My media server has the exact same board (C2SEA) with a dual-core Pentium E6300 (PassMark 1700).  This is from my last parity check:  "Duration: 13 hours, 19 minutes, 32 seconds. Average speed: 83.4 MB/s "

  • Community Expert

I'd expect the same jump in parity speed with the current board if you boosted the CPU to an E8400, or perhaps even a Core 2 Quad.

 

It's physically impossible to get more than 50MB/s parity check with that board using the current configuration, no matter the CPU used.

 

 

My media server has the exact same board (C2SEA) with a dual-core Pentium E6300 (PassMark 1700).  This is from my last parity check:  "Duration: 13 hours, 19 minutes, 32 seconds. Average speed: 83.4 MB/s "

 

Do you have 16 disks going through the DMI?

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.