🌐
AMD
amd.com › content › dam › amd › en › documents › products › software-tools › faq-curve-optimizer.pdf pdf
FAQ - Curve Optimizer Feature in Ryzen Master What this feature is all about?
tune the AVFS curve of the entire CPU or specific cores of the CPU such that the tuning overrides the fixed curves that they are fused with, resulting in an ... Yes, both CPU and the internal graphics can be optimized.
🌐
HotHardware
hothardware.com › reviews › amd-power-curve-optimizer-guide-zen-3
Maximizing Ryzen 5000 Performance With AMD Curve Optimizer | HotHardware
Maximizing Ryzen 5000 Performance With AMD Curve Optimizer
Recently, AMD gave tweakers the gift of a remarkably simple tool to dynamically adjust the voltage and speed matrix the processor uses to adjust itself on the fly. Many motherboard makers have included the Power Curve Optimizer which AMD announced in November in the latest BIOS updates for ... AMD's new AGESA update adds simple controls for complex overclocking and under-volting that can bring nice performance gains.
Rating: 5 ​
Discussions

Guide: Zen 3 Overclocking using Curve Optimizer (PBO 2.0)
I don't see this in the comments and it one of the most glossed over aspects for newcomers to curve optimizer. What does entering 10 mean? Well each "count" =+or- 3-5mV. Entering 10 means +or- 30-50mv. The limit for this field is 30. Exceeding it will either crash immedietely or refuse to post. A lot of people know this, but I feel like all of these guides should include it. More on reddit.com
🌐 r/Amd
441
865
December 22, 2020
Curve optimiser deep dive and guide
Thanks for the guide and the OCCT tips. FYI, if you download the OCCT v8.0 beta, you can choose to test specific cores, rather than relying on setting affinity. More on reddit.com
🌐 r/Amd
112
47
February 9, 2021
5800x AMD curve optimizer
This is how I do it https://postimg.cc/MfWCdZGd More on reddit.com
🌐 r/Amd
60
21
January 9, 2021
5950x Curve Optimizer settings and benchmarks - awesome results!
How are you determining the next best 2 cores after the first 4? Ryzen Master indicates to me the best 4 (best and second best per CCD), but I'm not clear on how to identify the ones to set to -20. More on reddit.com
🌐 r/Amd
124
85
January 6, 2021
🌐
SkatterBencher
skatterbencher.com › home › amd curve optimizer
AMD Curve Optimizer - SkatterBencher
August 6, 2024 - Curve Optimizer allows end-users to adjust the factory-fused VFT curve, or voltage-frequency-temperature curve, for each CPU core separately. The VFT curve is a unique curve for each core inside your CPU that defines the required voltage for ...
🌐
AMD
docs.amd.com › r › en-US › 68886-ryzen-master-user-guide › Curve-Optimizer
Curve Optimizer - 3.1.0 English - 68886
These are cookies that are technically required for the operation of the Sites. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging into secure areas of the Sites or filling in forms.
🌐
Reddit
reddit.com › r/amd › guide: zen 3 overclocking using curve optimizer (pbo 2.0)
r/Amd on Reddit: Guide: Zen 3 Overclocking using Curve Optimizer (PBO 2.0)
December 22, 2020 -

UPDATE: I will continue to update this post with relevant learnings if I have them and updated results if I'm still tuning. I answered almost every question the first day, but I can't keep up with answering your questions, especially about your individual cases. Please help each other.


I come from many generations of Intel builds. Over the decades, the experience of overclocking Intel roughly translated to pouring voltage into core and maybe some into uncore while raising the multiplier until you hit a ceiling. Overclocking Zen 3 has been a completely different experience, with boost and PBO doing smart things that you want your OC efforts to support and optimize rather than replace.

I've spent many hours over the past four days overclocking both my 5900X and 5600X rigs, and I've learned a lot on the way. I figured I should share some important information with the community.

I included a background section for newbies that many of you might want to skip.

BACKGROUND

Your CPU will algorithmically boost the frequency of its cores depending on workload. For single threaded workloads, it will boost one core, and for multithreaded workloads, it will boost multiple cores. The frequency at which your core(s) will boost is governed by internal limits, such as power, current, voltage, temperature, and likely other factors, but the important thing to understand is that, holding limits constant, your CPU can boost one core to a higher frequency than it can boost multiple cores. This should make common sense to you.

