If I have two or more memory modules, can I get a system to use them in RAID-1 ("RAIM"?) as a poor-man's ECC?

  • RAID 1 and ECC are different in purpose. The first prioritizes the availability of your data saving your bacon when a storage device fails. The second works to guarantee the integrity of your data saving your bacon when what was stored isn't what is later retrieved from the storage device. Of course these two technologies are often used together, but one isn't a replacement (nor direct equivalent) of the other. – I say Reinstate Monica Nov 8 '14 at 13:10

It is possible to use RAM in something like RAID1 mode - with many server mainboards (at least IBM and HP), that provide this feature under different names, "Memory Mirroring" being the one I most often read.

I do not think, that any of these will work with non-ECC RAM: If the two memory modules disagree about the value stored at an address, and no ECC exists, how should the system know, which of the values to use as correct, and which to discard as wrong?

This is a classic "split-brain" problem, that is hard to solve whenever a cluster of exactly 2 members work together. Things are easier in storage: Disks have their ECC built-in, so silent corruption without a read failure or other detection is less likely by orders of magnitude.

| improve this answer | |
  • RAID1 has this problem with disks too, doesn't it? – user1686 Nov 5 '14 at 8:58
  • @grawity As I wrote: The primary failure mode of a Disk is not silent corruption of data: The drive itself will re-read (and ultimately fail) on a CRC check, so this is quite rare although it does happen. With non-ECC RAM the problem is, that this silent corruption is the primary (and close to only) failure mode. – Eugen Rieck Nov 5 '14 at 10:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.