Testing 4000MHz RAM: content creation
Exploring video rendering and probing the theoretical limits.
Before we get into content creation, let's start with a synthetic benchmark that measures RAM speed specifically. This'll allow us to see the theoretical maximum performance boost we'd see in a task that is limited only by memory speed, setting a kind of upper bound on the sort of gains we'd see from faster RAM in other tasks like content creation or gaming.
For this, we used Aida64's cache and memory benchmark, which includes four RAM-specific tests measuring read speeds, write speeds and copy speeds, plus latency. For each configuration, we listed the frequency (in MHz), the latency (normally CL16) and the fabric clock (which we'll get into later).
You can see how, as memory frequencies ramp up, we get a corresponding increase in read, write and copy speeds. In total, our fastest result (3800MHz CL16 with a fabric clock of 1900MHz) boasted 73 per cent better read speeds than our slowest result (2133MHz CL16). This advantage was 58 per cent in terms of write speeds and 65 per cent for copy speeds. That means in the perfect RAM-bound scenario, we'd expect to see a maximum performance advantage of only around 60 to 70 per cent by nearly doubling our RAM frequency. Meanwhile, latency increased by around 7ns between our CL16 and CL19 results at 4000MHz, and otherwise slowly increased as we go down the chart - with a few exceptions. Let's move onto the next tests, and then we can cover why we chose these particular configurations in more depth.
3700X Aida64 | Read | Write | Copy | Latency |
---|---|---|---|---|
4000MHz CL19 | 47360MB/s | 28798MB/s | 49005MB/s | 83.4ns |
4000MHz CL16 (FCLK 1900MHz) | 50882MB/s | 30390MB/s | 47919MB/s | 77.4ns |
4000MHz CL16 | 48721MB/s | 28799MB/s | 48812MB/s | 76.3ns |
3800MHz CL16 (FCLK 1900MHz) | 52745MB/s | 30398MB/s | 50747MB/s | 67.7ns |
3800MHz CL16 | 48458MB/s | 28799MB/s | 48739MB/s | 78.1ns |
3600MHz CL16 | 50026MB/s | 28799MB/s | 47807MB/s | 69.4ns |
3200MHz CL16 | 44900MB/s | 25599MB/s | 42459MB/s | 75.3ns |
2800MHz CL16 | 39604MB/s | 22400MB/s | 38453MB/s | 83.0ns |
2400MHz CL16 (FCLK 1900MHz) | 34740MB/s | 303384MB/s | 36324MB/s | 90.5ns |
2400MHz CL16 | 34407MB/s | 19199MB/s | 33258MB/s | 90.8ns |
2133MHz CL16 | 30608MB/s | 19200MB/s | 30704MB/s | 106.1ns |
So: content creation performance. As usual, we've tested two popular tasks, 3D scene rendering and video transcoding. The rendering side is handled by Cinebench R20, an industry-wide CPU benchmark that mimics the creation of a 3D scene in professional 3D software suite Cinema 4D. Meanwhile, the transcode test utilises the popular open source Handbrake application, and tests how quickly our test rig can transcode one of our Patreon video files into x264 and x265 (HEVC) formats using the Production Standard preset at quality setting RF 18.
Thanks to the testing we did with the same 4000MHz RAM kit in part one, we knew that our sticks could hit 4000MHz with tighter 16-17-17-34 timings without any instability. As these kinds of latencies are far more common at lower frequencies, we therefore opted to focus the majority of our testing at CL16, bumping up the voltage from 1.35V to 1.40V as we did so. Our focus on CL16 freed up time to test that new variable we mentioned earlier: infinity fabric overclocking.
So what is infinity fabric overclocking? Well, infinity fabric connects the two core complexes of the Ryzen 3700X together, allowing data and instructions from one complex to be sent to the other. Normally, the infinity fabric's frequency is set to half the frequency of the RAM*, so 2400MHz RAM results in a fabric clock of 1200MHz. This remains true with RAM speeds up to 3600MHz, where the infinity clock reaches 1800MHz; beyond this, the two clock speeds are decoupled as the infinity fabric may not be able to keep up. This decoupling introduces a small performance penalty in the form of increased latency, so it's good to avoid this if possible - for example, by overclocking the infinity fabric beyond its 1800MHz limit to better match high frequency RAM.
This is just one of the potential benefits of infinity fabric overclocking too. It can also make sense if your RAM speed is relatively slow, say around 2400MHz. In this case, if you increase the fabric clocks significantly, from 1200MHz to 1800MHz or higher, then the small latency penalty could be overshadowed by the frequency gains you're making elsewhere.
To test the effects of higher fabric clocks on content creation, we set our fabric clock to 1900MHz in the BIOS with three different configurations where it made sense: at 4000MHz, the highest frequency we could hit with CL16 timings, at 3800MHz, where our memory and fabric clocks are coupled with the infinity fabric overclock in place, and at 2400MHz, to demonstrate the advantages of overclocking beyond the normal 2:1 ratio.
In our content creation tasks, the effects of this overclock were small but measurable, with the 3800MHz RAM and 1900MHz infinity fabric combination outperforming our 4000MHz RAM in the Cinebench R20 test. This was true both of the 4000MHz configuration with the infinity fabric at stock speeds (1800MHz) and overclocked (1900MHz). That shows the benefits of escaping that decoupling penalty. Thankfully for owners of 3800MHz RAM, many Ryzen motherboards should be capable of hitting this 1900MHz fabric clock even though it's technically outside of specifications. (We tried testing 2000MHz fabric clocks as well, to get that perfect 2:1 ratio at 4000MHz, but our machine didn't boot and required a CMOS reset to work again.)
Elsewhere, you can see our Cinebench multi-threaded scores creep up relatively quickly to around 2800MHz, with relatively little improvement afterwards, while single-threaded scores remain consistent at around 490. The Handbrake results are more interesting, with steady progress as frequency increases, while the higher latency 4000MHz CL19 result doesn't cause any noticeable regression in this test. Note that the 3800MHz result with stock infinity fabric clocks is outperformed by 3600MHz, most likely due to that decoupling penalty, while the 3800MHz result with overclocked infinity fabric gains that ground back.
3700X Content Creation | CB R20 1T | CB R20 MT | HB h.264 | HB HEVC |
---|---|---|---|---|
4000MHz CL19 | 490 | 5086 | 37.40fps | 15.64fps |
4000MHz CL16 (FCLK 1900MHz) | 489 | 5083 | 37.42fps | 15.69fps |
4000MHz CL16 | 489 | 5075 | 37.37fps | 15.67fps |
3800MHz CL16 (FCLK 1900MHz) | 491 | 5092 | 37.68fps | 15.78fps |
3800MHz CL16 | 488 | 5067 | 37.37fps | 15.68fps |
3600MHz CL16 | 490 | 5080 | 37.69fps | 15.75fps |
3200MHz CL16 | 488 | 5070 | 37.28fps | 15.64fps |
2800MHz CL16 | 490 | 5081 | 36.99fps | 15.47fps |
2400MHz CL16 (FCLK 1900MHz) | 489 | 5058 | 36.22fps | 15.37fps |
2400MHz CL16 | 488 | 5051 | 36.96fps | 15.37fps |
2133MHz CL16 | 489 | 5032 | 36.25fps | 15.21fps |
So ultimately, we see relatively small advantages for higher RAM speeds in the content creation tasks we've chosen. From the slowest to fastest results, we see just 1.2 per cent in Cinebench R20 multi-threaded, 3.9 per cent in HandBrake h.264 and 3.7 per cent in Handbrake h.265. These are pretty slim margins, but even if it isn't worth running out to buy a new kit of high-speed RAM for these content creation workloads it's still worthwhile to make sure that your RAM is at least running at its rated speed in the BIOS.
With that out of the way, let's move onto what we really care about - gaming - where we expect to see more significant performance improvements when swapping commonly available 2400MHz or 3200MHz RAM for higher-spec alternatives.
Testing 4000MHz RAM: Are higher frequencies worth it?