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


Recommended Posts

  • 2 weeks later...

Seems we have lost drive size on the (Moo) Areca-connected drives. Also it labeled 3 different drives as Disk 1.

 

PS> The 2 extra drive 1 are 10 & 11. :) missing digits.

 

Drive Identification

Parity: ST8000VN0002-1Z8112 ZA124ASG  8.0 TB   162 MB/sec avg

Disk 1: Moo MD04ACA500_24R6K00RFS9A    138 MB/sec avg

Disk 2: Moo ST6000DX000-1H21_Z4D04L2A    179 MB/sec avg

Disk 3: WDC WD60EFRX-68MYMN1 WD-WX51D6402971  6.0 TB   135 MB/sec avg

Disk 4: ST6000DM001-1XY17Z Z4D23K9N  6.0 TB   155 MB/sec avg

Disk 5: ST8000AS0002-1NA17Z Z840J4R8  8.0 TB   147 MB/sec avg

Disk 6: Moo HGST_HDN724040ALE640_PK1334PCKDKRPX    147 MB/sec avg

Disk 7: Moo HDN724040ALE640_PK1334PCKAX1MX    160 MB/sec avg

Disk 8: ST8000AS0002-1NA17Z Z8406M0L  8.0 TB   149 MB/sec avg

Disk 9: Moo ST4000DM000-1F21_Z3024WY8    157 MB/sec avg

Disk 1: Moo ST4000DM000-1F21_Z3024WMZ    155 MB/sec avg

Disk 1: Moo ST2000DM001-1CH1_Z1F5DKBF    159 MB/sec avg

Cache: Crucial_CT275MX300SSD1 163313AAF7EE  275 GB   186 MB/sec avg

Cache 2: Crucial_CT275MX300SSD1 163313AAFC71  275 GB   190 MB/sec avg

 

Generated on Tower at Mon Oct 10 13:27:49 PDT 2016

Drives scanned 1 time every 10.0%

chart.png.d88fb1a17295ebe5a8b8c393a9061ddd.png

Link to comment

Using latest release, but I'm having an issue on some of my serves, there are some errors at the end, there's no graph and speeds are inflated (32GB SSDs max speed is ~222 and ~443 for the 64GB for this one):

 

diskspeed.sh for UNRAID, version 2.6.1
By John Bartlett. Support board @ limetech: http://goo.gl/ysJeYV
/dev/sdb: 256 MB/sec avg
/dev/sdc: 222 MB/sec avg
/dev/sdd: 257 MB/sec avg
/dev/sde: 257 MB/sec avg
/dev/sdf: 257 MB/sec avg
/dev/sdg: 257 MB/sec avg
/dev/sdh: 257 MB/sec avg
/dev/sdi: 257 MB/sec avg
/dev/sdj: 257 MB/sec avg
/dev/sdk: 257 MB/sec avg
/dev/sdl: 257 MB/sec avg
/dev/sdm: 257 MB/sec avg
/dev/sdn: 258 MB/sec avg
/dev/sdo: 258 MB/sec avg
/dev/sdp: 258 MB/sec avg
/dev/sdq: 258 MB/sec avg
/dev/sdr: 570 MB/sec avg
/dev/sds: 570 MB/sec avg
/dev/sdt: 570 MB/sec avg
/dev/sdu: 570 MB/sec avg
/dev/sdv: 570 MB/sec avg
/dev/sdw: 570 MB/sec avg
/dev/sdx: 570 MB/sec avg
/dev/sdy: 570 MB/sec avg

./diskspeed.sh: line 926: /tmp/diskspeed.sdb.graph2: No such file or directory
rm: cannot remove '/tmp/diskspeed.sdb.graph2': No such file or directory
./diskspeed.sh: line 926: /tmp/diskspeed.sdc.graph2: No such file or directory
rm: cannot remove '/tmp/diskspeed.sdc.graph2': No such file or directory
To see a graph of the drive's speeds, please browse to the current
directory and open the file diskspeed.html in your Internet Browser
application.

 

These are the speeds reported with 2.6 beta, and these are correct as they are the max speed of these SSDs:

 

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

 

HTML without graph attached.

diskspeed.html.zip

Link to comment

What version of UNRAID are you running?

 

V6.2.1, I figured out the errors at the end and the lack of graph, array wasn't started, this wasn't a problem with the beta, maybe check for that on the script?

 

 

For the inflated values, the results are returned from the OS. Try running the following and report the results

dd if=/dev/sdx of=/dev/null bs=1GB count=1 skip=0 iflag=direct

 

Your right about this, doing dd or retesting with beta gives the same inflated results, strangely one of the disks (sdc) is always right, will have to investigate this further.

Link to comment

What version of UNRAID are you running?

 

V6.2.1, I figured out the errors at the end and the lack of graph, array wasn't started, this wasn't a problem with the beta, maybe check for that on the script?

 

