Credit: Tom's HardwareAMD's unreleased firmware, which the company says will fix the boost behavior of its Ryzen 3000 processors, has leaked onto the Chiphell forums. We grabbed the download and did a round of testing to see if the new BIOS and SMU fixes the boosting behavior of the Ryzen 9 3900X and Ryzen 7 3700X processors.
We have to caution, however, that this is a leaked beta BIOS revision that may not be in its final state, so we'll have to take the results with a grain of salt. In either case, we do see some improvements that fall in line with our expectations for the Ryzen 7 3700X, but we also spotted an odd performance regression with the Ryzen 9 3900X.
AMD's Ryzen 3000 series processors landed two months ago, heralding a new level of performance and value for the mainstream desktop as the company took the lead in the race to leading-edge 7nm node, the first time in its history that it had managed to beat Intel to a denser manufacturing process. But the company's triumphant moment has been marred by persistent reports that the chips aren't achieving their rated boosts speeds, an issue thrust into the spotlight by a recent survey conducted by YouTuber Der8auer in which a surprising number of respondents reported they weren't reaching their rated boost clocks.
That was followed by Intel citing a report that claims reliability is behind AMD's apparent, but not proven, reasons for reducing its chips' frequencies.
AMD announced this week that it had identified an issue with its firmware that reduces performance in some situations and that it would update the community on an incoming fix on September 10.
We dug deep into the issue with tests that found that AMD had altered the thermal boost limits of its processors after launch, leading to less aggressive boost behavior if the chip surpasses the 75C threshold.
First we'll look at the "what," to see if the boost frequencies are in fact fixed with this firmware, and then we'll took a look at the "how" to see the changes that AMD made to bring the issue under control.
Hitting The Boost Switches
We followed the general testing methodology we outlined in our first investigation of AMD's boost behavior. That round of testing found that AMD's Ryzen 3000 processors come with a mix of both faster and slower cores, with the slower cores unable to reach the rated boost specification. To help mitigate the issue, AMD uses the new Windows 10 scheduler to target workloads at the fastest cores first.
The beta MSI BIOS we're using for our tests comes from the Chiphell forums, and it wasn't released through MSI's official channels, meaning there is a chance this isn't the actual BIOS that MSI will release to fix the issue. The official fix will come tomorrow, September 10, 2019.
We ran a series of single- or lightly-threaded tests in rapid succession. The test begins with five iterations of a LAME workload (~35 seconds apiece) that are inherently single-threaded. This is followed by one run apiece of POV-RAY and Cinbench R20, both in single-core testing mode. AMD processors downshift based on the power requirements of the instructions from the task, so these single-threaded tests give us the best chance of capturing single-core boost activity. We're using MSI's X570 Godlike motherboard and AMD-provided chips for testing.
Ryzen 7 3700X Boost Frequencies
Here we plotted the frequency of all eight cores on the left axis, and the temperature (red line at the bottom of the chart) on the right axis. The Ryzen 7 3700X processor is running at its stock settings and a Corsair H115i cooler is running at full speed.
This is the latest version of publicly-posted motherboard firmware for the MSI X570 Godlike motherboard. Here we can see the Ryzen 7 3700X tops out at 4.375 GHz during the run. While this does fall short of the 3700X's rated 4.4 GHz boost, it is by a relatively slim margin. However, the shortcomings vary based on silicon quality, and many users have reported much larger deltas (up to ~250 MHz).
We applied the new ComboPI220.127.116.11ABBA AGESA firmware, and as you can see, the Ryzen 7 3700X now reaches its rate 4.4 GHz across the board. We'll dive in deeper on how AMD rectified the issue shortly.
Ryzen 9 3900X Boost Frequencies
Our tests with the Ryzen 9 3900X don't show the across-the-board improvement we expected, which may be due to the beta nature of the BIOS.
Here we can see the Ryzen 9 3900X with the older ComboPi18.104.22.168ABB AGESA code. This is the last publicly-posted firmware for the X570 Godlike motherboard. We can see that the chip tops out at 4.575 GHz during the run, with the workload migrating among the cores during the test. That's only 0.025 MHz short of the chips' spec, but many users have reported up to 300MHz deltas, and more.
With the new firmware the chip peaks at 4.625 GHz furing the opening moments of the test. The chip settles to 4.6 GHz during the LAME tests, then runs at 4.55 GHz during the POV-RAY portion of the test. Oddly, the chip drops to a lower threshold during the Cinebench run at the tail end of the test, only reaching 4.425 GHz during that portion (yellow lines).
While we see a higher peak boost, the chip actually runs at a lower frequency for the majority of the test. This might be a poor implementation of the firmware for this particular motherboard, or could be due to the beta nature of the BIOS. We'll have to wait until newer firmwares are released for this, and other, motherboards to get the full picture. We've pinged MSI for comment and to see if the company can reproduce this result.
|Ryzen 7 3700X Original Firmware||Ryzen 7 3700X Fix ||Ryzen 9 3900X Original Firmware||Ryzen 9 3900X Fix|
|LAME (lower is better)||14.016s||13.937s||13.578s||13.438s|
|POV-RAY Single-Thread Test (higher is better)||257.35 PPS||259.11 PPS||266.77 PPS||266.76 PPS|
|Cinebench Single-Thread Test (higher is better)||505.44||509.63||525.342||513.32|
Even with the working fix with the Ryzen 7 3700X, while faster, the firmware is only a marginal improvement with our chip. This is largely because our sample already came close to the rated specifications, and users with chips that fall shorter by a larger margin will experience more of a performance uplift.
The Ryzen 9 3900X doesn't experience as much uplift, registering only a slight improvement in the LAME encoding score, and essentially tying the older firmware in the POV-RAY tests. More importantly, we see a performance regression during the Cinebench test, indicating that this firmware may not be tuned for the Ryzen 9 3900X yet.
Changed Temperature Thresholds
Because the Ryzen 9 3900X exhibited an odd performance regression we decided to focus on the Ryzen 7 3700X for this salvo of tests. We'll follow up with more testing for the Ryzen 9 3900X when the official firmwares land.
Our most recent testing focused on whether or not AMD had changed the settings of the SMU, a small unit inside the processor that overrides configuration parameters, to reduce the boost frequencies. Dialing back the temperature thresholds for boost activity reduces overall clock speed during extended workloads, meaning that AMD had adjusted the temperature settings to reign in clock speeds. One industry source claims these adjustments were made to increase the chips' longevity, but while we can confirm that AMD adjusted the thresholds, we can't conclusively say it was to extend chip longevity.
We began the tests with all fans and the pump on a Corsair H115i running at full speed. We then kicked off a single-threaded Cinebench test to expose the maximum boost attainable with our Ryzen 7 3700X sample. We allowed this test to run for 60 seconds so the chip could settle into its 'natural' state during the workload, then unplugged the fans and pump and allowed the chip's temperature to rise to 95C. This is the maximum temperature rating of AMD's 7nm processors, which is a lowered range compared to the previous-gen's 100C. That means AMD doesn't have as much thermal headroom to play with.
This testing technique allows us to record changes to the frequency as temperature increases. We did our best to isolate all parameters, and due to that nature of this testing, the cooling solution and ambient temps aren't a factor. These are the same tests we ran in our recent piece, but we are using a different motherboard for this round of testing.
Here we see the test results with the BIOS provided to reviewers for the first round of Ryzen 3000 testing. Again, we plotted the frequency of all eight cores on the left axis, while the temperature is plotted on the right. The temperature reading is the rising red line, and we've added markers to note where the temperature first reaches 75C, 78C, and 80C, which are the focus areas. This BIOS comes with AGESA version 22.214.171.124A and SMU version 46.32.0.
The chip remains comfortably above 4.2 GHz as it moves between 70C and 80C.
Here we can see the latest version of the firmware that is posted to MSI's site. This test shows that AMD dialed back the thermal limit for boost activity, cutting it to a flat 4.2 GHz from 70C to 80C. That results in less aggressive boosting activity during extended workloads.
We generated these results with the new beta BIOS and SMU version that fixes the boost frequencies for the Ryzen 3 3700X. With older motherboard firmwares, the chips would drop into different power states at the 75C and 80C thresholds. Now the chip stays above 4.2 GHz from 75C to 78C, indicating that Shamino's mention of a new middle-frequency limit was probably accurate.
That means there is more to this fix than just dialing the firmware back to the same limits as the first round of "reviewer BIOS's."
We also spotted that MSI added a new Collaborative Power and Performance Control 2 option to its BIOS. This is a software feature that manipulates Ryzen 3000's power states from within the operating system. This is similar to Intel's Speed Shift technology and reduces power state transition latency from 30ns to 1ns, which ultimately saves power and boosts efficiency. The feature comes enabled in the latest AMD chipset drivers and the Windows 10 May update (and newer).
We enabled the feature for the previous tests, but disabled it for this final test. Here we see that the chip doesn't appear to boost correctly with the feature disabled. The presence of this new setting implies that AMD has also made changes to this feature, as well.
Unfortunately we'll have to wait until tomorrow for the full certified BIOS fixes and official word from AMD on the matter. While this BIOS revision does deliver some of the expected improvements in boost activity, at least with our Ryzen 7 3700X sample, we'll wait until the official release before we come to any firm conclusions.
We'll dive in deeper with these tests, and add frequency and voltage scaling, as soon as we receive the new firmwares. Stay tuned.