• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

Memory and Cas Latency

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

dqtus

Registered
Joined
Dec 31, 2005
Hi, sorry I'm sure this has been asked but I wanted to flush out my very limited knowledge about memory speed and cas latency and DDR2 and DDR3. If you know of a good primer, then please do link.

So my question is, while looking for memory to buy, is there a formula that can translate exactly how fast each unit is in theory. For example, I know the lower the cas latency the better but the new memories DDR3 have high latency but I figured they make up for it in speed since it can transfer 8 gigabits. So my burning question is, if I have x amount of data to be transfered by this memory with Y MHZ and Z cas latency and any other factors I should take into account, what would be the formula to find out the speed. I figured I would use this to compare memory types and figure out the best buy. Hope this isn't too confusing of a problem. Thanks!
 
To compare latency, you need to calculate the actual latency at the speed it is running

DDR3-2000 CL8 has an actual latency of: 1/1.0 ns * 8 = 8 ns
DDR2-800 CL5 has an actual latency of: 1/0.4 ns * 5 = 12.5 ns

(1 / real frequency) * latency
 
The problem is that theory and practice don't always cooperate. In theory, 820 MHz 4-4-4 would equal 1040 MHz 5-5-5, but look what happens:

Here is the same FSB (410) with the same multiplier, but with different RAM timings and speed because of ratio:

4-4-4 1:1
cachemem4-4-4.png

5-5-5 4:5
cachemem555.png

I gain about 10% at these settings

I've seen a few who've had better scores with lower latency vs. speed, but as a general rule, speed wins out on Intel based systems.
DDR3's cost to benefit ratio is quite skewed compared to DDR2. You might be better served by spending the money on a better processor/mobo.
 
The two Speed and Latency are differing aspects the speed is how much data that theoretically can move through the memory the latency's have more to do with the CPU's ability to work with the data in memory they are two independent items and should not be confused. That being said it really depends on your processor and software usage. Most processors can not even saturate the available theoretical bandwidth even in synthetic benches. The amount of memory you have also makes a difference there are many so variables involved that it aint even funny and to try and explain them would only draw criticism from members who think they know better and have no way to back it up. That being said get the best DDR2 you can with the tightest timings.

Here is an example mind you that diffrent CPU architectures act differently:

REAL.JPG

If this helps. I would suggest doing some testing to see what your best is don't rely on our half assed opinions.

Notice that the more CPU intensive tasks benefit more from timings and those that require less CPU and more throughput eat the bandwidth.
 
Last edited:
The two Speed and Latency are differing aspects the speed is how much data that theoretically can move through the memory the latency's have more to do with the CPU's ability to work with the data in memory they are two independent items and should not be confused.

The latency also has an influence on data throughput.
 
The latency also has an influence on data throughput.

Yes it does but only insofar as the CPU manipulating the data being pushed through memory there really has to be a balance and no formula will work for that only testing with a particular setup. Remember that timings have to do with the CPU and imposing a wait state on the CPU.

Thinking about it I might have worded that post better How about this: The CPU can only directly interact with data in memory in cycles and this is where latency comes in the lower the latency's the more data the cpu can interact with and hence increased throughput. This will change if there is not enough bandwidth and the pipes become saturated the memory speed must be increased and this may affect timings but may be a necessity to allow for unplugging of the pipe. As I said earlier OP should test.
 
Last edited:
ok thanks everyone for the input. So I guess there is no definitive answer then since it'll depend on what I do. I'm planning on building a new system and looks like the DDR3 is beyond my budget right now so I was trying to figure out which DDR2 to invest in. I kind of want to settle for DDR2 1200 with a quad core processor. Btw, when the mobos say memory standard is this, does that mean I need to have that memory speed
 
DDR2 on ddr2 boards ddr3 on ddr3 boards
a ddr2 board will generally do from 400-1066 if you buy faster it wont hurt as this gives you more overhead:)
 
ok thanks everyone for the input. So I guess there is no definitive answer then since it'll depend on what I do. I'm planning on building a new system and looks like the DDR3 is beyond my budget right now so I was trying to figure out which DDR2 to invest in. I kind of want to settle for DDR2 1200 with a quad core processor. Btw, when the mobos say memory standard is this, does that mean I need to have that memory speed

That is the native speed supported by the board. Most mobos made to OC will allow you to change the FSB/RAM ratio and run the RAM faster than the "native" support speed.
Most of the 2x2GB 1066 kits use Powerchip ICs (Reapers, GSkill PK, Mushkin XP, Dominators). They will hit ~1100 MHz at 5-5-5-15 2.0v
Reapers are the cheapest of those right now at the Egg.
If you want faster, GSkill Pi 1100s use different ICs and will hit ~ 1160 5-5-5-15 2.0v (these are estmate based upon reviews and fellow board posters).
Anything faster is uber-expensive.
 
ok thanks everyone for the input. So I guess there is no definitive answer then since it'll depend on what I do. I'm planning on building a new system and looks like the DDR3 is beyond my budget right now so I was trying to figure out which DDR2 to invest in. I kind of want to settle for DDR2 1200 with a quad core processor. Btw, when the mobos say memory standard is this, does that mean I need to have that memory speed

I have 8 gigs of this ram arriving today from the egg 1150: (Free shipping)

