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.

Drive performance testing (version 2.6.5) for UNRAID 5 thru 6.4

Featured Replies

Finished my first lot of testing today.

 

 

/dev/sdb (Disk 1): 119 MB/sec avg

/dev/sdc (Disk 3): 171 MB/sec avg

/dev/sdd (Disk 2): 112 MB/sec avg

/dev/sde (Parity): 143 MB/sec avg

/dev/sdf (Disk 7): 120 MB/sec avg

/dev/sdg (Disk 5): 120 MB/sec avg

/dev/sdh (Disk 8): 118 MB/sec avg

/dev/sdi (Disk 6): 116 MB/sec avg

/dev/sdj (Cache): 382 MB/sec avg

/dev/sdk (Disk 4): 92 MB/sec avg

 

Am going to run a extended smart test on sdk as there is no reason for the drive to be that much slower than the rest.

 

Edit : "Seagate Barracuda LP 2 TB 5900RPM SATA 3 GB/s" that may have something to do with the speed lol.

rsz_chart.png.df3fcd55ac799cc293010053c4134adf.png

rsz_chart_1.png.82749a34986b95dd4f8a23d3ddf53721.png

chart_3.png.e258ba9118dcb746c0736413040c8559.png

  • Replies 458
  • Views 107.1k
  • Created
  • Last Reply

Finished my first lot of testing today.

 

 

/dev/sdb (Disk 1): 119 MB/sec avg

/dev/sdc (Disk 3): 171 MB/sec avg

/dev/sdd (Disk 2): 112 MB/sec avg

/dev/sde (Parity): 143 MB/sec avg

/dev/sdf (Disk 7): 120 MB/sec avg

/dev/sdg (Disk 5): 120 MB/sec avg

/dev/sdh (Disk 8): 118 MB/sec avg

/dev/sdi (Disk 6): 116 MB/sec avg

/dev/sdj (Cache): 382 MB/sec avg

/dev/sdk (Disk 4): 92 MB/sec avg

 

Am going to run a extended smart test on sdk as there is no reason for the drive to be that much slower than the rest.

 

Edit : "Seagate Barracuda LP 2 TB 5900RPM SATA 3 GB/s" that may have something to do with the speed lol.

 

I recently ran this after adding a new disk. For some reason it reported speed of 60ish with everything else well over 160. Kind of had me worried so I ran it again. Second run it was in the middle of the pack as I would expect.

  • Author

Running it with the array stopped with give you the best results because it guarantees the drive isn't being accessed.

Is there some kind of database around that shows what speed people are getting from different drives. I know it would be a pain staking task, but would help when deciding what drive to buy based on peoples optimal results.

  • 3 weeks later...

Maybe I'll see if there is a way to update the firmware via command line in Linux.

Did you ever find a way to do it in Linux?

So,

 

I'm trying to figure out why unrars aren't hitting cache speed (and unrar'ing seems to choke the system - everything *should* be on cache, but system stats during unrar are more consistent with array drive speeds and WebGui becomes unresponsive, and nope, doesn't seem to be CPU or RAM).

 

In the process, I got this interesting result from the diskspeed graph...

 

CLI output is

 

diskspeed.sh for UNRAID, version 2.4

By John Bartlett. Support board @ limetech: http://goo.gl/ysJeYV

 

/dev/sdb (Cache): 558 MB/sec avg

/dev/sdc (Disk 4): 158 MB/sec avg

/dev/sdd (Disk 1): 159 MB/sec avg

/dev/sde (Disk 2): 163 MB/sec avg

/dev/sdf (Parity): 158 MB/sec avg

/dev/sdg (Disk 3): 156 MB/sec avg

 

 

and then, that confusing little line on the bottom - is it a bug in the script, or is there something else at play I'm missing here ?

diskspeed_graph.jpg.8fe1e0ab38873099fa3923b5a9c1e5c3.jpg

Are you trimming your SSD? in my experience Samsung SSDs writes are terrible without trim.

Are you trimming your SSD? in my experience Samsung SSDs writes are terrible without trim.

 

Thanks for the hint - normally, I *should* be... what I don't quite get is if I borked my config somehow, and ended up with a parity-protected cache drive or something stupid, or if there's something else at play that generates that bottom result.

 

 

