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
And yes I have Xeons. I have a whole goddamn server room, 60+ node CPU compute farm, 200+ node GPGPU compute farm and access to around 2000 different machines spanning multiple disciplines, generations, vendors, purposes and price brackets. It's my job to select the best hardware and software for specific purposes, test it, and then buy that hardware in bulk for multiple companies. I have contacts in AMD, Intel, and Nvidia and haven't missed a SIGGRAPH or Computex in almost a decade.
I don't know how I can state this any more clearly; I am vendor agnostic. I want the best solution regardless of who makes it. I do not like marketing spin, because I don't get paid for marketing spin. I get paid for actual real-world results and that means I need performance/$ and no-nonsense approaches to everything. Yes, I am biased. I am biased AGAINST BS and AGAINST shilling, because that makes my job harder. I enjoy tech as a hobby and gaming enthusiast, but first and foremost I need to understand all of the tech because my livelihood is financed by it.
He was very clear that he had data quality issues. He was very clear that his methodology was flawed. He did as scientific an analysis as he could given the data he collected.
Even though I think it was clear, it seems it wasn't enough for everyone to understand that. AMD said there was a bug. Are you saying AMD was wrong?
I suspect the AGESA version has two fixes rolled into one:
He used it as a soap-box. Good or Bad.
He has CaseKing as a resource. He could of done actual controlled testing in the 10 days he had the survey open.
Stop the madness. Told you so. ;)
Just because we knew it was no big deal we also knew it would be addressed by AMD. Fine wine baby....fine wine. ;)
Glad to see the entire community took my comment the wrong direction. Made perfect sense to me.....
ABBAB
or
ABBAA
?
Also, no-one asked for a new engine, as this was a simple fix from AMD's side, as clearly proven.
I've not seen too much feedback from others, but in my case, it more than resolved the issue.
1T and 2T boost behavior is almost the same and then it drops off from 3T and above. Interestingly TPUs sample of the 3600 non-X held its 4200 boost clock flat.