Skip to main content

PC Memory 101: Understanding Frequency and Timings

(Image credit: Shutterstock)

Buying memory can be an easy process for those who don’t want to put much thought into it. The simplified process boils down to deciding on the capacity you want and accepting whatever someone else wants to sell you, whether that be via an online configurator or an in-store salesperson. And if you need help deciding how much RAM you need, we can help on that front as well. But the short answer is, for most users and gamers, 16GB is the sweet spot.

But Tom’s Hardware has always sought the cutting edge of performance while still considering value --  which is why we overclock. On the memory front, that’s also why we often recommend kits from value-added resellers (VARS) like Patriot, G.Skill, Adata and others, who want you to choose their product for its better performance-to-price ratio. You can find our favorite RAM kits on our Best Memory page, and read our in-depth reviews to see our test results and how we decide which sticks are the best.

But for those who haven’t shopped for memory before, or haven’t done so since the sustained price hikes of the last several years have ended, understanding the memory basics is key to both knowing what to look for in a kit. These key terms will also help you understand why one model performs better or worse than another, even if they both have the same capacity and advertised clock speeds.

Back to the Basics

(Image credit: Corsair)

We’ll focus today on DDR4 because that’s where the industry has standardized over the last four or five years. Most of the terms we’re using today also apply to previous generations of memory. But unless you’re working with a system that’s several years old at this point, you’ll probably be dealing with DDR4.

  • DIMM stands for dual inline memory module: Today’s DIMMs have two 64-bit interfaces, one on each side, and are generally sold as either UDIMMs (aka DIMMs, long DIMMs, etc) for desktop or SODIMMs (small outline DIMMs) for notebooks. Some compact desktop boards use SODIMMs, typically (but not exclusively) to make room for four modules on a motherboard design that might otherwise only support two.
  • SDRAM stands for Synchronous Dynamic Random-Access Memory. Organized in rows and columns of cells in a similar manner to a spreadsheet (or very large table), Random Access Memory is able to access any of those cells in whatever order is instructed by the memory controller. Random simply means that the memory controller doesn’t need to read the entire row to parse the data from the relevant column. Dynamic means that each of the cells must be continuously refreshed to prevent data loss, as opposed to static memory which is typically much slower. All memory in the system is synchronized by an external clock generator.
  • Data Rate is the number of times per second (frequency) that a module sends and receives data. Clock signals resemble a square wave, and Double Data Rate simply means that data is transferred on both the rising and falling edge of the clock signal. Doubling the data rate in this manner allows (for example) a 1600 MHz wave to transfer data 3200 times per second. Because DDR data frequency is twice its clock frequency, it’s often referred to using the term MT/s (mega-transfers per second).
  • DDR4 is the fourth generation of Double Data Rate memory, where each generation has added frequency, capacity, and a few other specifications to the basic standard.
  • IC, or integrated circuit, is a term for the things most end users call “chips.” A DRAM IC typically has an eight-bit interface, though some have 16-bit interfaces.
  • Rank is the term the memory industry has chosen to represent what most of us think of as either banks or sides of a memory module. From the term “DIMM” above, a rank is the collection of ICs that connects to one of the module’s two 64-bit interfaces.

Data Rate: Faster Is (usually) Better

It comes as no surprise that higher data rates allow more data to be transferred per unit of time, but there are limits to what a memory controller can support. Most of today’s higher-end desktop CPUs can handle DDR4-3600, and some of the speed limits are artificially enforced to enforce market segmentation -- meaning a chip company like Intel wants you to spend more on an unlocked K-series processor (and a higher-end motherboard) if you also want faster memory.

  • AMD’s Ryzen 3000 series processors can run memory faster than DDR4-3600, but the company  has encoded limits into base firmware that cause the memory controller to run at half-speed and other parts of the CPU I/O to operate at a lower ratio when DDR4-3600 is exceeded. Our initial review of G.Skill’s Trident Z RGB DDR4-3600 showed that performance dropped when setting DDR4-3733 as AMD’s default controller limitations reduced those ratios, but a retest showed that performance improved at DDR4-3733 when those limits were disabled.
  • Earlier Ryzen 2000-series processors could typically accept at least DDR4-3467 without crashing, but higher frequencies induce noise (often in the form of signal cross-talk), and the pathways between the CPU socket and DIMMs of some boards weren’t up to the task. If you’re using a lower-model processor or anything less than an X470 motherboard, we recommend reading other user’s findings before buying anything faster than DDR4-2933.
  • Intel’s LGA 1151 processors have memory controllers that are stable well beyond DDR4-3600, but the firm figured out a way to get non-Z-series chipsets to instruct any CPU (even a K-series) to lock out higher ratios. We also experienced a firmware locking out ratios higher than DDR4-2400 when using a Core i3-8350K on the Z370 we used as a baseline in in our initial H370/B360 roundup. The easiest way to exceed DDR4-2666 on any of this hardware is to use a Z-series (Z390, Z370, Z270) chipset with a K-series Core i5 or higher processor.
  • Intel’s memory controller operates at either 100 or 133 MHz, producing multiples of 200 or 266.6MHz at integer ratios. Lower memory multipliers tend to be more stable, particularly on older platform designs such as Z270, thus DDR4-3467 (13x 266.6 MHz) may be more stable than DDR4-3400 (17x 200 MHz), while also performing better.

