My Experience with Precision Boost Overdrive 2 on a 5900X

Looking for the TL;DR? These are my everyday settings:

  • PPT – 185W, TDC – 125A, EDC – 170A. To run these power settings, you’ll need a beefy cooler. If the CPU gets too hot with these power settings, try PPT- 165W, TDC – 115A, EDC – 150A
  • Negative 11 for the first preferred cores on CCX 0 (as indicated by Ryzen Master)
  • Negative 15 for the second preferred core on CCX 0 (as indicated by Ryzen Master)
  • Negative 17 for the other cores.
  • These moved my multithreaded Cinebench R20 score from 8250 to around 8800-9000 (6-9% gain) and my single threaded Cinebench R20 score from 630 to 650 (3% gain).

__________________________________________________________________________________________________________________

Recently AMD announced a new algorithm for the Precision Boost Overdrive (PBO), aptly named Precision Boost Overdrive 2 (PBO2). You can read more here: AMD Ryzen™ Technology: Precision Boost 2 Performance Enhancement | AMD and here: AMD Introduces Precision Boost Overdrive 2, Boosts Single Thread Performance | Tom’s Hardware. This post is not intended to explain the technicalities of this feature, rather than how to take advantage of it.

To get started, you will need to navigate to the BIOS. Unfortunately, now you cannot use Ryzen Master to do this, but AMD claims that this will be part of Ryzen Master in their future releases. In the PBO section, you will need to adjust some settings.

Navigating to AMD Overclocking in the BIOS

My specs are as following:

  • AMD Ryzen 5900x
  • ASRock X570 Steel Legend
  • 32GB C17 Memory
  • 750w PSU
  • 240MM AIO from BeQuiet.

At first, naively, I’ve set the power limits (PPT, TDC and EDC) to 0, which means unlimited. This in turn has a negative effect. It will let the CPU get as much power as it can. This translates into unnecessary power consumption, which will limit the maximum clock speed achieved. I’d suggest sticking to values which will keep the CPU under (or close to 80C under full load).

