Download System Memory Buying Guide

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Immunity-aware programming wikipedia , lookup

Random-access memory wikipedia , lookup

Transcript
System Memory Buying Guide
Why Do I Need Memory?
Do you run multiple programs at the same time, or play massive games featuring hundreds or
even thousands of individual character units? If your system slows down significantly under
these circumstances with extremely dull responses and your hard drive LED is blinking at an
extremely rapid rate, you may need to add extra memory to your computer.
The memory we refer to here is the main memory in a computer system, also known as RAM
(Random Access Memory). It is essentially the computer’s workspace - the place where
computer temporarily store data and programs. More memory allows you to run more
programs simultaneously, and to store a greater amount of data for faster access by your
computer (mostly the processor). Of course, memory performance is an important factor to
consider as well, since faster memory allows more data to be transferred in a given time.
RAM cannot retain data when power is turned off. This volatility means that this type of
memory is not used as long-term storage.
What Are the System Memory Types?
Memory technologies are developing all the time, although not at the pace of processors.
There are many different types of memory products offered today, and they aren’t always
compatible with each other. The memory you buy comes in the form of memory modules,
which are constructed of memory chips and PCBs (Print Circuit Board). The most common
type of memory module is the DIMM (Dual In-Line Memory Module), which is capable of
transferring 64 bits of data per cycle.
System memory support depends on your motherboard (technically, it is the memory controller
in the motherboard chipset (Intel) or a processor’s integrated memory controller (currently in
some AMD products) that determines memory support). It is therefore vital that you determine
the memory type and speed support of your motherboard (or processor) before choosing the
memory product to purchase.
SDRAM
Synchronous Dynamic Random Access Memory: SDRAM has a synchronous interface. It
waits for a clock pulse before transferring data and is therefore synchronous with the computer
system bus and processor. This greatly improves performance over asynchronous DRAM.
SDRAM is not as popular as it once was and may be used during upgrades. SDRAM modules
usually come in the form of 168-pin DIMMs.
RDRAM
Rambus Dynamic Random Access Memory: This is a type of synchronous DRAM created by
the Rambus Corporation. RDRAM features an architecture designed to achieve high
bandwidth, it is used in the Sony PlayStation 2, early Pentium 4 desktop systems and other
applications. The XDR DRAM, RDRAM’s successor, is used in IBM’s Cell processor and Sony
PlayStation 3. RDRAM is also mainly used for capacity expansion of old desktop systems and
often come in the form of 184-pin RIMMs/Rambus Inline Memory Modules (16bit).
DDR SDRAM
Double Data Rate: DDR SDRAM sends and receives data twice as often as common SDRAM.
This is achieved by transferring data on both the rising edge and the falling edge of a clock
cycle. DDR memory is the mainstream memory product today and usually takes the form of a
184-pin DIMM.
DDR2 SDRAM
Second generation DDR memory provides greater bandwidth and other new features such as
On-Chip Termination (OCT). 4 bits of data are moved from the memory array to the I/O buffers
(per data line) each core cycle. This can be described as 4-bit prefetch, as opposed to the
single-bit fetch in SDRAM and 2-bit prefetch with DDR SDRAM. DDR2 is also a mainstream
system memory product, and will be replacing DDR in the near future. DDR2 memory modules
are 240-pin DIMMs.
What Do I Look For In the Memory Specs?
Given a specified memory type, there are still tens or even hundreds of products from different
manufacturers available. They are of course different, both in features and in price. Like many
other computer products, some of these features may not be that important to certain users
depending on their applications and requirements, so it could be helpful to have some basic
understanding of the basic memory specifications to help you figure out which features really
matter to you.
Capacity
Generally speaking, the larger the capacity the more programs you will be able to run
simultaneously (as long as your motherboard and operating system supports it). The capacity
you need should depend on your requirements: for most home users, any more than 2GB
memory will not result in any performance gains (at least for now). You can read our
recommendations in next section for more information.
Speed
Memory speed is a little bit complicated as there are two measurements: operating frequency
(or more accurately, the transfer or data rate) and bandwidth. Bandwidth can be regarded as
how fast the memory transfers data. And of course, the greater the bandwidth, the better off
you are.
SDRAM rated PC100 and PC133 work at 100MHz and 133MHz and provide 800MB/s and
1066MB/s bandwidth respectively. RDRAM utilizes the same rating system as SDRAM - a
PC800 RDRAM operating at 800MHz, provides a bandwidth of 1600MB/s. Please keep in
mind that SDRAM and DDR/DDR2 SDRAM all use 8-byte (64bit) wide DIMM (transfer 8-byte
data per clock cycle), and the common 16bit RIMM utilized by RDRAM is only 2-bytes wide
(transfers 2-bytes of data per clock cycle).
Things are different when it comes to DDR and DDR2 memory. Initially, DDR used the same
rating system as SDRAM, e.g. PC266. This has now been changed to DDR266 instead, which
still means the memory works at 266MHz, providing 2100MB/s bandwidth, which is where the
PC2100 designation comes from. DDR400 memory, by the same rule, is called PC3200 for its
3200MB/s bandwidth. The same rule applies to DDR2 memory, for example, the DDR2 533 is
also called PC2 4200 or PC2 4300 but ‘PC2’ is used here to refer to DDR2 instead. DDR2 800
is the same as PC2 6400 as well.
The bandwidth we refer to here is for single channel scenarios. When memory is used in dual
channel mode, the bandwidth doubles - for instance, dual channel DDR400 provides
6400MB/s (or 6.4GB/s) bandwidth as opposed to 3200MB/s for single channel DDR400.
CAS Latency/Timing
CAS is the abbreviation for Column Address Strobe, which is a signal sent by the processor to
the DRAM indicating a column address. DRAM stores data in a matrix of columns and rows
and data is retrieved from DRAM through CAS and RAS (Row Access Strobe) signals – just
like coordinates on a map.
CAS Latency (or CL), it is the amount of time it takes between a CAS signal assertion and the
initial transfer of the data stream. The CAS Latency is measured in clock cycles. For example,
a CAS Latency of 2 or CL2 means the data is available 2 clock cycles after the CAS signal
prompting. As with any latency parameters in the computer domain, a smaller CAS Latency
value means better performance.
There are other memory latency parameters as well, such as tRCD (Row-to-Column Delay),
tRP (RAS Precharge) and tRAS (minimum bank cycle time), these parameters affect memory
performance as well, but generally not as much as CAS Latency. We often call all these
latency parameters “timing” as well, and a “loose timing” means high latency parameters, in
contrast to “tight timing”.
Other Concerns
ECC/Registered/Unbuffered
ECC stands for Error Checking and Correction. ECC utilized by memory modules uses single
bit error correction, which is capable of detecting and correcting single-bit errors. It will also
detect two-bit and some multiple bit errors, but is unable to correct them. This feature needs a
motherboard’s support, and is usually applied in workstation and server products.
Almost all system memory in PCs today is unbuffered memory. With increasing system
memory, stability and performance deterioration is inevitable since the memory controller has
to address each memory chip on all modules directly. To solve this problem, higher density
systems use registered memory instead, which contains registers as buffers to temporarily
hold data for one clock cycle before it is transferred. This increases the reliability of high-speed
data access to high density memory but sacrifices some performance. Registered memory
modules are typically used only in servers and other mission-critical systems where it is
extremely important that data is properly handled. Motherboard support is necessary as well.
Dual Channel Kits
There are many memory modules shipped in the form of dual channel kits – these are
essentially two identical memory modules in one package, one for each channel. This type of
product is designed for motherboards/systems that support dual channel mode, with two 64-bit
wide channels to provide double the bandwidth of single-channel memory systems. Two
identical memory modules are preferred for dual channel usage because this symmetric
architecture causes less compatibility problems and delivers the highest performance. A dual
channel kit product marked as “1GB (512MB x 2)” means it contains two identical 512MB
memory modules.
Heatspreaders
Almost all manufacturers add heatspreaders to their high-end memory products for better
cooling. As we all know, the surface area exposed to air is what really matters when you are
trying to dissipate heat, and that is where the heatspreader comes into play – it simply spreads
heat over a larger surface area than the memory chips, thus providing more efficient
dissipation. This really makes sense for high-end products since cooling is always vital in high
performance rigs.
Which Memory Best Suits Me?
The most important concern when choosing system memory is compatibility. Make sure your
system can support the memory you are buying. For example, do not purchase DDR2 memory
if your computer only provides DDR memory slots. For brandname PC users, check your PC
manual or manufacturer website/customer service for memory support information (such as
memory type, speed, capacity), and go to your motherboard manual or manufacturer if your
PC was self-built (DIY users). You can also check the memory module maker’s website for this
type of information no matter what type of user you are. Last but not least, figure out how many
empty memory slots there are on your motherboard before purchase - you’ll have to replace
existing memory if all the slots are full.
Mainstream Users
For most users, compatibility may be the only thing that requires attention. Choosing memory
that is compatible for your motherboard/system is enough.
Capacity
512MB or 1GB
Speed/CAS Latency
DDR: DDR 400 CL=2.5/3
DDR2: DDR2 533/667 CL=3/4
Registered/Unbuffered
Unbuffered
A capacity of 512MB is the minimum for today’s computers, and a larger capacity should be
more useful than faster timing/latency parameters when the total memory is under 1GB.
Gamers/Enthusiasts
Performance is vital for gamers pursuing the highest performance. Timing/latency numbers
mean a lot here, as are higher speed ratings, which are definitely preferred – make sure your
motherboard supports them.
Capacity
1GB (512MB x 2) or 2GB (1GB x 2)
Speed/CAS Latency
DDR: DDR 400 CL=2 or DDR 500 CL=2.5
and above
DDR2: DDR2 667/800 CL=3/4
Registered/Unbuffered
Unbuffered
The latest 3D games are very demanding in terms of memory, so 1GB is the standard choice.
Overclockers
Overclockers should look for products with the highest speed ratings (and the fastest latency
parameters). The highest supported voltage should be taken into account as well since you’ll
have to increase voltage when overclocking the memory to the limit.
Capacity
1GB (512MB x 2) or 2GB (1GB x 2)
Speed/CAS Latency
DDR: DDR 550 CL=2.5/3 or DDR 600 CL=3
DDR2: DDR2 667/800/1000 CL=3/4/5
Voltage
DDR: 2.7V and above
DDR2 :2.0V and above
Registered/Unbuffered
Unbuffered
Workstation/Server and Other Crucial Applications
Reliability tops all for these crucial applications since you cannot afford a system crash here.
Workstation and server must usually runs 24 hours a day without a break, so the ECC function
is definitely required for these systems.
Capacity
2GB/4GB or more
Speed
DDR 333/400
DDR2 400/533
ECC
Yes
Registered/Unbuffered
Registered or Unbuffered
Professional software is always memory hungry - especially for 3D related work. 2GB is
absolutely necessary for workstation users. This desire for memory is even truer for servers.
Simply put, the more memory the better - 2GB is just the starting point. Registered memory is
always preferred for servers – actually, most sever motherboards require this, and it is also
recommended for workstations for memory capacities above 2GB.