In short, a Ryzen 3000-series processor should fully support DDR4-3600 whenever there isn’t a problem related to the motherboard, a K-series Core i5 or Core i7 processor should handle DDR4-3600 when installed on a properly engineered Z390 or Z370 motherboard, and any questions regarding a specific motherboard’s capability should be addressed in either reviews or user forums. Lesser boards and chipsets may have lesser limits that are also addressed in motherboard reviews and user forums.

But perhaps you’d be better off with something that has a bit less latency? 

Latency: Lower Is Better

(Image credit: Tom's Hardware)

Latency is the amount of time it takes for any memory operation to initiate, and it may come as a shock to the uninitiated that this metric hasn’t changed in decades: Both an ordinary stick of PC-100 and a run-of-the-mill set of DDR4-3200 have a CAS Latency of 10ns. But how is this possible? Understanding that memory cells are laid out in columns and rows, let’s consider how primary timings are defined:

  • CAS (column address strobe): The number of clock cycles required to access data in a new column when the correct row is already open.
  • tRCD (RAS to CAS delay): The minimum number of clock cycles the memory controller must wait for a new row to open.
  • tRP (Row Precharge): The minimum number of clock cycles the memory controller must wait for the current row to close.
  • tRAS (Row Active time): The minimum number of clock cycles the memory controller must wait between opening and closing a row.
  • CMD (Command Rate): The number of cycles an instruction must be presented to assure that it’s read by the memory. Typical values are 1T and 2T.

Supposing that the correct row of memory is already open, CAS is the time it takes to access the next bit of memory. If all rows are closed, accessing a cell requires first opening a row, and then finding the correct column (tRCD+tCAS). If the wrong row is open, accessing a memory cell require closing the current current row, opening the correct row, and finding the correct column within the new row (tRAS+tRCD+tCAS). Finally, when command rate is increased from 1T to 2T, an extra clock cycle is required for every memory command.

We opened with the word “time,” but talked exclusively about clock cycles because latency is measured in time but specified in clock cycles. And that gets to the question of how PC-100 and DDR4-3200 can have the same latency: A 100 MHz clock cycle takes 10ns (ten nanoseconds), so that PC-100 CAS 1 took a minimum of 10ns to access data. Meanwhile, DDR4-3200 operates at a 1600 MHz clock, and a 1600 MHz clock cycle takes only 0.625ns. This means that DDR4-3200 CAS 16 takes a minimum of sixteen times 0.625ns to access data, which is still 10ns.

Since a clock cycle’s time is inversely proportional to frequency, the faster the memory, the more clock cycles it takes to reach our middle standard, 10ns. DDR4-3600 does it in 18 cycles. DDR4-4000 does it in 20 cycles. Shaving access time below that standard requires fewer cycles of latency per frequency, so that DDR4-3200 C14 (8.75ns) and DDR4-3600 C16 (8.89ns) both exceed our middle standard.

Ranks: Reducing Latency Via Redundancy

For a CPU, waiting for every write or read to finish before starting the next would slow the process significantly. Interleaving is a method that allows one command to be started while the other is finishing. Users can assist their CPU’s ability to do this is by increasing the number of ranks per channel from one to two. This can be accomplished by installing two single-rank DIMMs or one dual-rank DIMM in each channel.

  • Most memory produced from 2017 to today uses 8Gb (eight gigabit) ICs.
  • Most memory ICs have an eight bit interface.
  • Eight 8-bit ICs can be used to fill a single 64-bit rank.
  • The total capacity for eight 8Gb ICs is 8GB (eight gigabytes).
  • Therefore, most 32GB memory kits have four ranks.

Four ranks accomplish the task of putting two ranks per channel on a dual-channel motherboard, but we see several “mosts” in the above math. What about the exceptions?

  • Demand for ICs with 16Gb capacity is currently too high for companies to waste them producing single-rank 16GB modules. 16GB modules are instead made using two ranks of 8Gb ICs as mentioned above.
  • Consumer 32GB modules use two ranks of 16Gb ICs so that two 32GB DIMMs make a 64GB dual-channel kit that has four ranks.
  • Current 4GB modules primarily use four 8Gb ICs that each have a 16-bit interface. Four of these would be needed to create four ranks.
  •  Older 4Gb ICs are barely a factor unless your shopping at low-volume resellers. Finding them is a great way for buyers who only want 16GB to get four ranks, but identifying them can be difficult.

One could of course look under the bottom edge of a heat spreader to determine whether certain modules have eight ICs on both sides: Whenever we spot something that deviates from the norm, we mention it in our reviews.

Conclusion: Get Faster, Get Quicker, Get More

Higher data rates improve performance, within the limits of a CPU and motherboard. Lower latency increases performance without increasing the data rate. Four ranks perform better than two, to the point that 32GB of DDR4-3200 often outperforms 16GB of DDR4-3600. Data to support these conclusions is detailed in our recent Ryzen 3000 memory analysis.

Now that we’ve walked you through some of the finer points of PC memory, you should know a lot more about exactly what you’re shopping for. By all means, feel free to still refer to that online configurator or offline, in-store clerk for help picking a kit. But don’t let them push an overpriced kit on you with sub-par latency, advertized clock speeds that your chipset or CPU can’t handle, and/or a single-rank kit that will leave your CPU waiting around to tackle a task. Given the high number of memory kits are on the market, there are almost certainly better options available.

MORE: Best Memory

MORE: DDR DRAM FAQs And Troubleshooting Guide

MORE: All Memory Content

  • TJ Hooker
    Intel’s LGA 1151 processors have memory controllers that are stable well beyond DDR4-3600, but the firm locks out high ratios to prevent them from being used on non-K-series processors. Intel also figured out a way to get non-Z-series chipsets to instruct any CPU (even a K-series) to lock out higher ratios. The only easy way to exceed DDR4-2666 on any of this hardware is to use a Z-series (Z390, Z370, Z270) chipset with a K-series Core i5 or higher processor.
    This is wrong. It only depends on whether you have a Z series motherboard, not whether you have a K series CPU.
    Reply
  • Ariur
    The article claims Intel locks i3 to 2400 MHz and all other non-K CPU to 2666 MHz. This is false information. As long as you have Z-series motherboard, you can set any RAM speed for i3 and non-K processors. And no "workarounds too lengthy to describe" are required. You go to BIOS, set base RAM frequency and multiplier (+adjust voltage, if necessary), reboot, and you are done.

    I'm writing right now from a PC with i3-8100 running with DDR4-2933. Which, according to the author of this article, isn't even possible.

    It seems a lot of people are still confused by DDR4-2400/DDR4-2666 memory support Intel (and most shops) list in CPU specifications. These are just recommended RAM frequencies, not maximum supported frequencies.
    Reply
  • TJ Hooker
    Crashman said:
    We were not able to set any ratios higher than 12x100 (xDDR) or 9x133 (xDDR) on the Core i3-8350K. And the processor knows whether you're using a 100 or 133 memory controller frequency, so 12x133 wasn't even possible. To get the memory to DDR4-3200, we had to reduce the CPU multiplier, then increase the BLCK to 133 MHz. And that's too much information to put into an article like this.
    What motherboard? I had an i3 6100 + Z170 and I could run 2800 MHz just fine.
    Reply
  • Ariur
    Crashman said:
    It's not possible. I don't believe you.
    Here is a screenshot of my RAM test from AIDA64. :ROFLMAO:


    Are you banned on Google? There are like thousands videos and articles online testing i3 with various RAM frequencies, well beyond 2400.
    Reply
  • Crashman
    I tested the 8350K and found that I had to overclock BCLK to reach higher data rates. I don't remember the board...could that have been on a special unlocked board?

    I'm just going to delete my comments and get back to you in about 10 minutes with a retest.

    Edit: I think I lent the CPU to another tester. I did find this reference to the Z370 test I did, in which I squeezed the tears of of the BCLK in order to get the memory to DDR4-3504 (probably 146 MHz using the 12x100 ratio and the CPU cranked down to its lowest multiplier).
    Reply
  • Ariur
    Crashman said:
    I tested the 8350K and found that I had to overclock BCLK to reach higher data rates. I don't remember the board...could that have been on a special unlocked board?

    I'm just going to delete my comments and get back to you in about 10 minutes with a retest.

    Edit: I think I lent the CPU to another tester. I did find this reference to the Z370 test I did, in which I squeezed the tears of of the BCLK in order to get the memory to DDR4-3504 (probably 146 MHz using the 12x100 ratio and the CPU cranked down to its lowest multiplier).
    Perhaps there was some motherboard firmware issue, or you had some rare motherboard edition with limited RAM speed support? Using RAM speed above 2400 is certainly possible for i3 processors (both K and non-K) with Z370 motherboards. And no, it doesn't require changing base clock (BCLK).

    This information is easily available online. Here is a blog post by MSI showing performance of i3-8350K depending on RAM speed:

    https://www.msi.com/blog/Unlock_more_FPS_by_optimizing_DDR4_performance
    They tested all RAM frequencies up to 3200, just by changing RAM speed multiplier.

    Reply
  • Crashman
    Ariur said:
    Perhaps there was some motherboard firmware issue, or you had some rare motherboard edition with limited RAM speed support? Using RAM speed above 2400 is certainly possible for i3 processors (both K and non-K) with Z370 motherboards. And no, it doesn't require changing base clock (BCLK).

    This information is easily available online. Here is a blog post by MSI showing performance of i3-8350K depending on RAM speed:

    https://www.msi.com/blog/Unlock_more_FPS_by_optimizing_DDR4_performance
    They tested all RAM frequencies up to 3200, just by changing RAM speed multiplier.

    That doesn't show me BCLK though, so I still don't know that the i3-8350K ever exceeded 2400 at 100MHz BCLK. I only know that my test required overclocking BCLK to reach past DDR4-2400.

    I found the information from the review, where I was forced to O/C the BCLK to get a higher data rate. Could Intel have locked down the memory ratios on the 8350K when it unlocked the CPU core ratios...just because it wanted to?

    "As the chipset would indicate, only the Z-series board was overclock-capable, and base clock manipulation was the only way to overclock the RAM past DDR4-2400 on the tested Core i3-8350K. The CPU did surprisingly well, pushing our DDR4-3200 to DDR4-3504 despite the CPU's ostensible limits."
    https://www.tomshardware.com/reviews/h370-b360-budget-coffee-lake-motherboard-roundup,5548-6.html
    Reply
  • Ariur
    Crashman said:
    That doesn't show me BCLK though, so I still don't know that the i3-8350K ever exceeded 2400 at 100MHz BCLK. I only know that my test required overclocking BCLK to reach past DDR4-2400.
    If you actually bothered to check the MSI article I linked you would know they had BCLK set to 100MHz, as can be clearly seen in screenshots. The big red rectangle in the center, can't be that difficult to notice, even for a "senior editor" from Tom's Hardware. :unsure:


    I have also posted above a screenshot from my own PC, i3-8100, running with DDR4-2933, and no, I didn't change BCLK. It's set to 100MHz. Because guess what? All i3 CPUs support any RAM speeds, as long as they are plugged into Z-series motherboards. The only limits are imposed by motherboards, for z370 chipsets these limits are usually at or above 4,000MHz. All this information is available everywhere online, and was available for years.
    Reply
  • Crashman
    Ariur said:
    If you actually bothered to check the MSI article I linked you would know they had BCLK set to 100MHz, as can be clearly seen in screenshots. The big red rectangle in the center, can't be that difficult to notice, even for a "senior editor" from Tom's Hardware. :unsure:


    I have also posted above a screenshot from my own PC, i3-8100, running with DDR4-2933, and no, I didn't change BCLK. It's set to 100MHz. Because guess what? All i3 CPUs support any RAM speeds, as long as they are plugged into Z-series motherboards. The only limits are imposed by motherboards, for z370 chipsets these limits are usually at or above 4,000MHz. All this information is available everywhere online, and was available for years.
    No. The Z370 board I used as the baseline for the H370 test did NOT support higher memory multipliers. I did not lie when I wrote that over a year ago. I just found the test note that I had to use 146 MHz BCLK to hit DDR4-3504:
    36
    Beyond the purely accurate thing that I wrote at the time, I'm left to guess that the higher multipliers could be set but the resulting data rate was still DDR4-2400. And the reason I'm left to guess is that I no longer have the CPU. Which is why I spent 45 minutes looking for the CPU before realizing that I sent it to our CPU cooling tester. Maybe I should have taken more notes, but I didn't foresee this conversation happening a year later.
    Reply