In my case, the maximum power settings I manage to sustain are: PPT – 185W, TDC – 125A, EDC – 170A. The recommended values for your CPU will vary according to the silicon quality and the cooling provided. Cooling 185W is not an easy feat, you’ll need a good cooler (such as a good NH-D15 (noctua.at), some good AIO (I am using Pure Loop | 240mm silent essential Water coolers from be quiet!).

Setting the PPT, TDC and EDC in a well balanced value is extremely important, this will help you strike the balance between the power consumption needed by the CPU while maintaining realistic temperatures. If the CPU gets too hot with these power settings, try PPT- 165W, TDC – 115A, EDC – 150A

I have set the PBO scalar to manual and 10x. I will be honest I am not sure what impact this has, but it looks like a setting which needs tweaking. I’ve tried 1X and honestly I did not feel any difference. From what I can understand, this is the length of how much the CPU will remain pumping high voltage / clocks until it dials it down. In burst scenarios, this should not have any impact.

Max CPU Boost Clock Override should be set to 200MHZ. This allows for higher clock speeds on single threaded workloads. My 5900x can hit 5.15 GHz with this setting on a single core. 5.15 GHZ is not a one-off number. I regularly see this during light workloads

Navigating to the Curve Optimizer in BIOS

Now, for the most important part: The Curve Optimizer. For the best and second core for each CCD, I have set this to negative 10, and for the other cores I have set it to minus 15.

The next step is quite difficult to instruct, as it purely depends on your silicon quality. In my case, I found the following settings to work for me:

  • Negative 11 for the first preferred cores on CCX 0 (as indicated by Ryzen Master)
  • Negative 15 for the second preferred core on CCX 0 (as indicated by Ryzen Master)
  • Negative 17 for the other cores

It took quite a lot of testing to arrive to these figures. You can find the first and second preferred cores from Ryzen Master.

Per Clock adjustments in the Curve Optimizer

Firstly, I started with negative 20 on all cores. This resulted in awesome Cinebench R20 scores but poor stability. I have then went to negative 15 on all cores. This was not bad, but I was experiencing a crash every now and then, especially when the PC is running cold and is able to push more clocks. It would run all day, but on boot, pushing it will instantly result a crash. This tells me that the algorithm was trying to push for more clocks, but the undervolting was too aggressive.

I then went to negative 10 on all cores and it is fully stable. Finally, I pushed negative 15 for those cores which are not first or second. This remained stable, and eventually I started changes the values slightly everday. Sometimes I go too much and get a WHEA BSOD (especially when the PC is cool and under light workloads).

These moved my multithreaded Cinebench R20 score from 8250 to around 8800-9000 (6-9% gain) and my single threaded Cinebench R20 score from 630 to 650 (3% gain). These are small gains, but when they are coming at you with no cost, it’s good to take advantage of it. And yes, these do not really translate to any tangible performance uplift in everyday computing.

Preferred Cores (Star is 1st, dot is second)

The performance uplift is thanks to higher sustained clocks. With PBO turned off, I was sustaining around 4.1 GHz core clock and with PBO on, I am sustaining between 4.4-4.5 GHz in Cinebench R20.

Cinebench scores with PBO2
Full load under Cinebench R20

Simpler workloads (non AVX) will clock past 4.5 GHz. I suspect that Ryzen calms down the clocks by a bit during AVX workloads, but I cannot confirm this.

Full load under a synthetic load – Memtest 64

Please let me know your experience with PBO2 and whether you find this post useful. If you got better settings than mine, I appreciate the feedback! Of course, keep in mind that as AMD said, no processor is the same; some might need more voltage than others to remain stable. It also depends on the power delivery quality, the sustained temperatures, the quality of the thermal paste, the overall case temperature and a plethora of other things, as mentioned in the first link to AMD’s site.

27 thoughts on “My Experience with Precision Boost Overdrive 2 on a 5900X

    • Your results may vary, depending on the silicon quality, the motherboard and the kind of power you’re delivering. After writing this blog I even pushed my settings more, I’m running negative 11 on core 0, negative 17 on cores 1-10 and negative 20 on core 11. When I push it too much, normally I experience a crash when the computer is still cold and I run a Geekbench benchmark. Cinebench in my case never crashed my PC, as the total voltage required per core is typically less (since it’s running an all core load). What I’d suggest is running a less aggressive setting on your fastest core (typically Core 0), maybe a -5 or -7.

      Like

  1. Hi, thank you for this article! Great work. And finally, somebody who tried PBO 2 settings and shared his experiences with others 🙂 Based on your article I tried both (the same negative for all cores, then different for some cores). But after a few weeks, I turned PBO 2 off. Yes, there was some performance gain. But at the cost of higher temperatures. Running BOINC at 100 % on all cores was 84°C with PBO 2 vs. 74°C without PBO 2.
    So without PBO 2, my CPU can run at 100 %, and I barely hear the fan (Noctua NH-U12A). With PBO 2 turned on, my PC was noticeably noisier. Not as much as my previous PC, Noctua cooler is great, but the performance increase was not worth it.

    Liked by 1 person

    • Hi Martin,

      Thanks for your comment! Actually, after writing this article, I made several tweaks to my settings, which both increased performance (I hit 8.9+, very close to 9k on CB).

      I tweaked my offsets a bit more, but obviously these depend from chip to chip. My fastest core is -12, second fastest core is -15, -18 for all other cores in CCD0. On CCD1, I’m running a mix of -17 and -20.

      The most important step I took to limit my temperatures is to properly set PPT, TDC and EDC. Too high numbers will pump too much voltage for no reason. My sweet spot at the moment is 185 PPT, 125 TDC and 170 EDC, which nets me around 4500Mhz all core on Cinebench. You might be tempted to put more TDC and EDC, and they will be maxed to 100% when running a multithreaded workload. If you increase TDC and EDC, they’ll be consumed, which means more power and more heat, with very minimal performance. I’m actually tempted to go 180PPT, 120 TDC and 170 EDC. This setting on average reduces my temperatures between 3-5C at the cost of around 50MHZ on all core boost (4450 all core on Cinebench). The quoted core clocks vary with temperatures. When I turn on my PC in the morning. I observe higher all-core clock, as PBO is temperature sensitive.

      I also set the scalar to 1x. I think this is to persist PBO clocks on long running high demand operations. I did not observe any hit in reality.

      TL;DR limit your power to 185 PPT, 125 TDC and 170 EDC (or slightly less, depending on your temperatures). My target is to never (or barely) go over 80C

      Liked by 1 person

      • Do you use the same EDC and TDC maximums for both CPU and SOC?
        I have the same motherboard and CPU so just starting to play with the PBO settings.
        Currently hitting 4.5Ghz all core with a max temp of 76C.

        Liked by 1 person

      • Hi Andy,

        EDC and TDC for SoC are set to 0. Honestly I have no idea whether this has any impact; there is no real way how to measure these in Ryzen Master. Or maybe..I’m missing something.

        That’s a good speed you’re achieving. Unfortunately I cannot sustain 4.5 Ghz on all cores, my temperatures shoots up too much. What are your settings?

        Like

      • Hi Albert,

        I use the PPT, TDC and EDC you mention above (185 PPT, 125 EDC, 170 TDC) although I did also put the 125 and 170 in the SOC boxes, but these only show up in Ryzen Master if you are using an APU so I’m not sure it makes any difference for us.
        Scalar is currently set to 10X, OC to 200Mhz and Thermal limit to 255. For the curve optimiser I have started with your original settings of -10 on the 2 best cores in each CCD and -15 for the rest.
        It got me 21466 in Cinebench R23 although only 8280 in R20. CPU seems to be hitting the 125 and 170 limits so I might increase that at some point just to see if that changes what it can do.
        Temps maxing at 75-76C using an Arctic Liquid Freezer II 360mm.
        My single core speed boost seems to be maxing just shy of 5Ghz so definitely not seeing the 5.15 that you have achieved.

        Like

      • Hi Andy,

        Increasing the EDC and TDC in your case will probably push your temperatures further ahead with minimal performance uplift.

        It’s weird that you’re stuck with “just” 8280 in R20. Do you have any other background tasks? What kind of all-core clock speeds are you achieving during the run? Your Curve optimizer settings look good. You may have a bit more room, but not much more.

        Great to understand that we don’t need to worry about the SoC ones. What you’re saying makes sense.

        Maybe you’re power limited from the motherboard? These generation of motherboards have addition 4/8 pin on the socket..maybe it helps (though I am under the impression that the secondary power is used under LN2 conditions.

        I’d suggest setting the Thermal Limit to 90C so the CPU can thermal throttle. According to AMD, the 5900x’s max temps are 90C – https://hothardware.com/Image/Resize/?width=1170&height=1170&imageFile=/contentimages/Article/3039/content/big_thermals-ryzen-5000.jpg

        Like

      • Hi Albert,

        I shutdown all the open tasks I could and managed to boost my R20 Score to 8550 and the R23 Score to over 22K so that certainly helps. I might try reconnecting the 4 pin power connector and see if that makes any difference, although I’m sceptical that it would. I had it connected in the past, but my previous CPU was only 65W so it was entirely pointless to have it.

        Liked by 1 person

      • Hi Andy.

        I feel that the score can be a bit higher. What is your CPU temperature when you’re running the benchmark? I suspect that if you lower the PPT, EDC and TDC to something like 160/115/140, you might actually see a small boost. Although the CPU will be sucking in less power, the CPU will be heating up less, allowing to boost more.

        The 4-pin is connected in my case but I am not sure if this is really helping or a placebo effect. I’d probably you’re being held back by thermal limits.

        Like

  2. This was extremely helpful, thank you Albert! Following your PBO limits I went from 8200 to 8800-8900 C20 score on 5900x / X570 Taichi @ 4.5ghz with Dark Rock Pro 4 at 80C peak. -7 on stars and -5 second best cores on both CCD0 & CCD1 with -15 for the rest. This actually lowered my idle temp around 7 degrees after lowering my chipfan curve due to noise. This was a fun exercise for a casual overclocker. One question, how are you deducing how far to tweak each core, do you crash then dial the value back for each core? For your CCD1 do you still have a smaller offset for star & circle core?

    Like

    • +1! Could you please tell us how you tested the individual cores to get the best possible curve-setting? I have tried get to that point with Super PI mod 1.5 XS and setting core affinity in task manager… But even after hour of testing the result where too inconsistent.

      Like

      • What I’ve done in my case was leave HWInfo on and see what cores are hitting the most clock speeds. I noticed that the highest core in terms of frequency will allow for less negative offsets (this is especially true for the Core 0 and Core 3, my fastest cores. They also seem to be hitting the magical 5.15 Ghz, which tells me that there is not much more to gain through these cores, in single threaded workloads at least.

        I used GeekBench for stability tests. It has a mix of low CPU load, Single CPU load and Multi core CPU load, which tends to crash my PC if I go overboard with the curve settings.

        What do you mean inconsistent? Are you getting WHEA errors?

        Like

      • For example: These are my results for one core.

        Super Pi / 4M; +200MHz Boost
        Core 1; +-0; 34,338s; ~1,433V
        Core 1; -10; 35,506s; ~1,362V
        Core 1; -15; 34,112s; ~1,315V
        Core 1; -18; 34,112s; ~1,302V
        Core 1; -19; 34,609s; ~1,294V
        Core 1; -20; 37,987s; ~1,287V
        Core 1; -25; 38.956s; ~1,25V
        Core 1; -30; crash

        I measured how fast superpi is calculatating. The less time, the better. According to the table above the beste curve setting for my core 1 would be -18. But later on I tested the core again and got different results. That is what I meant with “inconsistent”.

        Like

      • Of course this depends on the CPU scheduling that happens to take place on your OS. Your results are very interesting to see; it shows diminishing returns. What also surprises me is the low voltage. On single core, I’m pushing 1.475 with -11 offset! Your results look very nice in terms of performance. I manage to do it in 37.75s

        Like

    • Hi, great to hear that you found this guide useful. I am a casual overclocker like you; I’m just interested in getting the maximum performance whilst still being useful in everyday computing (working from home, thanks COVID!) To deduce per core, I tend to change one setting everyday and just work through the day with the setting and see whether I experience any crash). It has taken me literally weeks to arrive to the numbers that I run everyday. There might be some room for improvement, but I do not feel that it’s worth my time anymore, as I am getting the numbers I’d like to see while hovering close to uncomfortable temperatures. I feel I’ve reached my limits. In my case, better cooling would be the obvious upgrade path, as I always seem to be hitting 80s. Cooling 185W of power is no easy feat.

      Like

  3. Hey, first very good guide and tips on pbo2. Second I would like to ask you have you noticed any gaming performance gains using this overclocks? I mean ok benchmarks and multicore are one thing, but it would be interesting if somebody shown how to tweak 5900x or such to maximize gaming performance and fps. Thanks

    Like

    • Hi, for most games the GPU is what matters, not the CPU. When I’m playing a game, my GPU is at 100 % while the CPU load is under 30 %.

      Like

    • No tangible improvement in games, though I’ll be honest I never measured..but it depends.

      If you’re GPU bound, which is mostly the case when playing games, you will barely notice a difference. If you’re CPU bound (playing on lower resolutions, most of the time) you will see see some differences.

      In my case, I got a 5900x and an RTX 3080. The GPU will always be my limiting factor in games, therefore the impact is minimal.

      Liked by 1 person

  4. Hi, love your blog! I followed your instruction to the letter but only got 8246 score on Cinebench R20. What do you would caused this low score?
    Here is my spec:
    -AMD Ryzen 5900X
    -MSI X570 Tomahawk
    -32GB C16 TridentZ 3600
    -850W PSU
    -MSI CoreLiquid 240
    PBO: Yes +200MHz
    Core 1 -11, Core 2 -15, rest -17
    PPT185/TDC125/EDC170
    Idle temp: 43-44C
    Cinebench R20 Multi: 8246 (peak at 68C)
    Thanks before 🙂

    Like

    • Hi, appreciated! Okay, for the selected power target, you’re maintaing a very good temperature.. I’d say too good to be true. Maybe there is some kind of Voltage offset? What core clocks are you maintaing under cinebench all core load, and what voltage. Same question goes for cinebench single core. I’d encourage you to post ryzen master screenshots for this

      Like

  5. Hi Albert ! Thanks for the great tutorial
    I’m wondering if the ‘Motherboard’ PBO Limits work for you ? I’m running an AMD R9 5900X & Asrock X570 Taichi, and whenever I try that setting I get very low frequencies and absurd PPT, TDC & EDC values

    Here’s a screenshot during a R23 run : https://www.overclock.net/attachments/yours-jpg.2474331/

    Notice how the CPU consumption maxes out at 100W ? It’s like there’s a hard limit set somewhere ; even though the EDC & TDC are reaching ‘OC’ values.

    Thanks for your help

    Like

    • Hi Julien,

      Those values you see in Ryzen master are crazy. I think those are just some arbitrary numbers added by the developers of the Asrock BIOS.

      I’ve set mine as manual (or whatever it’s called) and dialed in my numbers as recommended. 100w is below the values out of the box (which is 142w).

      Key is to find a balance with all values, I think the right values should all hit 100% usage.

      Liked by 1 person

      • Thanks for the quick answer !
        I’ld like to use Manual values too but I fear it’s ‘dangerous’ for the CPU. I have the Noctua NH D15 so Temperature is not much of an issue, but I wonder whats considered safe or not when it comes to Amperage.

        Like

      • Hi Julien,

        The AMD out of the box values are: PPT: 142w, EDC: 95A, TDC: 140A –
        https://www.overclock.net/threads/understanding-the-sizing-and-limits-of-ppt-tdc-and-edc.1732088/

        As you can see, the values I recommend are not that far away. I’ve tried pushing 200W PPT, which was a bit unsafe. I was hitting 85-90C almost instantly. Having said that, AMD say that 90C is a good operating temperature for the 5900X – https://sirusgaming.com/2021/01/12/ryzen-5000-cpu-temperatures-90-typical-by-design-amd/. Of course, these are too much in my opinion and should be avoided.

        I believe that your cooler will easily cool it. If you think it’s too much, try PPT: 160w, EDC: 115A, TDC: 140A. This is a mild step up, but will yield good performance. I’ve tried these values – I hover around 75C with around 8750 in Cinebench R20. I’m actually using them at the moment as for my cooling capabilities, it strikes a balance between thermals, power consumption and performance.

        Your motherboard has internal protective measures to avoid it from cooking itself (which can be turned off, by the way, but I don’t recommend obviously.

        Of course, you spent a good amount of money on your PC. If you feel that you should not be touching power limits, don’t. Some adjustments to the curve optimizer will net you some performance as well.

        Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s