PBO raises the current and power limits that govern your CPU's boost algorithm. You can raise your PBO settings as high as you'd like, but PBO has a hard limit of allowing 105W TDP CPUs to draw ~220W and 65W TDP CPUs to draw ~130W. PBO does not raise your CPU's max boost frequency, which is 4.8GHz stock for the 5900X and 4.65GHz stock for the 5600X, both of which are typically achievable only when the CPUs are boosting 1-2 cores. Practically speaking, enabling and maxing out PBO translates to your CPU boosting clocks during multithreaded workloads until your CPU is drawing ~220W / ~130W.

Auto OC raises the maximum stock boost clock by an offset, up to +200MHz, that you set. For example, a +200MHz offset will raise the stock 4.65GHz boost limit of a 5600X to 4.85GHz. Auto OC does not guarantee your CPU will be able to reach the boost clock under load. All it does is allow the CPU to try, but the CPU boosting algorithm will still take into account all the factors as usual to determine boost.

PBO 2.0 w/ Curve Optimizer: Undervolting is a way of overclocking CPUs and GPUs that have an internal table that maps voltage to operating frequency. Basically, a 50mV undervolt tells a CPU that instead of operating at, say, 2GHz at 1V, operate at 2GHz at 0.95V instead, and whatever frequency is mapped to 1V is now >2GHz. When a Zen 3 CPU is undervolted, this means that the same power limits that govern its boost algorithm all map to higher operating frequencies.

Curve optimizer basically allows you to undervolt each core independently.

GUIDE STARTS HERE

The steps for using Curve Optimizer to OC are:

  1. Curve Optimizer is part of PBO 2.0, so enable PBO and set it to your platform's limits.

  2. Under PBO, leave the scalar at Auto. Auto performed the best for me, but if you want to try to tweak this, I'll mention when you should do this.

  3. In Curve Optimizer, start with an all core undervolt of -5. Iterate between STABILITY TESTING (HIGHLY TRICKY. SEE BELOW.) and lowering this by -5 each time until you find the lowest stable value.

  4. Now you know the undervolt limit of at least one of your cores. You can now go into per core undervolting to find which cores you can bring down further using the same iterative method above.

  5. You're done. Now's the time to test a custom scalar value if you really wish to.

You will find that undervolting nets significant gains in both single and multithreaded performance. The more you can undervolt, the greater the gains.

AN IMPORTANT COMPLICATION: UNDERVOTING & AUTOOC

The relationship between undervolting stability and your AutoOC setting is critical. Broadly speaking, the more aggressive you undervolt, the more gains you get, but the higher you set your AutoOC offset, the less aggressive you can stably undervolt. This should make sense to you because your cores require more voltage to attempt the higher boost ceiling you specified. Practically speaking, you will likely find that your once stable undervolt setting is now unstable if you raise AutoOC from +0 to +200MHz.

Let's illustrate this relationship using an example. Say you set your AutoOC offset to +200MHz for a CPU with a 4.8GHz boost limit because you want it to boost to 5GHz. However, you find that the best stable undervolt you can achieve now results in a single core boost speed that barely blips to 4.95GHz. At this point, you should lower your AutoOC offset in order to undervolt further so that your undervolt boost can actually achieve what your offset specifies.

On the flip side, say you have a +0 offset, but your stable undervolt has your single core boost pretty much glued to its limit of 4.8GHz. In this situation, you should increase your AutoOC offset and back off on your undervolting until your offset is again equal to the what your undervolt boost can achieve.

EVEN MORE IMPORTANT: STABILITY TESTING

Your Curve Optimized undervolt will not be stable in low power workloads long before it will show any stability issues in any high power workloads, including every single benchmarking tool you use, including Cinebench and Prime95. An unstable undervolt will result in your PC sometimes randomly freezing, restarting, or BSODing when you're not doing much beyond browsing File Explorer or similar tasks.

Finding a low power workload for stability testing undervolting was the primary challenge of this entire process. The best one I found is the Windows 10 Automatic Repair and Diagnosis workload that can happen pre-boot. You can manually trigger this workload by restarting your PC after it posts but before Windows boots two consecutive times. The third boot will automatically start this workload after post.