Thanks for the hint - normally, I *should* be... what I don't quite get is if I borked my config somehow, and ended up with a parity-protected cache drive or something stupid, or if there's something else at play that generates that bottom result.

 

No, your SSD is assigned to cache, so it can't be part of the array, the correct read speed is the one shown on the graph, but by what you describe what you have are slow writes, by default cache is not trimmed, you have to install the dynamix trim plugin.

 

 

No, your SSD is assigned to cache, so it can't be part of the array, the correct read speed is the one shown on the graph, but by what you describe what you have are slow writes, by default cache is not trimmed, you have to install the dynamix trim plugin.

 

Awesome, thanks !

  • 4 weeks later...
  • Author

I've been testing version 2.6 on both UNRAID 6.1.9 and 6.2 RC2 (looks good!) and I decided to run a test every 2% on a WD Red 6TB Pro since I've been very impressed with the speed on the 1.2TB platters and wanted to share.

 

Avg Speed: 180MB / Sec

WD_Red_6TB_Pro.png.281cf4db14ac0085814aabf536744158.png

Nice  8)

 

Can't wait for the v6.2 compatible release!

  • 4 weeks later...

just want to say thanks for the script, nice and usefull :)

So this utility is giving me good read speeds on all my drives (90MB/s for green drives, 120MB/s for red drives, 400MB/s for SSD cache)!

 

However, my write speeds are terrible... 20MB/s or so. Copying large files using Midnight Commander.

 

Any ideas off the top of your heads what may be causing this?

 

PS: Great utility!

  • Author

So this utility is giving me good read speeds on all my drives (90MB/s for green drives, 120MB/s for red drives, 400MB/s for SSD cache)!

 

However, my write speeds are terrible... 20MB/s or so. Copying large files using Midnight Commander.

 

Any ideas off the top of your heads what may be causing this?

 

PS: Great utility!

Writing utilizes the parity drive so it'll always be worse off. There's an option with 6.2 to speed up writes by having all drives spun up but I don't know if it's in earlier versions.

  • 3 weeks later...

I am just about to upgrade my server with a Dell Perc H200, currently my MB (Intel S5500WB) only supports SATA 300 and the Perc H200 should give me SATA 600 while also allowing expansion options down the road.

 

I am running unRAID 6.2 RC4 at the moment and I know the script currently does not support 6.2.X. I am wondering, is it worth my while waiting on an update to this script in the near future to test the before/after difference in drive speed or will you be waiting until unRAID 6.2 Final prior to releasing an updated script?

 

Thanks a million for you work on this.

 

 

 

 

  • Author

I hope to have the 6.2 supported version available this week. The tests are working but the graphs are buggered.

  • 4 weeks later...
  • Author

Diskspeed version 2.6a Beta version that supports UNRAID 6.2. Still functions for 5.x and 6.x

 

It doesn't yet identify Parity 2 or the 2nd & higher cache drives so it'll list those by their SDx identifier. Still need to figure out how to identify those.

 

Please test to see if it's operating as desired for you.

diskspeed_2.6a.zip

Please test to see if it's operating as desired for you.

 

Thanks, used it on my test server, graph is correct but results below are not.

 

Edit: results on the console are correct:

 

diskspeed.sh for UNRAID, version 2.6 beta
By John Bartlett. Support board @ limetech: http://goo.gl/ysJeYV

/dev/sdb: 223 MB/sec avg
/dev/sdc: 221 MB/sec avg
/dev/sdd: 221 MB/sec avg
/dev/sde: 221 MB/sec avg
/dev/sdf: 222 MB/sec avg
/dev/sdg: 223 MB/sec avg
/dev/sdh: 222 MB/sec avg
/dev/sdi (Disk 1): 443 MB/sec avg
/dev/sdj: 222 MB/sec avg
/dev/sdk (Disk 2): 443 MB/sec avg
/dev/sdl: 441 MB/sec avg
/dev/sdm: 444 MB/sec avg
/dev/sdn: 443 MB/sec avg
/dev/sdo: 443 MB/sec avg
/dev/sdp: 441 MB/sec avg
/dev/sdq: 443 MB/sec avg

chart.png.fe32e70cfd7fdb12e728199002a138c3.png

  • Author

Inventory list is giving the same speed on what it thinks are unassigned drives. Odd, I'll check into that. Thank you!

