Poor USB 3 external drive and Unraid performance


Recommended Posts

16 hours ago, dev_guy said:

You might be correct that most modern CPUs can handle the parity calculations without it being a limiting factor.

It's all about I/O speed, and even the fastest spinners are slow compared to CPU regardless of the software.

 

@dev_guy

 

Since we've explained how Unraid works and you still don't understand how striped RAID outperforms Unraid, then I can only conclude that you don't understand how striped RAID works.

 

Do you know how striping allows traditional RAID to perform at greater than single disk speeds?

Link to comment

@JorgeB, thanks for the added info. Some of this is a bit counter-intuitive but I do now better understand how Unraid works, some of the trade offs, and appreciate your help. The drives in this server are a mix of 7200 and 5400 RPM drives. None of them are SMR drives. I would think the parity drive, and the drive currently being used to store the files being written, would dictate the speed not the other drives in the array which have next to nothing being written to them?

 

I've booted this server into Linux and run benchmarks on all the drives. They're all much faster than I'm seeing with Unraid even with turbo write but that's testing them individually. The disks are on an LSI/Avago SAS 9211-8i with IT mode firmware controller which is widely used for Unraid, FreeNAS, and other storage builds, with few complaints about performance. It's in a PCIe 3.0 x16 slot with a fast chipset. So there are no obvious bottlenecks with the hardware.

 

@Constructor I do understand the difference between striped RAID and Unraid. With RAID 5 at least there's a bigger benefit to read performance than write performance. I provided a link supporting that. But even if we consider single drive performance I'm not seeing anywhere near that with Unraid. Ideally the bottle neck would be the USB 3 external drive but the bottle neck is clearly the Unraid OS itself. I can boot the exact same hardware into Linux and copy from a USB 3 external drive to an internal drive far faster than Unraid can manage. I understand Unraid is having to write to both the parity drive and the drive being used but the difference is relatively huge.

 

At this point I'm willing to accept it's all about trade offs and if 40-45 MB/sec and 80-90 MB/sec "turbo" is all Unraid can manage on hardware that's capable of far higher speeds that's the answer to my question even if it's disappointing. Regardless, I appreciate the help and education from all who replied.

Link to comment
2 minutes ago, dev_guy said:

With RAID 5 at least there's a bigger benefit to read performance than write performance.

RAID 5 is faster than single disk for write performance also.

 

3 minutes ago, dev_guy said:

consider single drive performance I'm not seeing anywhere near that with Unraid

You are talking about writing to Unraid. It has already been explained why that is going to be noticeably slower than single drive performance.

 

5 minutes ago, dev_guy said:

the bottle neck is clearly the Unraid OS itself

I guess you could say the bottleneck is the unique Unraid implementation of parity protection. That is traded for other benefits and we all like those other benefits more than we like speed, at least for some things. Many things on our media servers are write once and read many times, so the write speed is less important for that.

 

Of course, if you really need speed for some things on Unraid, you can have that too, with the multiple pools feature in 6.9+

Link to comment
12 minutes ago, trurl said:

I guess you could say the bottleneck is the unique Unraid implementation of parity protection. That is traded for other benefits and we all like those other benefits more than we like speed, at least for some things. Many things on our media servers are write once and read many times, so the write speed is less important for that.

I agree for write once and read many times write performance is less important. But it's still frustrating having large copy operations taking days that would take hours even on a cheap RAID 5 NAS with the same drives. I understand the trade offs but they don't seem to be widely understood or sufficiently transparent. If Unraid was a free open source operating system I'd be less critical. But it's a proprietary paid OS I've paid hundreds of dollars for with both my servers and I'm disappointed. 

Link to comment
36 minutes ago, dev_guy said:

I would think the parity drive, and the drive currently being used to store the files being written, would dictate the speed not the other drives in the array which have next to nothing being written to them?

Not when using turbo write, that requires all drives to be read from (except parity and the drive being written to), so it can't be faster then the slower drive at the moment, see the screenshot below:

 

imagem.thumb.png.07ba20083cacba6a24d3bbeeda9bc3e1.png

 

Also note the total read/write speeds, despite write speed being only 215Mb/s controller(s) are reading @ 1.5GB/s and writing at 643Mb/s (because of dual parity), that why it's much easier to bottleneck with Unraid and turbo write compared with for example a traditional RAID5 array where for 200MB/s of write speed you just need the controller to handle 200MB/s + parity, that would only be about 260MB/s for a six device RAID5 array.

Link to comment

If you have a data load larger than cache can hold you could remove parity and get single disk speed for writes, then rebuild parity after.

 

You joined the forum over 5 years ago. Since then turbo write has been introduced but other than that everything about how the parity array works is the same as it has ever been.

 

I don't expect any changes in this because of the other benefits this gives Unraid, which are not possible in a striped RAID.

 

You don't even have to use the parity array. Just assign a single data disk to it, even a thumb drive as disk1 will work, and put all your disks in btrfs raid pools. You can have a pool of spinners and a pool of SSDs, and they can use btrfs raid5 or whatever. Of course, btrfs raid pools don't have some of the other benefits you get with the parity array.

Link to comment
8 minutes ago, JorgeB said:

Also note the total read/write speeds, despite write speed being only 215Mb/s controller(s) are reading @ 1.5GB/s and writing at 643Mb/s (because of dual parity), that why it's much easier to bottleneck with Unraid and turbo write compared with for example a traditional RAID5 array where for 200MB/s of write speed you just need the controller to handle 200MB/s + parity, that would only be about 260MB/s for a six device RAID5 array.

Interesting. Thanks for sharing that.

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.