I've got multiple systems at home, with Arm, Apple, Intel, and AMD all in regular service. But only one platform I use daily has abominable boot times, and that's the Ryzen 7900X currently in my main PC. I know, I should be using the Ryzen 9850X3D that I recently reviewed, but that's in another system, and I'm terminally lazy. I digress, like my PC's boot process, this preamble has gone on for too long.
The long boot time is due to memory training, which was also an issue on DDR3 and DDR4, but with the higher clock speeds of DDR5, it's become more noticeable. It's a necessary evil, as without it your system can be unstable, as the signal path between your CPU and RAM is unoptimized. So, what can we do to shorten that boot time? Well, two settings in your BIOS can help, with one setting in particular taking most of the credit. Before I dive into what Memory Context Restore does, we need a little background on memory training.
Let's clear up some misinformation about memory training
What it actually does, compared to what you think it might be doing
When your computer boots, the BIOS hands off to UEFI, which then completes the rest of the boot process. Part of that is memory training, which is becoming ever more necessary as RAM speeds increase. This part of the boot process ensures that the signal between the CPU's memory controller and the memory chips on the RAM modules is of high quality and tests a wide range of settings.
These include termination resistances, drive strengths, signal skews, and both termination and reference voltages. RAM is part technology, part magical recipes, and as such, could have slightly different requirements on every boot, so you can see why memory training is important. The better quality your memory controller is, the less training it needs during boot, which is partly why AMD lags behind Intel in this regard.
No, it's not setting subtimings
I'm slightly ashamed to say that I believed this for the longest time, and am rather glad that I've been corrected. It's an easy mistake to make when motherboard manufacturers offer settings like Memory Try It! that promise to tweak subtimings and speeds for you to achieve the best performance, but that's not what memory training does.
And yes, it's an issue on Intel platforms as well
Intel moved to DDR5 with the release of its 12th-gen core CPUs, aka Alder Lake. Memory training has been happening on every Intel platform since then, and the boot time is related to the frequency at which you access your RAM. Faster speeds mean more training to ensure the best signal path between the CPU and RAM. All DDR5-based platforms perform this to some extent.
5 reasons you need to be more careful with RAM on Ryzen (and what you should do to make it better)
While BIOS updates have made Ryzen more user-friendly, there are still some things to keep in mind
What Memory Context Restore does
Skipping the process makes the boot routine shorter
Memory Context Restore (MCR) isn't a magic bullet. What it does is store the last known good boot parameters for your combination of CPU and RAM settings, so that your PC can skip the memory training part on boot. Depending on your hardware, number of DIMMs, and set frequency, this can reduce boot time by anywhere between 40% and 90% if your RAM is particularly hard to train.
While it's not always the case, long memory training times can point to something physically wrong with your RAM modules and can be a reason an RMA will be accepted.
MCR isn't foolproof. It'll work if the right combination of things is still applicable from the last good boot, so margins of error, temperature of the RAM modules, if the DIMMs moved slightly in the slot, if the moon is in retrograde.. (okay that last one is a joke, but given the somewhat esoteric nature of memory training it's only partly a joke).
It won't always work
It might not need saying, but if you're constantly changing your RAM settings, Memory Context Restore won't do anything for you, since memory training has to happen for every changed setting. Otherwise, you risk system instability, and nobody wants that.
Memory Context Restore is often in two places in your BIOS settings. One is in the settings package set by AMD or Intel, and the other is in the overclocking section added by the motherboard manufacturer. I've found that the CPU manufacturer section is often more stable, but, as with everything in BIOS, your mileage may vary, and on some motherboards, I have to set it twice.
And here's one thing you might not know. That Memory Context Restore setting is ignored on cold boots. You'll go through memory training no matter what if your PC has been fully powered off, and that's the same whether you're on Intel or AMD. MCR will work from standby, though, so keep that in mind.
Memory Context Restore can shorten your Ryzen boot times
When it works, MCR makes your PC boot faster. That's a hard, cold fact, but it's equally true that it doesn't always work, and won't work on a cold boot. That's part of why the first time you turn modern PCs on they take significantly longer than when you reboot, although your operating system plays some tricks on reboots as well.
AMD Ryzen 9 7900X
- Brand
- AMD
- Cores
- 12
- Threads
- 24
- Architecture
- Zen 4
- Process
- TSMC 5nm
- Socket
- AM5
With 12 cores, the Ryzen 9 7900X is the lighter weight flagship CPU of the Ryzen 7000 series. It's great for both multicore workloads and gaming, and while it's not as fast as the 7950X, it's quite a bit cheaper.
