Videos
Hello, user. I recently made a huge upgrade from my dated FX-8350 processor to a nice shiny new Ryzen 7 1700X. I love my new setup; however, I quickly discovered that optimizing my system to function well with my new components was more challenging than I had anticipated. The main issue I had was finding all the optimization tricks on blog posts, YouTube videos, Reddit posts, and official messages from AMD and my motherboard manufacturer. That’s why I’m writing this. Hopefully I can help just one person set up their new Ryzen system and spare them a bit of hassle in the process.
Before You Build
A. There’s a great deal of optimization that takes place before you even order your components. The very first thing you should do when considering making the switch to Ryzen is select the processor that’s right for you. A Ryzen 5 can be just as capable as a 7-series with the right tweaks and can save you some money. Honestly, the 7-series is particularly useful for multi-tasking and demanding CPU loads like video rendering and CAD. I’m a civil engineer who frequents Civil3D, so I opted for the 1700X.
B. Once you know what processor you need, it’s time to select the right motherboard. Don’t pay for features you’ll never need. I was pretty much forced to use the X370 chipset as it was the only platform that would support my dual SLI setup. Outside of SLI and a few other bells and whistles, the B350 chipset is more than capable of holding down a stable overclock and performs almost identically to X370 boards. For this guide, I’m using an ASRock Taichi X370.
C. Finally, you’ll need RAM. On Intel, the brand, speed and capacity of RAM you select makes little difference as long as it’s the correct generation of DDR technology. However, Zen architecture is in its infancy and not all AM4 motherboards are compatible with all DDR4 kits. Go to your mainboard manufacturer’s website and verify that the RAM you want is supported by the motherboard. If the RAM you want isn’t on the list of supported memory kits, you shouldn’t worry too much. Odds are, it will still work okay, but you may be limited to a lower frequency than the RAM is rated for. For example, my Corsair Vengeance LPX 2X8GB 3200MHz kit is not supported by the Taichi X370. Despite this, my RAM still works but at a lower frequency. Currently, I have it running at 2133 MHz because I can’t be bothered to OC it at the moment.
BIOS Settings
So, you got everything installed and you’re in the BIOS. Assuming your boot order is correct, you should be good to go, right? Actually, you should flash your BIOS to the latest version available if possible. Manufacturers suggest that you don’t update to a newer version if your system runs normally without the lastest version but I disagree. A newer BIOS version could means more hardware support, more stable overclocks, and more features. If you have dual BIOS, you really have nothing to lose.
Start Overclocking
Have some fun here and be prepared for crashes. Don’t bother with Ryzen Master as its still a bit unstable and eats up valuable processing power. It is not recommended that you exceed a VCORE value of 1.4 volts. For those of you with a 1700X that are just looking for quick results: the highest clock I managed to get is 3.9 GHz with VCORE set to 1.3687. Because of the silicon lottery, you may receive a 1700X that hits 4.0GHz no problem. To get overclocking to work properly, I made a few changes to the BIOS settings. These settings came directly from my Taichi X370. Some settings may be in different places on other boards.
*1. Go to the “OC Tweaker” tab
-
Change “CPU Load-Line Calibration” to Level 2
-
Change “VDDCR_SOC Load-Line Calibration” to Level 2
*2. Go to the “Advanced” tab
-
Go to "CPU Configuration"
-
Set “SVM Mode” to Enable. This is for virtualization. Not necessary if you don’t use virtual machines. Enabling this feature has no apparent downsides.
-
Change “C6 Mode” to Disable. Very important for OCing.
-
Go back to "Advanced" and select "AMD CBS"
-
Under “Zen Common Options,” Change “Global C-State Control” to Disable. Also necessary for OCing.
*3. Set your fan curves, if supported. I prefer not to use software for this.
*4. Save your settings and boot into your OS. If you end up in a boot loop, clear your CMOS, disable your power supply and hold the chassis power button for a few seconds before trying to boot again.
Post-Boot Optimizations
-
Perhaps the most important thing you need to do is change your power plan. In Windows, navigate to your Control Panel. Go to “Hardware and Sound” then “Power Options.” Select “High Performance Mode” and close the Control Panel.
-
If you have an SLI or CrossFire setup, make sure your settings stuck. I spent a week on Ryzen before I realized on the fifth day that SLI had been disabled in nVidia Control Panel. This is probably because I basically had to re-seat my graphics cards when I moved to the new motherboard.
-
Go ahead and test your overclock with a CineBench 3D CPU stress test. If your system didn’t crash, you probably have a stable overclock. Even so, run Prime95 for a while and ensure everything is okay.
-
This last one was what really helped me. My new PC was running great in every respect except for gaming. I was getting stuttering, frame drops, screen tears, even straight-up 3 FPS. Granted, I use a 4K setup so it’s never been particularly easy to run games but it shouldn’t be a challenge for this new hardware. To fix this, run a command prompt as an administrator. At the prompt, enter the following command:
bcdedit /set useplatformclock true
This will enable HPET. It’s basically a timer that can have a direct effect on your PC’s performance. To make this setting take effect, restart your machine. If this doesn’t help and you need to disable HPET, go back to the prompt and enter
bcdedit /deletevalue useplatformclock
That’s it! Hope my guide helped someone out there.
This is free performance that I hadn’t taken advantage of in the year I’ve owned my Ryzen 5600, so I’m writing to this to advocate that nobody else wait as long as I did.
This is my guide. There are many like it, but this one is mine😁.
Curve Optimization is very easy - the testing being automated - and poses no danger whatsoever to one’s hardware; the worst you can expect is a Windows bluescreen, and that is no more deleterious than stalling a car. The only drawback is that you will need to have your computer running tests that render it useless – if you are prepared to leave it running overnight and/or while at work, though, this is not a problem – and it can take a long time.
1. Software (all free)
You will need:
AMD Ryzen Master (latest version)
HWINFO (to get the preferred core order and, optionally, compare before and after temps/power)
Core Cycler (which contains PBO2Tuner – set and test curve optimizer values)
CPU and gaming benchmarks (compare before and after performance, test for real-world stability)
2. Preliminaries
Open HWINFO and uncheck both boxes, then navigate to “Central Processor(s)”-> <your CPU>. Make a note of the sequence after “Core Performance Order” – this is the order in which we will be testing them with Core Cycler, but you must SUBTRACT 1 from each value; Core Cycler starts numbering cores at 0, not 1.
Open AMD Ryzen Master, select Advanced View, click Curve Optimizer, Per Core, then click Start Optimizing. Ryzen Master will then enter an automated procedure to generate its best estimate of what your CPU is capable of. Plan to be away from your computer for at least an hour while this is going on; when you come back, make a note of the values it generates, but DO NOT APPLY them - just close the program. Note that the “subtract 1” rule applies to Ryzen Master, as with HWINFO.
Open the Core Cycler config file and make the following changes:
“stressTestProgram = YCRUNCHER”
“coreTestOrder = <your order from earlier>” - remember to subtract one from each
“numberOfThreads = 2”
“mode = 20-ZN3 ~ Yuzuki” in the ycruncher section, halfway down the page.
Some rationale:
The preferred core order is from WORST to BEST under-volter, and thus MOST to LEAST likely to fail – this is because the more preferred a core is, the more efficiently it is already running, and so the lower the voltage floor is. This makes testing faster because the most unstable cores will fail first, and dropped cores are left out of subsequent intra-session iterations by Core Cycler. Also, the ycruncher Yuzuki test is considered to be the most difficult one to pass, so we might as well start with it; you can – and should – run others afterwards.
Open Windows Event Viewer, right-click on Custom Views, and click Create Custom View. Check “Warning”, and “Error”, then “By source”, and check “WHEA Error” in event sources. Name the view something meaningful, then exit the Event Viewer. This is just in case Windows ever BSODs – not likely, but possible – and we will need to know which core failed.
3. Testing – Round One
Create a spreadsheet like the one below – we will be keeping track of passes and fails.
in the beginning...When you’re ready to leave the computer alone, close all programs, open PBO2Tuner and key in the values given by Ryzen Master earlier, then click Apply, and minimize the program. These values are applied as though they were typed into the BIOS, and persist until they are changed, or the computer is restarted.
Run “Run CoreCycler” - the testing will begin, and will run until you stop it, or until every core has thrown an error.
~TESTING HAPPENS – LEAVE FOR AS LONG AS POSSIBLE, PREFERABLY 6+ HOURS~
When you come back to the computer, if Core Cycler is still running, stop it with Ctrl-C, and see which core/s, if any, have failed; Ryzen Master’s supplied values are usually rather optimistic, so you should expect some errors, which show up in bright purple text. (If you accidentally close the window, the log file contains all the same information, but is more annoying to parse.)
Scroll around the window and see how long it took for the core/s in question to error out – a fast error is anything under 10 mins, IMO, and a slow error is anything over. Any core with a fast error will be having its CO value increased by 2, while slows will have theirs increased by 1; if any cores don’t error (in which case, Core Cycler will still be running on those cores when you come to check), add them to the
“coresToIgnore =”
– no point hitting these cores again until Round 2.
(If the machine has reset, go into Event Viewer and look in your custom view – under Error, there will be an entry called “Processor APIC ID”, with a number, the number corresponding to a thread. Core 0 will run threads 0 and 1, Core 1, threads 2 and 3, and so on; whichever core was running the failed thread, increase its CO by 3 or 4 – that core was not even close to stable!)
Update your spreadsheet as shown below, with the adjusted CO values, and save it – when you are ready for your next test session, put these new values into PBO2Tuner before you start.
after first sessionKeep repeating the above until all cores pass a session of this “all cores at once” testing.
after second session after third sessionand so on; my last all-core session, after shedding cores as they passed, looked like this:
final all-core results4. Testing – Round 2
The next step is to extend the testing for each core. You can jump right to hitting one core for 6+ hours (as I did), or divide the cores into two groups (“front half, back half”, from the order earlier, is best), and test them one half at a time, Ignoring the cores in the other half. This will double the amount of time each core is under stress, and might generate errors that didn’t appear before, but you will be much closer to the true stable value thanks to the previous testing.
Change the core testing order to match the results from Round One - they might not be the same as the HWINFO values; for example, HWINFO gave me 2 ,1 ,0, 4, 3, 5, but ordering by the results of my Round One, worst to best, would be 0, 1, 4, 5, 3, 2.
Do the “increment on error” procedure from before, until the front half all pass, and then do the same for the rear half.
5. Testing – Round 3-4-5
If you like, you can split the cores again, and repeat, getting all groups stable. Keep splitting until you get to the point where only one core is being tested at a time:
Ryzen 3 – four, two twos, four ones.
Ryzen 5 – six, two threes (or three twos), six ones.
Ryzen 7 – eight, two fours, four twos, eight ones.
Ryzen 9 – 5900 = twelve, two sixes, then each six as per Ryzen 5; 5950 = sixteen, two eights, then each eight as Ryzen 7.
Yes, this CAN be a lot of testing, but Curve Optimizer CPUs are most likely to crash at the highest boosts (= lowest loads), so sheer duration is the only way to generate any confidence in stability. Thankfully, Ryzen Master gets us most of the way there; the values it gives are usually stable enough at least for idle Windows tasks.
My last round of Yuzuki was a 40-iteration test on each core individually - 5-6 hours per core:
final resultsFrom Ryzen Master's -28, -30, -30, -30, -30, -30, I ended up at -20, -21, -29, -26, -22, -26.
6. Further Testing
It is advisable to use the PRIME95 HUGE on each core in turn, as this is another very low load situation that lets the CPU boost to its maximum; make these changes in the Core Cycler config file. Feel free to try to some other presets as well – no such thing as too much testing. Read what other users found to be their “magic bullet” test settings, and try those out.
double-checking with P95The best test, though, is, as always, to use the thing - browse, game, edit, do whatever you normally do.
7. Finalizing
When you’re happy that everything tests stably, go into the BIOS and enter your final values in the Curve Optimizer menu – this will save you having to use PBOTuner2 every time you boot up.
If your computer ever crashes (not impossible) use the Event Viewer to identify the rogue core, and increase its CO value in the BIOS.