Memory Bandwidth vs. Latency Timings

By: Ron Merts

Memory Bandwidth vs. Latency Timings

All memory is not created equal, nowadays you need to know which 'flavor' is
best for an Intel or AMD PC if you expect the best performance back from your

When Intel released the i865PE/i875P dual channel core logic alongside the Intel
Pentium 4C processors, the memory game changed forever. With a DDR memory
controller now capable of running dual channel, the Pentium 4 was no longer to
be bandwidth limited as it had been with the i845 series. Those single channel
DDR chipsets, like the i845PE for instance, could only provide half the
bandwidth required by the Pentium 4 processor due to its single channel memory

As the new 800 MHz FSB Pentium 4 processors allowed users to hit never before
seen highs in terms of bus speed, many memory manufacturers were trying to
capitalize on the situation by releasing every increasing degrees of "high
speed" memory.

Unfortunately, to run the memory frequency at the same speed as the FSB (or a
1:1 ratio) almost all the high speed DIMMs (Dual Inline Memory Module) have to
have very lax timings. Often, these times are as low as 3-4-4-8!

Think about it this way, a car built for drag racing can go dead straight super
fast, but cannot maneuver as well as an F1 race car. Likewise, the F1 racer is
good in the corners but will be left in the dust on the drag strip. In other
words, today's high speed memory modules are built for one thing only, and
that's top speed, where timings really aren't considered all that much.

Memory timings play a key role in terms of overall system performance. More so
in 3D based applications which do not need a great deal of bandwidth, but
rather quick access between the various pieces of hardware within the computer.

Confused about memory timings?

When one talks about memory timings they're basically talking about how long
the system has to wait for the memory to be in a ready state before data is
fetched or delivered.

You could think about memory timings as people working at a drive through
restaurant; you place your order then wait for the food to be ready. The lower
the timings are, the faster the computer (and quicker your order comes) is
able to get data from the memory, and the faster the rest of the PC will
ultimately be.

This rule of thumb applies whether you're on an Intel or AMD based system. As
for why there aren't lower timings then 2-2-2-5, JEDEC (the memory governing
body) does not think it's possible for current dynamic memory technology to
run at 0 or 1.

When we refer to timings it is common to quote a four digit number separated
by dashes (ie. 2-2-2-5). The first number always represents CAS (Column
Address Strobe) Latency as it's usually the most important.

Next in line is RAS-to-CAS Delay (Row Address Strobe), RAS Precharge and
Act-to-Precharge Delay (which is always the final, and largest number).

CAS latency is the delay between the registration of a read command and the
availability of the first piece of output data.

CAS latency is measured in
clock cycles.

With all things equal, a stick of DDR memory capable of running 2-2-2-5 will
make the computer operating experience seem faster than a DIMM which may only
run at 3-4-4-8. This is because the delay from when the memory receives an
instruction, retrieves the data, and sends it back out is less.

Where it starts to get confusing is when you has the choice of buying high
speed memory with slow timings. Just about every PC3700+ rated memory module
we've seen uses conservative timings after all. If your answer would be to
buy fast memory with tight timings, I'm afraid you're going to be
disappointed as there are no such modules available yet. So, why are we still
interested in fast memory with slow timings then? Well, the answer goes
something like this....

Why release fast memory with slow timings?

In highly competitive markets, once a major manufacturer releases a new and
innovative product, the rest will surely follow close behind. If one
manufacturer doesn't follow suit, their products are considered 'old tech'.

As always, everything always boils down to money and that's why we have this
dilemma; to run faster memory with slower access times, or run slower memory
with faster access times.

There are two trains of thought on this, the first is that high speed DIMMs
(like PC4000 DDR) can make up for running slower timings by the amount of
bandwidth provided to the processor. Specifically, bandwidth is the amount of
data that can be moved from one given device to another.

Most DIMMs that run tight timings, such as certain PC3200 & PC3500 modules,
have to run the memory at lower MHz than the FSB. However, when overclocking to
extreme speeds these DIMMs are bandwidth limiting the processor. What I mean by
this, is that when the processor requires a great deal of bandwidth, the CPU
will have to wait for another clock cycle before being filled, as the memory is
just not fast enough to keep up at the same pace. Having a large pool of
bandwidth is great when you're working with applications that process a lot of
raw data, such as Photoshop or databases for example.

The other point of view is that CAS2-rated PC3200 & 3500 memory can make up for
the lack of bandwidth because the memory has a lower latency that in effect
moves data between the CPU and memory faster. Programs that do not require a
large amount of bandwidth tend to benefit more from quicker data transfers
between the memory and the rest of the computer such as games or 3D

2-3% Improvement

While bandwidth is still very important to the Intel Pentium 4, it's not as
important as it once was in the i845PE days of single channel memory
controllers. Thanks to the i865PE/i875P's dual channel memory controller things
are much brighter. On average, the system with the memory running at 400 MHz
(5:4 memory divider enabled) with aggressive memory timings performed 2-3%
faster than the system using high speed memory with loose timings.

While that may not seem like a lot to most people, it can make a world of a
difference to the enthusiast, especially if you're gunning for that high score
in a clan match where every FPS counts.

It seems as if all the large memory manufacturers/suppliers are afraid to lose
face by not pumping out high speed memory modules with lax memory timings just
so they can list them in their product lines. Many enthusiasts I know, tend to
favor slower memory which allows them to run aggressive timings however.

One might say that the benchmarks we used were stacked against memory that uses
conservative timings, but if you think about it, games and simple 2D
applications are the programs that most consumers run where speedy performance
really is important. That's why we ran the benchmarks we did; office
environments with their servers or workstation PC are more interested in
stability, and overclocking has an element of risk involved for both hardware
and software.

Athlon64 based systems seem to act a lot like the 800 MHz FSB Pentium 4
processors in regard to their memory bandwidth and timings when overclocked.
However, before conclusions can be drawn in this field, more research has to be
done before....

If you're in the market for new memory for your Pentium 4 system and you're
only thinking about gaming performance, then you're best bet is to get DDR which
is rated to run aggressive timings. Some examples include Mushkin's PC3500 Level
II which is rated to run 2-2-2-5 at 217 MHz FSB or Corsair's TwinX-3200LL which
are rated for 2-2-2-5 at 200 MHz.

If you're a newbie/novice overclocker and would prefer to buy something that
takes a little less work while still producing good numbers on your Pentium 4
system, then by all means get some of the high speed DIMMs that are available on
the market. They're not quite as fast as the low latency modules as we've shown,
but they're much easier to set up. Now for AMD systems, because the AthlonXP
cannot hit as high speeds as the Pentium 4 in generalArticle Submission, it is always best to pair
an AMD processor with nice low latency memory for the best results.

For more technical articles go to echie.php


» More on Hardware