http://www.newegg.com/Product/Product.aspx?Item=N82E16820227406

I am hoping it does well in my board, I plan to post some results I hope in the near future. Could be another option for the OP of relatively affordable 1100+ ram.
 
ok thanks everyone for the input. So I guess there is no definitive answer then since it'll depend on what I do. I'm planning on building a new system and looks like the DDR3 is beyond my budget right now so I was trying to figure out which DDR2 to invest in. I kind of want to settle for DDR2 1200 with a quad core processor. Btw, when the mobos say memory standard is this, does that mean I need to have that memory speed

Btw in your sig the 940 is 2.93Ghz not 3.2:p
 
Difference between latency and delay

Everyone here is absolutely right that CAS latency is going to impact performance differently depending on workload. To understand more deeply WHY it impacts performance, you need to see where it imparts delays and where it (effectively) does not.

Let's use a 1333MHz DDR3 as an example. Since it's DDR, the data rate is 1333MHz, but the clock speed is actually 666MHz or in other words, the clock period is 1.5 nanoseconds.

CAS latency is the interval between when a READ command is issued to the RAM and when the requested data appears on the data bus. If your CAS latency is 9, then that means there's a delay of 13.5ns between when request and receipt of data. But keep in mind that this is a latency. More read commands can be issued even before the data has arrived for the first request. With aggressive out-of-order processors like the Core 2 and Core i7, there is a fair amount of opportunity to do this. (Multi-core doesn't actually help in this regard; that actually creates more competition to access different rows, which is a whole other discussion.)

One example of a situation where you can hide the latency is when large amounts of data are being copied linearly. The CPU makes back-to-back read requests that can be issued to the memory back-to-back, so the only time that you actually observe a delay caused by CAS latency is when either it has to switch to writing, or it has to switch memory rows.

By contrast, imagine some scientific app that has a working set larger than the L2 cache. This application is going to hit memory often, and in relatively random order. It would be common for two consecutive reads to hit different memory rows, meaning that they cannot be issued back-to-back, and so that CAS latency turns into delay fixed.

Another factor: Reads are usually issued in whole cache lines. A 64-byte cache line is going to require a burst of 8 cycles at 1333MHz or 4 cycles at 666Mhz. With a CAS latency of 9, reading the line will require 13 cycles.

There are also plenty of situations where the memory speed is largely irrelevant. If the entire working set fits in L2 cache, then the only time memory is hit is as a result of context switch (multitasking). This is being more and more common as cache sizes are growing quadratically.
 
Everyone here is absolutely right that CAS latency is going to impact performance differently depending on workload. To understand more deeply WHY it impacts performance, you need to see where it imparts delays and where it (effectively) does not.

Let's use a 1333MHz DDR3 as an example. Since it's DDR, the data rate is 1333MHz, but the clock speed is actually 666MHz or in other words, the clock period is 1.5 nanoseconds.

CAS latency is the interval between when a READ command is issued to the RAM and when the requested data appears on the data bus. If your CAS latency is 9, then that means there's a delay of 13.5ns between when request and receipt of data. But keep in mind that this is a latency. More read commands can be issued even before the data has arrived for the first request. With aggressive out-of-order processors like the Core 2 and Core i7, there is a fair amount of opportunity to do this. (Multi-core doesn't actually help in this regard; that actually creates more competition to access different rows, which is a whole other discussion.)

One example of a situation where you can hide the latency is when large amounts of data are being copied linearly. The CPU makes back-to-back read requests that can be issued to the memory back-to-back, so the only time that you actually observe a delay caused by CAS latency is when either it has to switch to writing, or it has to switch memory rows.

By contrast, imagine some scientific app that has a working set larger than the L2 cache. This application is going to hit memory often, and in relatively random order. It would be common for two consecutive reads to hit different memory rows, meaning that they cannot be issued back-to-back, and so that CAS latency turns into delay fixed.

Another factor: Reads are usually issued in whole cache lines. A 64-byte cache line is going to require a burst of 8 cycles at 1333MHz or 4 cycles at 666Mhz. With a CAS latency of 9, reading the line will require 13 cycles.

There are also plenty of situations where the memory speed is largely irrelevant. If the entire working set fits in L2 cache, then the only time memory is hit is as a result of context switch (multitasking). This is being more and more common as cache sizes are growing quadratically.

And here we have another great explination and will attention be paid I hope so as I and others have said thousands of times it is about what you do with the ram not how fast you can run it take a look at the chart and see what I have said and what was just explained and consider that every time you loosen timings to increase your OC you cause a loss of CPU cycles.

Buy the best ram you can or drop your memory multi to tighten timings and rev the ram back up again.
 
So are you saying that latency is more important than speed?

I am saying the two are separate items intrinsically tied to each other and speed is useless if your timings suck because your CPU is sitting idol waiting for the memory.
Speed and timings are both important as they are separate and also intertwined and my issue is that timings are ignored in pursuit of higher clocks and this can cause performance degradation. You need enough bandwidth to satisfy the CPU, more than that is a real world waste. The only way you see a benefit is in synthetics and a couple of real world situations. As I have said test your systems with different timings and memory speeds. The Apex will be the fastest ram you can get while maintaining timings even if it means buying DDR2 1200 6-6-6 and backing off the speed to get 4-4-4 and around 900.
 
Last edited:
Back