This workload completing successfully means it will put you into a menu with a Restart option that you can click on to successfully restart your computer. An unstable undervolt can result in a myriad of different things going wrong, including:

  1. The PC suddenly reboots by itself before you reach the menu screen.

  2. A BSOD at any point in the workload.

  3. Making it to the menu and choosing to restart the PC, but then your PC freezes before restarting.

Once you have successfully triggered the Automatic Repair process, your next boot will be normal. However, if you reset your PC during this next normal boot before Windows successfully loads, it will trigger Automatic Repair in your subsequent boot again.

To test stability, I recommend 10x consecutive successful passes of this workload. This involves using the Automatic Repair workload to restart your computer, resetting your computer in the next boot to trigger the workload again, and repeating. I hope your PC has a reset button next to the power switch, because that comes in handy here.

UPDATE


This stability test works most consistently for finding the limits of your top 2-3 cores in terms of priority. You will notice that after finding these limits, you can undervolt your other cores significantly lower while still passing this test. I haven't yet found a reliable, consistent, and reproducible workload to test these other cores beyond just using your PC and waiting for a random restart or WHEA/other BSOD. Others have mentioned their own jury rigged tests in the comments that you can try.

Finally, low power stability testing is in addition to normal high load stability testing via the usual benchmarks. In fact, if you are failing those, then your OC efforts are in an even worse state than those who only fail low load stability.

MY RESULTS

My final results for my 5900X are:

Core 0: -18
Core 1: -5
Core 2: -18
Core 3: -18
Core 4: -18
Core 5: -18
Core 6: -18
Core 7: -18
Core 8: -18
Core 9: -18
Core 10: -18
Core 11: -18

Scalar: Auto
AutoOC offset: +25 MHz (4.95GHz stock boost limit for unknown reasons, so 4.975GHz with offset)

Cinebench R23 results: https://i.imgur.com/BQNcdbk.png

Takeaways:

  1. My all core undervolt wasn't stable beyond -5. As you can see, I eventually realized that it was my Core 1 bottlenecking that.

  2. My core 1 happens to be my highest priority core. This means my single threaded score is not nearly as impressive as I'd like. Silicon lottery at play here.

  3. I only really bothered individually optimizing Core 1, 2, 0, and 5, as those are my highest priority cores. I always tested cores 3 and 4 together and found stability with them at -20. I tested all my second CCD's cores (cores 6-11) in one batch; there may be some optimizations there, but I couldn't be bothered.

  4. While my highest priority core could only support a -5 undervolt, my other cores can be undervolted quite significantly, resulting in a pretty impressive multicore benchmark score, IMO.

My final results for my 5600X are:

Core 0: -8
Core 1: -8
Core 2: -4
Core 3: -8
Core 4: -8
Core 5: -4

Scalar: Auto
AutoOC offset: +200 MHz

Cinebench R23 results: https://i.imgur.com/88JXBOh.png

Takeaways:

  1. SC boost was glued to 4.85 GHz, which is the maximum allowed.

  2. More interestingly, MC all core boost was at 4.6-4.65 GHz, which is basically the stock single core boost of the chip. Pretty impressive.

