Tuesday, September 10th 2019
AMD AGESA 1.0.0.3ABBA Detailed, Fixes Zen2 Boost Issues
AMD is giving final touches to an AGESA microcode update that fixes the issue of underwhelming Precision Boost behavior on its 3rd generation Ryzen processors. Version ComboAM4 1.0.0.3ABBA is being pushed to motherboard manufacturers to integrate with their UEFI firmware, and one such dispatch to MSI got leaked to the web on ChipHell. Tom's Hardware grabbed the BIOS as it was compatible with the MEG X570 Creator motherboard they have, and tested the Ryzen 9 3900X and Ryzen 7 3700X with it.
In its testing, posted in a mini-review article, Tom's Hardware observed that with AGESA 1.0.0.3ABBA, their 3700X sample was correctly hitting 4.40 GHz across the board at stock settings. With the older 1.0.0.3AB, it would touch 4.375 GHz. The Ryzen 9 3900X behaves slightly differently with this microcode. Tom's Hardware was able to raise its peak boost frequency from 4.575 GHz to 4.625 GHz (above the 4.60 GHz specification), but in certain tests such as POV-Ray and Cinebench, its boost frequency decays down to 4.250 GHz. Overall, the reviewer tabulated improved performance on the chips with the new microcode. The new microcode also apparently changes the processor's thermal thresholds.Update (10/9) AMD posted an elaborate release detailing the AGESA 1.0.0.3ABBA update.
Hello, everyone! We're delighted by your support and the strong momentum of 3rd Gen AMD Ryzen processors in the marketplace, and we continue to watch your feedback closely. Today we have some important updates for you concerning processor boost behavior, desktop idle behavior, and a new monitoring SDK. The first two changes will be arriving in BIOSes based on AGESA 1003ABBA, and we are planning to make the SDK public on developer.amd.com with a target release date of September 30.
Boost Changes
Starting with our commitment to provide you an update on processor boost, our analysis indicates that the processor boost algorithm was affected by an issue that could cause target frequencies to be lower than expected. This has been resolved. We've also been exploring other opportunities to optimize performance, which can further enhance the frequency. These changes are now being implemented in flashable BIOSes from our motherboard partners. Across the stack of 3rd Gen Ryzen Processors, our internal testing shows that these changes can add approximately 25-50 MHz to the current boost frequencies under various workloads.
Our estimation of the benefit is broadly based on workloads like PCMark 10 and Kraken JavaScript Benchmark. The actual improvement may be lower or higher depending on the workload, system configuration, and thermal/cooling solution implemented in the PC. We used the following test system in our analysis:
Going forward, it's important to understand how our boost technology operates. Our processors perform intelligent real-time analysis of the CPU temperature, motherboard voltage regulator current (amps), socket power (watts), loaded cores, and workload intensity to maximize performance from millisecond to millisecond. Ensuring your system has adequate thermal paste; reliable system cooling; the latest motherboard BIOS; reliable BIOS settings/configuration; the latest AMD chipset driver; and the latest operating system can enhance your experience.
Following the installation of the latest BIOS update, a consumer running a bursty, single threaded application on a PC with the latest software updates and adequate voltage and thermal headroom should see the maximum boost frequency of their processor. PCMark 10 is a good proxy for a user to test the maximum boost frequency of the processor in their system. It is fully expected that if users run a workload like Cinebench, which runs for an extended period of time, the operating frequencies may be lower than maximum throughout the run.
In addition, we do want to address recent questions about reliability. We perform extensive engineering analysis to develop reliability models and to model the lifetime of our processors before entering mass production. While AGESA 1003AB contained changes to improve system stability and performance for users, changes were not made for product longevity reasons. We do not expect that the improvements that have been made in boost frequency for AGESA 1003ABBA will have any impact on the lifetime of your Ryzen processor.
Revisiting Calmer Idle
In late July, we implemented a series of software changes that would help the processor ignore requests for voltage/frequency boost from lightweight applications. The goal was to make the processor more relaxed at the desktop, but poised to react for serious workloads. While many of you were happy with the effect of the software changes, some of you were still grappling with cases where the CPU was a bit overzealous with boost. We wanted to smooth those out, too.
Today we're announcing that AGESA 1003ABBA carries firmware-level changes designed to do just that. The changes primarily arrive in the form of an "activity filter" that empowers the CPU boost algorithm itself to disregard intermittent OS and application background noise. Example test cases might include: video playback, game launchers, monitoring utilities, and peripheral utilities. These cases tend to make regular requests for a higher boost state, but their intermittent nature would fall below the threshold of the activity filter.
Net-net, we expect you'll see lower desktop voltages, around 1.2 V, for the core(s) actively handling such tasks. We believe this solution will be even more effective than the July changes for an even wider range of applications.
Please keep in mind, however, that this firmware change is not a cap. The processor must still be free to boost if active workload(s) seriously require it, so you should still expect occasions where the processor will explore its designed and tested voltage range of 0.2 V to 1.5 V.
New Monitoring SDK
Obtaining reliable data about the operating behavior of a processor is important to enthusiasts such as myself. There are many monitoring utilities on the market, and we work with many of them to ensure they're accessing telemetry data in a sensible manner. Regardless of the utility, however, it's common sense that all the tools should roughly correlate when you ask a simple question like "what's my CPU temperature?"
Enabling a consistent experience across monitoring utilities is important to us. That's why we're announcing the September 30 release of the AMD Monitoring SDK that will allow anyone to build a public monitoring utility that can reliably report a range of key processor metrics in a consistent manner. Altogether, there are 30+ API calls within the first SDK release, but we've highlighted a few of the more important or interesting ones below:
This SDK will be available for public download on developer.amd.com on September 30. As a preview of what the new SDK can enable, AMD Ryzen Master (version 2.0.2.1271) has already been updated with the new Average Core Voltage API for 3rd Gen Ryzen Processors. It's ready for download today!
As noted above, Average Core Voltage shows you average voltages that all CPU cores are experiencing over a short sample period after you factor in sleep states, idle states, active power management, and Vdroop. Depending on the load on the processor, this value might be quite different from Peak Core(s) Voltage.
For example: if the processor is lightly loaded on a few cores, the overall activity level of all the CPU cores will be relatively low and, therefore, the Average Core Voltage will be low as well. But the active cores still need intermittently higher voltages to power boost frequencies, which will be reflected in the Peak Core Voltage. As the CPU comes under full load, these two values will eventually converge representing that all cores are active at approximately the same intensity. The overall goal of these two values is to show you what's happening moment-to-moment the most loaded cores (Peak), and what's happening more generally to the CPU cores over time (Average).
We hope new APIs like Average Core Voltage give you a better understanding of how our processors behave, and we can't wait to see more tools make use of the new monitoring SDK. Visit amd.com on September 30 for the first public release!
What to Expect Next
AGESA 1003ABBA has now been released to our motherboard partners. Now they will perform additional testing, QA, and implementation work on their specific hardware (versus our reference motherboard). Final BIOSes based on AGESA 1003ABBA will begin to arrive in approximately three weeks, depending on the testing time of your vendor and motherboard.
Going forward, we'll continue providing updates in this format as the updates are being prepped for release.
Sources:
Tom's Hardware, ChipHell
In its testing, posted in a mini-review article, Tom's Hardware observed that with AGESA 1.0.0.3ABBA, their 3700X sample was correctly hitting 4.40 GHz across the board at stock settings. With the older 1.0.0.3AB, it would touch 4.375 GHz. The Ryzen 9 3900X behaves slightly differently with this microcode. Tom's Hardware was able to raise its peak boost frequency from 4.575 GHz to 4.625 GHz (above the 4.60 GHz specification), but in certain tests such as POV-Ray and Cinebench, its boost frequency decays down to 4.250 GHz. Overall, the reviewer tabulated improved performance on the chips with the new microcode. The new microcode also apparently changes the processor's thermal thresholds.Update (10/9) AMD posted an elaborate release detailing the AGESA 1.0.0.3ABBA update.
Hello, everyone! We're delighted by your support and the strong momentum of 3rd Gen AMD Ryzen processors in the marketplace, and we continue to watch your feedback closely. Today we have some important updates for you concerning processor boost behavior, desktop idle behavior, and a new monitoring SDK. The first two changes will be arriving in BIOSes based on AGESA 1003ABBA, and we are planning to make the SDK public on developer.amd.com with a target release date of September 30.
Boost Changes
Starting with our commitment to provide you an update on processor boost, our analysis indicates that the processor boost algorithm was affected by an issue that could cause target frequencies to be lower than expected. This has been resolved. We've also been exploring other opportunities to optimize performance, which can further enhance the frequency. These changes are now being implemented in flashable BIOSes from our motherboard partners. Across the stack of 3rd Gen Ryzen Processors, our internal testing shows that these changes can add approximately 25-50 MHz to the current boost frequencies under various workloads.
Our estimation of the benefit is broadly based on workloads like PCMark 10 and Kraken JavaScript Benchmark. The actual improvement may be lower or higher depending on the workload, system configuration, and thermal/cooling solution implemented in the PC. We used the following test system in our analysis:
- AMD Reference Motherboard (AGESA 1003ABBA beta BIOS)
- 2x8GB DDR4-3600C16
- AMD Wraith Prism and Noctua NH-D15S coolers
- Windows 10 May 2019 Update
- 22°C ambient test lab
- Streacom BC1 Open Benchtable
- AMD Chipset Driver 1.8.19.xxx
- AMD Ryzen Balanced power plan
- BIOS defaults (except memory OC)
Going forward, it's important to understand how our boost technology operates. Our processors perform intelligent real-time analysis of the CPU temperature, motherboard voltage regulator current (amps), socket power (watts), loaded cores, and workload intensity to maximize performance from millisecond to millisecond. Ensuring your system has adequate thermal paste; reliable system cooling; the latest motherboard BIOS; reliable BIOS settings/configuration; the latest AMD chipset driver; and the latest operating system can enhance your experience.
Following the installation of the latest BIOS update, a consumer running a bursty, single threaded application on a PC with the latest software updates and adequate voltage and thermal headroom should see the maximum boost frequency of their processor. PCMark 10 is a good proxy for a user to test the maximum boost frequency of the processor in their system. It is fully expected that if users run a workload like Cinebench, which runs for an extended period of time, the operating frequencies may be lower than maximum throughout the run.
In addition, we do want to address recent questions about reliability. We perform extensive engineering analysis to develop reliability models and to model the lifetime of our processors before entering mass production. While AGESA 1003AB contained changes to improve system stability and performance for users, changes were not made for product longevity reasons. We do not expect that the improvements that have been made in boost frequency for AGESA 1003ABBA will have any impact on the lifetime of your Ryzen processor.
Revisiting Calmer Idle
In late July, we implemented a series of software changes that would help the processor ignore requests for voltage/frequency boost from lightweight applications. The goal was to make the processor more relaxed at the desktop, but poised to react for serious workloads. While many of you were happy with the effect of the software changes, some of you were still grappling with cases where the CPU was a bit overzealous with boost. We wanted to smooth those out, too.
Today we're announcing that AGESA 1003ABBA carries firmware-level changes designed to do just that. The changes primarily arrive in the form of an "activity filter" that empowers the CPU boost algorithm itself to disregard intermittent OS and application background noise. Example test cases might include: video playback, game launchers, monitoring utilities, and peripheral utilities. These cases tend to make regular requests for a higher boost state, but their intermittent nature would fall below the threshold of the activity filter.
Net-net, we expect you'll see lower desktop voltages, around 1.2 V, for the core(s) actively handling such tasks. We believe this solution will be even more effective than the July changes for an even wider range of applications.
Please keep in mind, however, that this firmware change is not a cap. The processor must still be free to boost if active workload(s) seriously require it, so you should still expect occasions where the processor will explore its designed and tested voltage range of 0.2 V to 1.5 V.
New Monitoring SDK
Obtaining reliable data about the operating behavior of a processor is important to enthusiasts such as myself. There are many monitoring utilities on the market, and we work with many of them to ensure they're accessing telemetry data in a sensible manner. Regardless of the utility, however, it's common sense that all the tools should roughly correlate when you ask a simple question like "what's my CPU temperature?"
Enabling a consistent experience across monitoring utilities is important to us. That's why we're announcing the September 30 release of the AMD Monitoring SDK that will allow anyone to build a public monitoring utility that can reliably report a range of key processor metrics in a consistent manner. Altogether, there are 30+ API calls within the first SDK release, but we've highlighted a few of the more important or interesting ones below:
- Current Operating Temperature: Reports the average temperature of the CPU cores over a short sample period. By design, this metric filters transient spikes that can skew temperature reporting.
- Peak Core(s) Voltage (PCV): Reports the Voltage Identification (VID) requested by the CPU package of the motherboard voltage regulators. This voltage is set to service the needs of the cores under active load, but isn't necessarily the final voltage experienced by all of the CPU cores.
- Average Core Voltage (ACV): Reports the average voltages experienced by all processor cores over a short sample period, factoring in active power management, sleep states, Vdroop, and idle time.
- EDC (A), TDC (A), PPT (W): The current and power limits for your motherboard VRMs and processor socket.
- Peak Speed: The maximum frequency of the fastest core during the sample period.
- Effective Frequency: The frequency of the processor cores after factoring in time spent in sleep states (e.g. cc6 core sleep or pc6 package sleep). Example: One processor core is running at 4 GHz while awake, but in cc6 core sleep for 50% of the sample period. The effective frequency of this core would be 2 GHz. This value can give you a feel for how often the cores are using aggressive power management capabilities that aren't immediately obvious (e.g. clock or voltage changes).
- Various voltages and clocks, including: SoC voltage, DRAM voltage, fabric clock, memory clock, etc.
This SDK will be available for public download on developer.amd.com on September 30. As a preview of what the new SDK can enable, AMD Ryzen Master (version 2.0.2.1271) has already been updated with the new Average Core Voltage API for 3rd Gen Ryzen Processors. It's ready for download today!
As noted above, Average Core Voltage shows you average voltages that all CPU cores are experiencing over a short sample period after you factor in sleep states, idle states, active power management, and Vdroop. Depending on the load on the processor, this value might be quite different from Peak Core(s) Voltage.
For example: if the processor is lightly loaded on a few cores, the overall activity level of all the CPU cores will be relatively low and, therefore, the Average Core Voltage will be low as well. But the active cores still need intermittently higher voltages to power boost frequencies, which will be reflected in the Peak Core Voltage. As the CPU comes under full load, these two values will eventually converge representing that all cores are active at approximately the same intensity. The overall goal of these two values is to show you what's happening moment-to-moment the most loaded cores (Peak), and what's happening more generally to the CPU cores over time (Average).
We hope new APIs like Average Core Voltage give you a better understanding of how our processors behave, and we can't wait to see more tools make use of the new monitoring SDK. Visit amd.com on September 30 for the first public release!
What to Expect Next
AGESA 1003ABBA has now been released to our motherboard partners. Now they will perform additional testing, QA, and implementation work on their specific hardware (versus our reference motherboard). Final BIOSes based on AGESA 1003ABBA will begin to arrive in approximately three weeks, depending on the testing time of your vendor and motherboard.
Going forward, we'll continue providing updates in this format as the updates are being prepped for release.
110 Comments on AMD AGESA 1.0.0.3ABBA Detailed, Fixes Zen2 Boost Issues
I am happy they did something, I am just worried that like with the testing of this issue, once it gets push to the board makes we are going to get mixed results on the level of improvement.
No, my CPU couldn't boost 1MHz beyond 4,400MHz until recently and it's an issue several other people have had here, that there has been a hard ceiling which can't be bypassed in any way whatsoever.
This was fixed on Gigabyte boards a few weeks ago and a couple of my cores would boost to 4,525MHz, but the rest would be 4,475MHz at the most. Now, as you can see, all cores boosts to a minimum of 4,550MHz, so this clearly changes things significantly. I.e. I'm now boosting up to 100MHz over AMD's claimed boost speed, on at least one core.
I wish people would stop making crap up on this topic, as people have had a wide range of issues and it's clear AMD is working on solving things. If you don't have one of the CPUs, please don't make assumptions. Well, depends on how you look at it, but mostly, yes.
Obviously all core boost is still not going to get any higher, but that wasn't promised either.
2. Too many variables. It looks like there's a fair amount of user error in the "fringe" results, but he simply filtered those out so...
3. He doesn't quite understand statistics, as he's applying a very weird filter to the results.
4. The way he presents the data is flawed, although I guess that comes down to how it was collected as well. See 2.
5. In many cases "fringe" results were filtered out for no apparent reasons. See 3.
And so on...
In all fairness, it showed how widespread the issue was, with not getting to the correct boost speeds. However, it also showed that a lot of DIY system builders that follows him, are not that great at building PCs...
In other news, moar Intel hax...
arstechnica.com/information-technology/2019/09/weakness-in-intel-chips-lets-researchers-steal-encrypted-ssh-keystrokes/
What he did do was bring attention and validity to an existing problem. Regardless of if his efforts affected this, amd has a fix. I am EAGERLY waiting for asrock to get it out to us.
Your scenario should have been like: Paying for 50/10 mbps and getting 49.5/9.9 mbps. Don't get me wrong, AMD should have had this figured out before launch but I think you are over dramatizing it just a tad.
AMD releases a phenomenal product that gives far more value than the competition at a far lower price...
And people moan and complain and cry oceans of tears because in some cases their CPU only performs at 95% of what it "should" (4.4GHz vs 4.6GHz) or, in the most ridiculous cases, boosts all of 50MHz lower than they believe it should...
FIFTY
WHOLE
MEGAHERTZ.
1/20th of a gigahertz. On a 4GHz CPU, less than 1% of the clock speed. Yet wars have been lost, worlds destroyed, for fifty megahertz... or so it would seem given the hue and cry, because we all know that more megahertz = more performance, right? Right?
Because there's never been a scenario where lower clocks over a period produce better performance than higher clocks causing intermittent throttling, right? Right?
This sort of uninformed, immature, infantile BS is exactly why companies stop listening to their customers. Because it teaches them that when they do, their customers take that opportunity to s**t on them. The net result is that the people who have useful feedback also get ignored, which benefits nobody.
Seriously kids, grow the f**k up. Good on AMD for addressing this for those who are insecure about the size of their manhood, but god damn. Tweaktown Gigabyte Beta BIOS forum.
They took our megahertz ! That's all I understood, unfortunately, they got what they wanted I guess.
That said, I don't understand why they (AMD) created this whole fiasco (I use that word very lightly) in the first place. If it made more sense to have the boost a little lower, then have them boost lower. But print that on the box and materials - don't put the higher numbers because you know damn well stuff like this would happen. I think what happened is they figured out dropping 50mhz or so from boost was able to get other metrics in a better position pretty late in the game. Then they didn't want to lower the numbers on the box by 100 because that would have been too close to the Zen+ numbers or they already had that shit printed.
Either way, this shouldn't have happened and it rubs me the wrong way because I am not sure if they are trying to be sneaky or are just incompetent. Neither are a good look. Ultimately, I bet it won't make much of a difference when it is all average out.
I think it would be awesome if @W1zzard would do one when official bioses come out. Hell, the beta ones will do as I imagine they will never leave beta status.
:lovetpu:
My 0.25$: This whole boost thing got a bit out of hand... Not to say something was not 100% OK with the boost algorithm, but most people experiencing wierd boost behavior is like 30% AMD, 20% user settings and 50% of MB vendors doing wierd stuff with their own tweaks to EDC, PPT and TDC behavior in their BIOS code ending up with clocks all over the place... Just like ASUS turning on MCE along with XMP, but that might have been already fixed. Great Tech Merlin may I have a question regarding that mobo? How are PCH temps with a graphics card in place in considering the fan placement on the board just under the first PCIe x16?