On Thu, 8 Jan 2004, Rob Hooft wrote:
ECC is slower and more expensive, but it will prevent
an eventual memory
error from propagating into disk files thereby potentially corrupting
data. This might be advisable to a project like Wikipedia, but only on
database and/or file servers.
ECC memory is just as fast as non-ECC memory. In fact, they are exactly
the same. ECC modules have more bits to accommodate the error correction
bits. The actual correction data is handled in hardware by the motherboard
chipset and is thus "free". We aren't in the world of 3-chip fake parity
memory of yesturyear.
Memory bit faults are more likely to cause the machine to fail than
corrupt data on disk. Having seen numerous ECC "corrected bit faults"
from various machines and other non-ECC equiped machines simply panic or
just hard lock, I highly recommend the added expense.
(And depending on the quality of your server hardware, you may be REQUIRED
to use registered ECC memory.)
The only thing where I have personally seen that
"expensive pays" is in
SCSI vs. ATA (no experience with SATA): The SCSI protocol is so much
smarter that it can be not 2 but 10 times faster than ATA if addressed
in parallel by concurrent processes. An ftp server working with ATA that
I have used would grind to a standstill whenever a backup was running....
To be fair, SCSI and modern ATA are basically the same command set. The
difference is the physical layer. A SCSI bus will beat an IDE bus EVERY
SINGLE TIME. SATA is much more closely aligned to SCSI, but until there
are "native" SATA drives -- vs. IDE drives with integrate SATA<->IDE
bridges,
I'm staying away from them. (they do exist, it's nearly impossible to
tell without using it.)
(FWIW, I can get 21MB/s from my maxtor IDE drives and 61MB/s from my seagate
fibre channel drives. Seagate's latest 200GB drives get about 50MB/s, but
I've not actually put one to task, yet.)
--Ricky