It doesn't yet identify Parity 2 or the 2nd & higher cache drives so it'll list those by their SDx identifier. Still need to figure out how to identify those.

 

Currently, Parity2 is disk 29.  I don't know if it always will be though.  That's MAX_ARRAYSZ - 1 perhaps.  The 'vars' have it, and the Cache drives (cache, cache2, cache3, etc), with their drive symbols.

  • Author

It doesn't yet identify Parity 2 or the 2nd & higher cache drives so it'll list those by their SDx identifier. Still need to figure out how to identify those.

 

Currently, Parity2 is disk 29.  I don't know if it always will be though.  That's MAX_ARRAYSZ - 1 perhaps.  The 'vars' have it, and the Cache drives (cache, cache2, cache3, etc), with their drive symbols.

You're describing PHP variables I believe, this is a bash script.

It doesn't yet identify Parity 2 or the 2nd & higher cache drives so it'll list those by their SDx identifier. Still need to figure out how to identify those.

 

Currently, Parity2 is disk 29.  I don't know if it always will be though.  That's MAX_ARRAYSZ - 1 perhaps.  The 'vars' have it, and the Cache drives (cache, cache2, cache3, etc), with their drive symbols.

You're describing PHP variables I believe, this is a bash script.

While I'd like to learn PHP, I haven't yet.  I only use bash here so far, and not very good at it, get very frustrated with the picky syntax.

 

I haven't parsed the 'vars' myself, but looks straightforward, very consistent construction, look at vars.txt in the diagnostics.  I'm sure there's code to do it somewhere already, and code you can base it on in bonienl's work, and probably others too.  If I were doing it, I'd probably skip creating an array of the drives and their info, just grab the vars as a string blob and string search it, since you only need minimal info from it.

  • Author

It doesn't yet identify Parity 2 or the 2nd & higher cache drives so it'll list those by their SDx identifier. Still need to figure out how to identify those.

 

Currently, Parity2 is disk 29.  I don't know if it always will be though.  That's MAX_ARRAYSZ - 1 perhaps.  The 'vars' have it, and the Cache drives (cache, cache2, cache3, etc), with their drive symbols.

You're describing PHP variables I believe, this is a bash script.

While I'd like to learn PHP, I haven't yet.  I only use bash here so far, and not very good at it, get very frustrated with the picky syntax.

 

I haven't parsed the 'vars' myself, but looks straightforward, very consistent construction, look at vars.txt in the diagnostics.  I'm sure there's code to do it somewhere already, and code you can base it on in bonienl's work, and probably others too.  If I were doing it, I'd probably skip creating an array of the drives and their info, just grab the vars as a string blob and string search it, since you only need minimal info from it.

 

I'd love to get the vars and parse it out, I just can't think of a way yet to be able to guarantee it. For example, I could use wget to fetch the var page but if they have security in place to access the admit, it wouldn't allow it.

 

I'm using the output mdcmd and it lists the Parity 2 drive in slot 29 but no mention of the cache drives.

It doesn't yet identify Parity 2 or the 2nd & higher cache drives so it'll list those by their SDx identifier. Still need to figure out how to identify those.

 

Currently, Parity2 is disk 29.  I don't know if it always will be though.  That's MAX_ARRAYSZ - 1 perhaps.  The 'vars' have it, and the Cache drives (cache, cache2, cache3, etc), with their drive symbols.

You're describing PHP variables I believe, this is a bash script.

While I'd like to learn PHP, I haven't yet.  I only use bash here so far, and not very good at it, get very frustrated with the picky syntax.

 

I haven't parsed the 'vars' myself, but looks straightforward, very consistent construction, look at vars.txt in the diagnostics.  I'm sure there's code to do it somewhere already, and code you can base it on in bonienl's work, and probably others too.  If I were doing it, I'd probably skip creating an array of the drives and their info, just grab the vars as a string blob and string search it, since you only need minimal info from it.

 

I'd love to get the vars and parse it out, I just can't think of a way yet to be able to guarantee it. For example, I could use wget to fetch the var page but if they have security in place to access the admit, it wouldn't allow it.

 

I'm using the output mdcmd and it lists the Parity 2 drive in slot 29 but no mention of the cache drives.

 

When you use wget to read localhost (or 127.0.0.1) then no username/password verification is required. This allows you to run a script on the system and let it inquire locally.

 

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.