The first thing you look at when buying a memory module is probably the capacity and memory frequency. But, one aspect most beginner or even intermediate PC enthusiasts overlook when getting RAM is its latency.
RAM latency is the delay a memory module takes to respond to a CPU request. Ideally, you would want to choose a RAM with lower latency. But there are a few factors that need to be taken into consideration, as latency does not entirely improve a RAM’s performance.
So, let’s dive further into the topic,
Understanding RAM Latency
RAM latency is basically the delay it takes for the CPU to receive and process the data from RAM once the memory controller has requested it.
Two factors in particular affect RAM latency, RAM frequency and CL or CAS Latency. Both these values are mentioned in your memory sticks.
In your memory module, you may have seen writing such as 8GB DDR4 3600 CL 18. DDR4 is the Double Data Rate Generation. 3600 is the transfer rate, which is 3600 MegaTransfers per second.
And finally, CL is the CAS Latency or Column Address Strobe Latency and is measured in a clock cycle. In the above example, the CAS latency of the memory module is 18 clock cycles.
Here is the formula to calculate total RAM latency in seconds.
(CL*2000)/transfer rate
Here is a table representing how CAS latency affects memory latency.
Transfer Rate (MHz) | CAS Latency (Clock Cycle) | Total RAM Latency ((CL*2000)/transfer rate) in nano seconds |
4133 | 20 | 9.6 |
4133 | 18 | 8.7 |
3600 | 18 | 10 |
3600 | 16 | 8.9 |
3200 | 18 | 11.2 |
3200 | 16 | 10 |
This clearly makes the memory module with lower CAS Latency the winner, given that the RAM speed is the same.
If you are unsure about choosing between two memory modules, we recommend getting a RAM with higher frequency and lower CL.
You can also use the formula mentioned above to calculate the RAM latency to find out the exact delay in nanoseconds. And choose one with the lower latency.
Memory Timings
Besides the DDR version, RAM’s transfer speed, and CL, you might also have seen a sequence of numbers on the memory sticks, which looks something like 20-19-19-40.
Data on a RAM is saved on rows and columns. These number represents the number of clock cycle to access data from said rows and columns.
Memory timings represent the following.
tCL-tRCD-tRP-tRAS
- tCL: This is the CAS Latency of your memory stick. This is the total clock cycle required to fetch the data once it has been requested by the CPU, or memory controller in specific.
- tRCD: This is Row address to Column Address Delay. This is the number of clock cycle required to open a row and access the required column to access data in the memory.
- tRP: This is Row Precharge Time. This means the total clock cycle needed to access a separate row with a selected column.
- rRAS: This is Row Active Time. This is the minimum clock cycle a row needs to stay open to access the data.
If you are looking to overclock your RAM, you can lower these values in the BIOS. This allows the RAM to access data much more quickly, lowering the latency. However, in doing so, you will also need to amp up the voltage.
Higher Transfer Rates or Lower CAS Latency
Ideally, you would want to go for a RAM that has a lower overall RAM latency using the formula from above. But that does not mean going for a DDR4 2133 CL 13 RAM instead of a DDR4 3200 CL 20 as both of them have similar overall latency.
Although both of these memory modules have the same RAM latency, it is always a good idea to go for memory with higher transfer rates rather than CAS latency. This is because the speed at which RAM and the CPU communicate directly impacts how fast the application and the OS respond, and makes the system perform better.
In conclusion, when choosing RAM for a specific capacity, the first priority should be the frequency or the transfer rates. And in that frequency range, choosing a module with lower CAS latency would be better.
Mixing RAM With Different Memory Timings
Another query most users have is, whether it is possible to mix different memory sticks with variable timings. Yes, it is entirely possible for you to do this. If you are running two memory sticks on dual channels, both the memory will run on a lower of the two frequencies.
In case of memory timings, the system will use the memory timing that has the higher clock cycles.
However, there are several cases where mixing memory with different frequency, memory timings, and even capacity caused random system crash and frequent blue screen of death (BSOD) error.
Here, even on my own laptop, I faced the same issue a while back when mixing two different memory modules. I used an 8 GB DDR4 2600 CL 19-16-16-34 and an 8 GB DDR4 3200 CL 20-15-15-39.
The system had a maximum RAM frequency of 2400. So, both memory were running at 2400. And the RAM with lower latency, i.e., 8GB DDR4 2600 ran on memory timings 20-15-15-39.
This caused the system to frequently display a BSOD error. To fix this, I used a memory module similar to the second RAM, i.e., 8GB DDR4 3200 CL 20-15-15-39.
The system was an old HP laptop, so that could be why it didn’t support memory with different memory timings. However, I also tried mixing memory with my office setup (newer motherboard and CPU) and did not run into any BSOD error.
So, mixing memory with different timings may or may not work, depending on your system. But my recommendation would be to use identical memory to save yourself from any problems in the future.