🌐
Tom's Hardware
tomshardware.com › pc components › cpus
How to use Precision Boost Overdrive and Curve Optimizer to improve Ryzen CPU performance | Tom's Hardware
March 11, 2026 - While undervolting can be achieved through your motherboard’s BIOS, AMD’s Ryzen Master software offers all the necessary tools to fine-tune your CPU, including Precision Boost Overdrive and Curve Optimizer. Here’s a step-by-step guide on how to use them:
🌐
Thinglabs
thinglabs.io › how-to-use-the-amd-ryzen-curve-optimizer
How To Use The AMD Ryzen Curve Optimizer - thinglabs
September 8, 2024 - However, mastering this tool requires a careful and methodical approach. The AMD Ryzen Curve Optimizer lets you do things like adjusting voltage and frequency curves to achieve higher clock speeds, lower temperatures, and increased stability.
🌐
Freedom251
freedom251.com › home › unlocking the power of amd curve optimizer: a comprehensive guide
Unlocking the Power of AMD Curve Optimizer: A Comprehensive
May 27, 2026 - It also explains the difference ... fast, cool, and reliable over time. AMD Curve Optimizer is a tuning feature for modern Ryzen processors that adjusts the voltage-frequency behavior used by Precision Boost....
Find elsewhere
🌐
AMD
amd.com › https://www.amd.com/en.html › documentation hub
Documentation for AMD Processors, Accelerators, and Graphics
December 16, 2025 - Find solution briefs, datasheets, tuning guides, programmer references, and more documentation for AMD processors, accelerators, graphics, and other products.
🌐
Overclock.net
overclock.net › home › forums › amd › amd cpus
-=: AMD Ryzen Curve Optimizer Per Core + Curve Shaper + DDR5 OC :=- | Overclock.net
January 19, 2025 - CO is per core, CS is all cores. CS allows you to adjust voltage for VFT, Voltage to stabilise Frequency for Temperature in use. Due to VFT, the CPU will give differing voltage based on temperature even if frequency did not change.
🌐
Challix
challix.com › blogs › guides › how-to-use-the-amd-ryzen-curve-optimizer
What is the AMD Ryzen Curve Optimizer and How Do You Use It?
December 16, 2025 - If you’re looking to squeeze more performance and efficiency out of your AMD Ryzen processor, the AMD Ryzen Curve Optimizer is one of the most powerful tools available. Unlike traditional overclocking, it allows you to fine-tune how your CPU handles voltage and boost behavior, often delivering better performance with lower temperatures. In this guide, you’ll learn what the AMD Ryzen Curve Optimizer is, how it works, and how to use it safely to optimize your CPU.
🌐
MSI
msi.com › blog › how-to-use-curve-optimizer-to-lower-ryzen-9-9950x3d-temperatures-and-boost-performance
How to Use Curve Optimizer to Lower Ryzen 9 9950X3D Temperatures and Boost Performance
May 16, 2025 - The CCD 0 (first CCD) with AMD 3D V-Cache has a slightly lower effective frequency than CCD 1 (second CCD). Using Curve Optimizer’s Per CCD mode, different parameters can be set for CCD 0 and CCD 1 to reduce voltage and temperature, and improve overall performance.
🌐
HD OPTI
hdopti.com › articles › amd-pbo-curve-optimizer-guide
AMD Overclocking Guide: PBO + Curve Optimizer
October 15, 2025 - Learn how to use Precision Boost Overdrive and Curve Optimizer to unlock free performance on Ryzen CPUs. Set smart PBO limits, apply per-core negative offsets, and balance temps, voltage, and boost behavior for daily stability.
🌐
AMD
docs.amd.com › r › en-US › 68886-ryzen-master-user-guide › Curve-Optimizer
Curve Optimizer - 68886
July 23, 2025 - Loading application · Your web browser must have JavaScript enabled in order for this application to display correctly
🌐
Mr. Robot
robotatx.com › amdco
Ryzen Curve Optimizer Tuning » Mr. Robot
January 31, 2024 - Go back to BIOS and enter the Precision Boost menu, then set the Curve Optimizer to Per Core and configure the voltages as noted from Log. Try FAST, if you have any stability issues reduce to MID.
🌐
Reddit
reddit.com › r/amd › curve optimiser deep dive and guide
r/Amd on Reddit: Curve optimiser deep dive and guide
February 9, 2021 -

Edit - There have been quite a few comments saying this is not a good way to do things. Please read the comments below and do your own research before following any advice here.

Edit 2 - I have made some edits throughout the post and highlighted them in bold with suggestions from comments below.

I had previously written a short guide as to how to quickly set up core optimiser using the all core function.  While it does get you extra performance, adjusting every core individualally is the best option if you have the time and patience to do so.

Intro

As a quick recap adjusting CO adjusts the boost/voltage algorithm to gain more performance.  This is something that is done at the factory but like all factory binning there is always a bit of safety margin which it is possible to get closer to to increase performance.

Settings that affect CO performance

The most important are

The CO offset.  Goes from 0 - 30 on the latest AGESANegative CO means undervolting and a higher figure is a greater undervolt thus giving greater power and thermal headroom offering increased performance

And

Power limit.

Aside from undervolting you can unlock power limits allowing increased boost speeds.  Unlocking power limits slightly reduces single core performance but greatly increases mutli core performance. Edit Increasing the power limit will put more stress on your CPU.

