- How much do I need?
- What are the different types?
- DDR SDRAM
- DDR2 SDRAM
- ECC memory
- Mixing memory
- Memory price and brands
- Performance factors
- Dual memory channel
- Buffered and unbuffered memory
Memory price and brands
RAM is very often sold as generic, with no brand name given. This is largely the result of the perception that one PC3200 module is much the same as any other PC3200 module.
There are, in fact, important qualitative differences between memory brands, but these differences are often subtle and hard to identify with specifications alone.
One of the best indications of the quality of a given brand of memory is the warranty offered by the manufacturer. Premium RAM will often come with a lifetime guarantee; more cheaply manufactured modules often only have one year.
Other quality indicators include CAS and other latencies (which we'll touch on shortly), buffering, and the number of chips in a given module.
Overclockers, in particular, need to be cognisant of memory brands, since only quality memory will run at higher than its rated clock speed without frying.
The price of memory is, of course, determined by supply and demand, and high supply in the last five years has resulted in very low prices. If you're going with the lowest-cost option, you can readily pick up 512MB of PC3200 DDR memory for around $70. DDR2 running at 533MHz can be purchased for about $100 for 512MB. There is considerable variation in memory costs across brands, especially for DDR2 memory.
Ultimately, memory performance is about how fast the RAM can deliver data and instructions to the processor. The biggest determinant of that is the RAM's clock speed.
It's difficult to quantify the effect of faster RAM on overall system performance, since much depends on the particular application in use. Applications that use a lot of memory (imaging and video applications for instance) will see the greatest benefit from faster memory. Typically, there is not a huge price premium on higher performance memory. We recommend getting the fastest memory your system can support.
In addition to the clock speed of the memory, there are a number of other, rather more subtle, indicators of a given RAM module's speed. These details are often hard to find, however, especially with memory marketed as "generic". If you're keen on squeezing maximum performance from your PC components, you might want to look into some of the following details.
Dual memory channel
This is actually quite a large determinant of performance, although it has more to do with your motherboard than your RAM.
Many new motherboard chipsets offer a feature called dual memory channel. On a dual memory channel motherboard, RAM slots are given independent data pathways ("buses") to the processor. That is, each memory slot has its own set of wires leading to the processor, which means that it doesn't have to share the wires with other memory slots (we haven't seen motherboards with more than two memory channels; if there are more than two slots, then at least two memory modules will have to share the bandwidth of one channel).
With independent buses, the total amount of data that can be transported from RAM to the processor can be increased vastly, increasing the overall performance of the system. It's like having two traffic lanes instead of one.
This assumes that each memory channel is being used, which requires each memory channel to contain at least one RAM module. On a dual memory channel motherboard, it's better to fill the slots than to leave them open for future expansion. Say, for instance, you have a choice between two 512MB modules and one 1GB module. If you have a dual memory channel motherboard, it's better to get the two 512MB DIMMs -- one for each memory channel.
Dual memory channel motherboards with more than two DIMM slots can get quite complicated, and will often require reference to the motherboard manual to figure out which memory slots to put your modules in. For example, if you have two memory modules and a motherboard with three slots, you may need to fill slots one and three, leaving slot two empty, to make the most of dual-channelling.
Buffered and unbuffered memory
Buffered modules have internal circuitry to help them deal with the electrical load required by servers with huge amounts of memory. Because of the buffer, they're actually slower (but more expensive) than unbuffered memory.
If you're building a regular PC, you'll almost certainly want to get unbuffered memory, which is faster and cheaper. Unless the product description says memory is buffered, you can assume that any commodity memory you find in stores is unbuffered. Some unbuffered modules do have what is called a register, which ensures reliability in data handling, but again, this is not really necessary for standard PC systems.
A key differentiator, especially for premium memory brands, is the speed at which the module can locate data. This is not the raw transport speed, which is usually measured in GB per sec, but the amount of time, in clock cycles, it takes to start transmitting the requested information.
When a memory system receives a request for data, it has to figure out which module contains the desired data. Then it has to switch to that module, and that module has to figure out which of the chips on its board contains the data, then which bank of memory it is in. It then has to call the memory forward before it can be put on the bus for transmission to the CPU. The time it takes to locate and draw on the information before the data even starts to get sent, is called the memory latency.
Memory latency is measured in clock cycles, and has many components. Advanced researchers will encounter tRAS, tRP, tRCD, and command rate as factors in latency, but the most common, and most important, latency factor is known as the CAS (Column Access Strobe) latency.
In DDR SDRAM, CAS latency (sometimes called CL) can be 1.5, 2 or 2.5 clock cycles. In DDR2, it can be 3, 4 or 5. The CAS latency tells us how many clock cycles it takes to access a column of data in the memory banks -- the lower the CAS latency, the better. If you can get DDR memory with a CAS latency of 1.5, it's going to be roughly 5-10 per cent faster overall than one with a CL of 2.5. Remember however, that this is relative: DDR2 has higher CAS latencies than DDR, but makes up for it by having faster clock cycles.