Odd about not working if the array isn't started. That's one of the best ways to ensure nothing else is mucking with your results - but I don't think I've ran the script without the array being offline in awhile since my test rig had nothing hitting against it and my dev box is all ram drives. I'll look into that.

Link to comment

For the inflated values, the results are returned from the OS. Try running the following and report the results

dd if=/dev/sdx of=/dev/null bs=1GB count=1 skip=0 iflag=direct

 

Your right about this, doing dd or retesting with beta gives the same inflated results, strangely one of the disks (sdc) is always right, will have to investigate this further.

 

If you're in the position to be able to reboot the box, try running the script immediately after it powering off and then back on. The dd command uses "iflag=direct" to bypass any caching in memory but the drive itself may be caching.

Link to comment

Odd about not working if the array isn't started. That's one of the best ways to ensure nothing else is mucking with your results - but I don't think I've ran the script without the array being offline in awhile since my test rig had nothing hitting against it and my dev box is all ram drives. I'll look into that.

 

Forgot to mention, array disk assignments are also not listed if array is stopped.

 

Any chance the script could test NVMe devices?

Link to comment

Odd about not working if the array isn't started. That's one of the best ways to ensure nothing else is mucking with your results - but I don't think I've ran the script without the array being offline in awhile since my test rig had nothing hitting against it and my dev box is all ram drives. I'll look into that.

 

Forgot to mention, array disk assignments are also not listed if array is stopped.

 

Any chance the script could test NVMe devices?

 

It should test any and all hard drives over 25GB in size that are recognized by the OS unless excluded by a command switch.

 

It uses the output from "fdisk -l" to identify drives.

Link to comment

It should test any and all hard drives over 25GB in size that are recognized by the OS unless excluded by a command switch.

 

It uses the output from "fdisk -l" to identify drives.

 

It's not tested, and it's in the output (/dev/nvme0n1):

 

fdisk -l
Disk /dev/loop0: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 1 GiB, 1073741824 bytes, 2097152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sda: 7.3 GiB, 7864320000 bytes, 15360000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9d450eb9

Device     Boot Start      End  Sectors  Size Id Type
/dev/sda1  *     8064 15359999 15351936  7.3G  b W95 FAT32


Disk /dev/nvme0n1: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device         Boot Start       End   Sectors   Size Id Type
/dev/nvme0n1p1         64 500118191 500118128 238.5G 83 Linux


Disk /dev/sdb: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 5B2528B0-93A0-45DC-99D8-C92C89E727A5

Device     Start        End    Sectors  Size Type
/dev/sdb1     64 5860533134 5860533071  2.7T Linux filesystem


Disk /dev/sdd: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 2393072B-ED5D-404B-8DE0-22B85958003D

Device     Start        End    Sectors  Size Type
/dev/sdd1     64 5860533134 5860533071  2.7T Linux filesystem


Disk /dev/sdc: 477 GiB, 512110190592 bytes, 1000215216 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start        End    Sectors  Size Id Type
/dev/sdc1          64 1000215215 1000215152  477G 83 Linux


Disk /dev/sde: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 922EEA6B-6B46-47A1-B19F-B38C96304617

Device     Start        End    Sectors  Size Type
/dev/sde1     64 5860533134 5860533071  2.7T Linux filesystem


Disk /dev/sdf: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 28B62689-B2AE-4E6F-BF3D-1D70CFCAF156

Device     Start        End    Sectors  Size Type
/dev/sdf1     64 5860533134 5860533071  2.7T Linux filesystem


Disk /dev/sdg: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 479F482E-E958-4969-9403-22DF1D6DC8A7

Device     Start        End    Sectors  Size Type
/dev/sdg1     64 5860533134 5860533071  2.7T Linux filesystem


Disk /dev/sdh: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdh1          64 234441647 234441584 111.8G 83 Linux


Disk /dev/sdi: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start        End    Sectors   Size Id Type
/dev/sdi1          64 1953525167 1953525104 931.5G 83 Linux


Disk /dev/sdj: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdj1          64 234441647 234441584 111.8G 83 Linux


Disk /dev/sdk: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xd2895c60

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdk1          64 234441647 234441584 111.8G 83 Linux


Disk /dev/sdl: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdl1          64 234441647 234441584 111.8G 83 Linux


Disk /dev/md1: 477 GiB, 512110157824 bytes, 1000215152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/md2: 2.7 TiB, 3000592928768 bytes, 5860533064 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/md3: 2.7 TiB, 3000592928768 bytes, 5860533064 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/md4: 2.7 TiB, 3000592928768 bytes, 5860533064 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/md5: 2.7 TiB, 3000592928768 bytes, 5860533064 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

 

Link to comment

Disk /dev/nvme0n1: 238.5 GiB, 256060514304 bytes, 500118192 sectors

 

That's why. My script is coded to look for id's that are 3 or 4 characters long. I didn't even know they could be anything else! I'll change the logic to grab the second value by space and then drop the : off at the end. What I should have done from the start.