Bios settings areDisabled (standard power limit)Motherboard (max power limits)Custom (you can choose the limits uptp max of motherboard settings)

Other settings include

Pbo scalerGoes from 1x - 10x and allows the CPU to be more opportunistic with boosting.  The performance boost is more significant the higher your power limits are set.  With standard power limits there is almost no difference.

LLC setting

A lower LLC setting increases boost speeds as power and heat is reduced without affecting the boost curve.  (EDIT - The least aggressive LLC setting May have different naming depending on motherboard)

With a curve in place there is very little different as they are both doing a similar thing, however if you don't want to use a curve then reducing LLC can give you better single and mutli core performance without making any other changes.

AIO pump speedYou can increase boost by using a higher pump speed as the heat amount is realivrly small but concentrated on high boost single core boosts. Moving it from th cpu as quickly as possible is beneficial even if the overall heat output is small

Boost clock overrideIncreases the maximum possible clock speed the CPU is allowed to boost to.  Worth noting this doesn't automatically mean the CPU will boost higher.

Is it worth it?

Honestly probably not but it's always nice to get the best speed and efficiency possible.  I thought tuning memory was a pain but this is even worse.  Nice once you have it all set up though !

Cautions

If you need you pc to be as reliable as possible leave it on the standard settings.  Make sure you have everything important backed up before tweaking  as there is always a chance you could corrupt windows while testing.

Edit

Raising power limits puts more load on the CPU. Using a high scalar value may increase wear on the CPU

How to:

As suggested by a few people here on the AMD Reddit OCCT is an excellent tool for testing.  It's highly configurable, lets you know how long each test has run and also reports errors.  Best of all it has a variable load setting which will pause testing for a split second then restart it again which is great for finding CO errors.

Download and install fromhttps://www.ocbase.com/

I used the latest beta for my testing.

Configure bios settings

Set PBO to onEnable curve optimiser for all cores and leave it on 0Set power limit to disabled (standard limits)Set scalar to 10xSet LCC to the lowest settingClock Overide : +200 or you decide

Why these settings?

Power limit disabledIncreasing the power limit slightly reduces single core boost.  By keeping the stock power limits you are testing with worst case settings (highest Mhz boost speed).  If you start with an increased power limit (motherboard or custom setting) then later moving to standard power limits would most likely require to to create a new curve.

Set scalar valueIt doesn't really matter what you set here just the fact by setting it manually you know what setting is being used.  There is a very slight stability implication going from 1x to 10x so at least while setting up the curve it's best to pick a value and stick to it.  10x is the hardest to get stable so a good setting to do your testing.

LLC to lowest setting (EDIT - The least aggressive LLC setting May have different naming depending on motherboard)

Two benefits here, one is hardest to get stable with lowest LLC meaning if you have completed your curve and later have stability issues you can the. Raise LLC without having to adjust your curve

Secondly it gives the highest boost speeds and lowest temperatures no matter what settings you choose later.

You can use a higher value if you wish but don't leave it on auto as then you don't know which setting is actually being used.

Clock overrideIt seems the curve continues beyond the standard clock speeds and once the curve is correctly set up I haven't found any stability difference between +0 and +200.  With this on mind I think the best idea is so tune with +200 though I am not sure if it might cause problems on a processor that has lost the silicon lottery.  Either way pick a value and stick to it until your curve is complete.  Don't adjust this after starting to make your curve. Once the curve is complete you can try other settings though.

Before you begin

Firstly  (optional but highly recommended), a quick sanity check.  Boot to Windows and load occt.  Then find you best core (you can view this with Ryzen master or hwinfo)

Use task manager to set occt to your best core and HT core.

Run for an hour and make sure no errors are found. 

The idea behind this is if something else is not stable, for example memory or infinity fabric settings you will find out how rather than many hours into testing later which would make all your results useless.  If an error is found then stop and find the cause before going any further.

The long and boring task

Set a CO value In your bios for the core you want to test.  Enter windows and test using occt.  Longer is better but 15 minutes per core is most likely stable.  Most of the time if the core is unstable and error will be found very quickly.   For your best two cores you may want to go for a longer test as these are the only two that will spend any large amount of time near maximum boost speed. Equally if you have a core that will only accept a very minor undervolt you should probably test that one more thoroughly.

