0

Regarding the risk of losing data due to read errors (particularly a stark risk with RAID 0). Going above 0, we are able to hedge against failures at different levels. All of this I understand.

Question: What I'm wondering now is, are there other caveats to be mindful of? One thing I was trying to wrap my head around was the impact on CPU loads. Would the CPU process things any differently?

(I imagined the CPU's inner monologue..) "Whoa, now I'm stripping data and writing to multiple drives! This is different."

But I'm not sure, maybe it doesn't make a difference? If it does, what is the difference, and how does it scale? (say stripping to 2 drives compared with stripping to 8?)

Optional tag-on question: If it turns out that CPU loads are affected in a substantial way, what type of CPU features are better for RAIDs? (Core count, hertz, ect)

Hardware/Software

  • Software: No specific software is in question, other than the very basic OS variety when configuring the array
  • Hardware: I'd be interested in the HDD case as well as the SSD RAID case at a variety of levels -- just to see how/if it scales
3
  • 3
    It might help to mention the hardware in question... software RAID will have an impact on system resources, whereas a hardware RAID solution will not.
    – acejavelin
    Nov 7, 2018 at 13:12
  • @acejavelin - that might as well be an answer... you've hit the nail on the head.
    – Kinnectus
    Nov 7, 2018 at 13:16
  • @acejavelin I updated with a few clarifications, let me know if there is something else I can add to help pose the question. Nov 7, 2018 at 13:18

2 Answers 2

1

What I'm wondering now is, are there other caveats to be mindful of? One thing I was trying to wrap my head around was the impact on CPU loads. Would the CPU process things any differently?

For real hardware RAID, the CPU won't see anything differently from if it were writing to a normal drive. That's part of the point of a hardware RAID implementation, nothing changes upstream of the RAID controller (except possibly the drivers). As such, unless the drivers for the RAID adapter are really terrible, you won't see any CPU related performance differences.

For software RAID, the CPU is of course involved, but unless you're dealing with RAID4/5/6, the stuff being done by the CPU is so trivial that it really doesn't matter most of the time (in fact, the filesystem and the low-level I/O scheduling that are present even without RAID are a pretty large order of magnitude more complex than any of he calculations that need to be done for RAID1/RAID0/RAID10).

For fake hardware RAID as is found in many desktop motherboard's BIOS implementations, it's hard to say without specifics about the exact implementation. Some of them have a dedicated processor that they do the RAID work on (albeit one which is usually not as efficient as a real hardware RAID implementation), others literally just define some configuration options and have the CPU do everything anyway.

If it turns out that CPU loads are affected in a substantial way, what type of CPU features are better for RAIDs? (Core count, hertz, ect)

It depends on the exact implementation, and even on the exact CPU architecture (what matters for one implementation on ARM may not matter at all for the same implementation on x86). As a general rule though, you only really need to be picky about CPU specs for handling of RAID4/5/6, everything else really is so trivial that it just doesn't matter as long as you have a decent system. You also probably want to worry about memory performance for RAID4/5/6 too, because the parity calculations are actually reasonably memory intensive.


A slight aside:

Regarding the risk of losing data due to read errors (particularly a stark risk with RAID 0). Going above 0, we are able to hedge against failures at different levels. All of this I understand.

RAID is not there to save you from data loss (if you're not careful, it can actually increase the risk of data loss). That's what backups are for.

3

The answer is pretty simple, yet vague...

If you are using a hardware RAID solution, the impact on system resources will be negligible and likely not OS dependent.

If you are talking about a software RAID solution, that will definitely have an impact on system resources... However, even being able to generalize the impact is difficult. The amount of variables involved such as number & type of drives, type of RAID implemented, operating system, CPU, RAM, etc. would all be a part of the equation. In some cases, the impact is minimal and others significant enough it must be engineered for it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .