The Server Primer, Part 1

Memory

Server memory works very much like consumer memory; the current standard is DDR2 (double data rate SDRAM generation 2). DDR2 works on a larger prefetch (4 instead of 2) and thus reaches double the interface clock speeds of DDR1.

Compared to consumer memory, professional memory features two different mechanisms to guarantee data integrity. Registered memory carries a little chip, the so-called "register", which takes care of renewing the signal. While conventional memory cannot support more than four or maybe six DIMMs - the signals have to pass all memory modules and thus degenerate - registered memory allows the system to have eight memory modules easily. In addition to the register, DDR2 memory also features on-die termination, which prevents signal reflection.

The second mechanism is error correcting code (ECC). Instead of storing 64 bits, ECC DIMMs carry an additional memory chip so they can store 8 extra bits for the sake of data recovery. As a consequence, single-bit errors can easily be corrected on the fly.

All AMD Opteron processors for Socket 940 require registered DDR333/DDR400 memory, while the Socket F (Socket 1207) generation requires registered DDR2-667 memory.

Fully Buffered DImms - Serial Memory

Fully-Buffered DIMMs (FB-DIMMs) use a so-called buffer component, which is an energy-consuming IC that performs a translation of the parallel signals into a serial sequence. The primary purpose is to line up more than eight memory modules per controller. With Intel’s quad channel DDR2 memory controller, you can deploy eight 2 GB DIMMs for each of four channels, if a motherboard maker is willing to build the hardware to support it.

FB-DIMMs are more expensive, they get hotter and they don’t perform better than conventional, registered memory. Yet they are the likely future for servers with large memory capacities, and the technology is already being used for the current Intel Xeon platforms.