Link to comment
  • 1 month later...

What am I doing wrong? I made the script executable with chmod +x diskspeed.sh then when I run it I get the below error.

 

Running unRaid 6.2.4

 

root@Tower:/mnt/user/General/Downloads/Scripts# ./diskspeed.sh

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

Warning: Files in the array are open. Please refer to /tmp/lsof.txt for a list
Performance testing /dev/sdb (Disk 2) at 0 GB (0%)
./diskspeed.sh: line 689: 0 +  : syntax error: operand expected (error token is "+  ")
./diskspeed.sh: line 720: /tmp/diskspeed.sdb.graph1: No such file or directory
rm: cannot remove '/tmp/diskspeed.sdb.graph1': No such file or directory
./diskspeed.sh: line 819: /tmp/diskspeed.sdb.graph2: No such file or directory
rm: cannot remove '/tmp/diskspeed.sdb.graph2': No such file or directory
To see a graph of the drive's speeds, please browse to the current
directory and open the file diskspeed.html in your Internet Browser
application.

 

I have files open in the array (vm streaming plex) so I understand the test won't be accurate till they are stopped.

Link to comment
  • 3 weeks later...

has anyone tried using diskspeed to test against one or two disks rather than the whole array? Do you have to exclude all except the 1 or 2 drives? Just wondering if this was user error on my part or if others experience this as well.

diskspeed.sh -s 11 -5 -o diskspeed3tb.html -x sda,sdb,sdd,sde,sdf,sdg,sdh,sdi,sdj,sdk,sdl,sdm,sdn,sdo,sdp

 

as you can see it still tried to do the drives I excluded

diskspeed.sh for UNRAID, version 2.6.1
By John Bartlett. Support board @ limetech: http://goo.gl/ysJeYV
/dev/sdb: 133 MB/sec avg
/dev/sdc: 131 MB/sec avg
Performance testing /dev/sdd (Disk 1) at 200 GB (10%)
^C

Link to comment

has anyone tried using diskspeed to test against one or two disks rather than the whole array? Do you have to exclude all except the 1 or 2 drives? Just wondering if this was user error on my part or if others experience this as well.

diskspeed.sh -s 11 -5 -o diskspeed3tb.html -x sda,sdb,sdd,sde,sdf,sdg,sdh,sdi,sdj,sdk,sdl,sdm,sdn,sdo,sdp

 

as you can see it still tried to do the drives I excluded

diskspeed.sh for UNRAID, version 2.6.1
By John Bartlett. Support board @ limetech: http://goo.gl/ysJeYV
/dev/sdb: 133 MB/sec avg
/dev/sdc: 131 MB/sec avg
Performance testing /dev/sdd (Disk 1) at 200 GB (10%)
^C

 

Sounds like a bug got in there, I'll check it out.

Link to comment

Anyone know why I am getting this error?  When I used disk speed a year ago it worked great and the only thing that has changed with regards to my is going from 2 GB to 1 GB of memory (one stick went bad).

 

Tower login: root
Linux 3.9.11p-unRAID.
root@Tower:~# cd /boot
root@Tower:/boot# diskspeed.sh

diskspeed.sh for UNRAID, version 2.6.1
By John Bartlett. Support board @ limetech: http://goo.gl/ysJeYV
Performance testing /dev/sdb (Disk 5) at 0 GB (0%)
./diskspeed.sh: line 689: 0 +  : syntax error: operand expected (error token is
"+  ")
./diskspeed.sh: line 720: /tmp/diskspeed.sdb.graph1: No such file or directory
rm: cannot remove `/tmp/diskspeed.sdb.graph1': No such file or directory
./diskspeed.sh: line 819: /tmp/diskspeed.sdb.graph2: No such file or directory
rm: cannot remove `/tmp/diskspeed.sdb.graph2': No such file or directory
To see a graph of the drive's speeds, please browse to the current
directory and open the file diskspeed.html in your Internet Browser
application.

root@Tower:/boot#

 

Attached is a copy of the syslog after doing a reboot.

 

syslog.txt

Link to comment

jbartlett: thanks again for this great script. I used it over the weekend to test out performance of my drives after upgrading my lowly Atom based server to a new Xeon one.

 

I think things looked good, but my PCIe SSD cache drive was so fast I couldn't tell a difference in the chart between all my other drives. I need to re-run the script excluding the SSD cache.

 

Just curious, is there any want to integrate write speed into this script as well?

Link to comment

Anyone know why I am getting this error?  When I used disk speed a year ago it worked great and the only thing that has changed with regards to my is going from 2 GB to 1 GB of memory (one stick went bad).

 

Attached is a copy of the syslog after doing a reboot.

 

Sorry, a syslog won't help. If you run the program with the -l option, it'll create a log file as it runs. What version of UNRAID are you using? Also try running version 2.5 in the first post.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.