If your test is successful write down the CO number then go back to the bios, set it back to 0 and move onto the next core.

OCCT settings

Test type SSELoad variableSmallExtreme2 Threads

Feel free to experiment with settings but these worked well for me.  Definitely make sure you are using SSE and 2 Threads though as clocks on AVX will be lower making it difficult to detect errors.

To speed things up you might want to go in steps of 5.  For example if -30 doesn't work try -25.  Once you find a number that works you can fine tune by going up by 1 step at a time.  Ie 25 works so you then test 26 then 27 then 28 and so on until you encounter and error.  When you find and error go back by at least one number and then test for stability.

Tips:

Only test one core at once.  Set the CO to 0 on all other cores that you are not testing.  At the end of the testing when you have the results for each core the add them all to the bios.

Some cores will restart the pc when testing fails instead of giving an errors.  Make sure to give these cores extra testing as it is likely the error is coming from the low load/voltage side of the curve meaning that that particular core may pass high frequency testing but fail on light load or when going back to idle.

One good way to do this is by setting the affinity to this core and having occt open buy not actually starting any test.  This will put content very light load on the core and can be a good way of finding low voltage errors.

If the computer does crash and restart check the occt settings as they may have been reset and as it puts AVX on by default you won't get accurate results until you have changed back to SSE.

It can get very confusing making sure you are testing the correct core as windows and bios may show different core numbers (ie bios starts from 0, occt starts from 1 and windows shows SMT cores.)

To make things less confusing I made a quick notepad document on my desktop to list which core was which as when you are doing it over and over again it's very easy to test the wrong core.  For example.

Core 1 = Core 0 BIOS = Windows Cores 1 + 2Core 2 = Core 1 BIOS = Windows Cores 3 + 4Core 3 = Core 2 BIOS = Windows Cores 5 + 6Core 4 = Core 3 BIOS = Windows Cores 7 + 8

And so on

If you fully test each core you should not need to turn off c states or adjust idle power controls in the bios.  As long as you have fully tested each core individualally you should not need

Finally probably the biggest tip of all is that the better cores do not always need less CO and worse cores do not always need more CO.  Each core seems to have a target speed and in general I have found the worst rated cores will accept less of an undervolt than the best rated cores.  For example my 2nd worst rated core is stable with -14 yet my best core is stable with -25

Optimum settings for best single core performance

All cores with lowest stable CO settings

LLC Any

Scalar: Any

Clock Override +200

PBO limits disabled (default power limits)

Optimum settings for best multi core performance

All cores with lowest stable CO settings

LLC 1 (EDIT - The least aggressive LLC setting May have different naming depending on motherboard)

Scalar 10x

Clock Overide Depends on CPU, Any for 5950x.

PBO limits motherboard (or whatever your cooling can handle)

Edit

Optimum settings for best single core performance, increased mutli core performance and least processor stress/wear

All cores with lowest stable CO settings

LLC Lowest setting

Scalar: 1x

Clock Override Any

PBO limits disabled (default power limits)

Hopefully this is helpful.  If you have a six or eight core processor it probably wont take too long to test them all.  For those with 12 or 16 core models it does take a long time !

🌐
SkatterBencher
skatterbencher.com › home › granite ridge overclocking: curve shaper
Granite Ridge Overclocking: Curve Shaper - SkatterBencher
August 14, 2024 - I think the rules behind the curve shaper should be simpler: At -5°C he 100% obeys the rule for low temperature and at 50°C he 100% obeys the rule for medium temperature. In between is just a linear interpolation of both rules.
🌐
SkatterBencher
skatterbencher.com › home › amd curve shaper
AMD Curve Shaper - SkatterBencher
August 6, 2024 - Let us first set up our drawing board: we begin with three voltage-frequency curves of CCD0 of this Ryzen 9 9950X processor: the default curve, the +30 curve optimized, and the -30 curve optimized.
🌐
XDA Developers
xda-developers.com › home › cpu › how to use amd ryzen master
How to use AMD Ryzen Master
December 12, 2024 - This screen shows you sections like Temperature, Speed, Power & Current for system monitoring, including Control Mode, Curve Optimizer, and Cores Section options for any existing overclock details, as well as Voltage Control, Additional Control, and Memory Control for deeper overclocking information.