What's the difference between unbuffered and fully buffered memory?

I'm not new to computers, but somehow I've missed the fact that there are different types of memory when it comes to being buffered or not. What's the difference between the two? The only thing I've noticed is the price difference between the two.


Solution 1:

Buffered (also called Registered) RAM has additional hardware (a register) that sits between the memory and CPU, and will store data (buffering the data) before it's sent to the CPU. This is meant for reliability in systems that have lots of memory and lots of memory modules (think large servers), because in those systems more memory modules means more electrical demands, so buffering/registering the data reduces electrical load.

You don't really have to concern yourself with it if it's just some home machine, as it does tend to be more expensive (because it's more complex and intended for servers and machines of that class) and slightly slower (because of the memory buffering).

Also, some memory also is classified as ECC RAM, which has additional circuitry to determine if data has errors and correct them if so. It's also more expensive, and intended for reliability, and it's usually a paired feature with buffered/registered memory.