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
His comments, which I don't have in front of me (and therefore must rely on memory from something I read years back) suggested to me that a chip could be degraded or fried very quickly, even without being subjected to a heavy load like Prime — without temperature nor load being needed. However, I have also read things that suggest that higher voltages won't kill chips if they're kept cold enough (i.e. nitrogen), so I'm a little confused.
He also said other things that seem to fly in the face of the conventional wisdom, like the widespread belief that a chip that needs less voltage is a better-quality one. I see that idea everywhere, from forum posts to professional reviews. He said it's basically the opposite. Higher leakage means less voltage required but he said, except under nitrogen, that's worse than higher voltage required and lower leakage. He said, for example, that the 9000 series FX chips were so poor-quality that they would have ended up in the crusher if AMD hadn't decided to create the 220 watt spec for AM3+. So, although the 9590 could hit, let's say 5 GHz, with less voltage than an 8370E, it would use more power and would die sooner at a given high voltage. Not only do the higher-leakage parts waste more power they are more sensitive to electromigration.
So, when we're looking at what safe voltages are it seems that it depends a lot on the leakage of the part. Maybe 1.5V is actually safe if the leakage is low enough? It seems really high to me but I don't know the technical details of the TSMC 7nm process AMD is using. I thought that safe voltage maximums are supposed to shrink as nodes shrink, although things like FinFET probably affect that quite a bit.
I remember Fermi (GF100) being described (in an Anandtech review I think) as an example of Nvidia's strategic intelligence. The notion was that Fermi intentionally had extra high-leakage transistors to increase performance. Given The Stilt's comments, or my understanding of them which may be flawed, I'm not sure how high-leakage transistors are a boon. Was it something about them being able to switch on and off more quickly? Does that apply to CPUs?
Also, some have been concerned that AMD may end up with a higher RMA rate because of this change. If it's the case that the RMA rate will increase one solution the company can do for future production is to realign the binning. This aligns with the improvement to the node that typically happens as it matures as well.
Just because the CPU boosts to 1.5 V for a brief second it doesn't mean that it's doing so at high current.
How does heat play into it? If significant degradation can occur without high heat (let's say 50C) but with high voltage what voltage would that be?
How does individual chip variability play into it, since different parts of a wafer have different levels of leakage? How perfect is the binning, when it comes to matching that with maximum voltage (including in terms of heat if that's quite important)?
Apparently the conclusion of these keyboard experts is that AMD is selling a product that will blow up instantly.
Strange, my CPU is working better than ever after three months...
In all fairness, I haven't had to wait three months for my past Intel CPUs to deliver the box spec, but based on my Ryzen 1700 experience, I already knew what I was getting myself into.
2) Variability in wafers results in different levels of quality. If the binning is imperfect then one chip that's rated for a specific product slot might not match another chip with the same name/slot. So, what's a certain level of safe for one might not be as safe for another.
3) Did I miss answers to my questions that occurred in prior posts in this topic? Because, instead of being an expert, I have a lot of questions.
There is also the issue of motherboard voltage accuracy. The ASUS Crosshair Formula Z AM3+ board had a reputation for underreporting voltage. And, there is LLC spiking.
And you truly believe AMD's binning is that bad? Right...
That was a general reply to this thread, as everyone has an opinion, but no-one here works for AMD as far as I know.
As to what motherboard makers do or don't do, is hardly AMD's fault now, is it?
Also, looking at Ryzen Master, the Voltages are quite different from those in HWInfo, with the latter seemingly reporting up to 250mV higher numbers, doing a side by side comparison. This is especially true during mostly idle scenarios.
I was trying to point out that there are a lot of variables that may need to be taken into account. How, for example, can anyone make claims about safe/unsafe voltage when they don't know if their motherboard is giving them accurate information? What about LLC spiking? My understanding is that increasing the aggressiveness of LLC increases the risk of high transient spikes.
My posts have nothing to do with being pro-AMD or against AMD. I consider that topic superfluous.
Do you actually own a Ryzen 3000 setup?
If not, then please start your own thread where you can discuss pointless things.
I've provided details, but that's clearly being ignored, not just by you, but everyone else as well.
Yes, AMD is shit. Can we be done with it now?
And, even if no one answers them they can be food for thought.
It's worth noting that the 3700X here only reaches 4.38GHz max clock. OH, THE HORROR! Deprived of that 0.45% performance for a few miliseconds I might as well boycott AMD forever.
:laugh:
community.amd.com/community/amd-corporate/blog/2019/09/10/an-update-on-3rd-gen-amd-ryzen-boost-frequencies
I agree the .25 Mhz lower Max Boost only makes a difference for me when Benchmarking as far as I can tell.
I have a 3700x on an Asus ROG Strix B450-F (BIOS 2704 - AGESA 1.0.0.3ABB) that I installed last week and it hits 4.375 GHz with PBO off and 4.425 Ghz with PBO on.
And it idles around 32-34c and maxes out around 60-62c while gaming and under heavy loads (like video encoding).
And as I have stated in a few different threads, I am VERY happy with it as it is.
I certainly won't complain if the new AGESA nets me higher Boost clocks AND better performance though.
However there is a variable to this equation that AMD has not made public. The voltage applied to the CPU package as a whole is not what is being delivered to the actual CPU core dies themselves. This is because of the difference in process nodes between the CCX and the CPU cores. So when the UEFI state tells a monitoring utility(such as Ryzen Master) what the voltage is, it's reading voltage delivery for the entire package instead of on a per die basis. So when a reading is saying that 1.475v is being applied to the package the actual voltage reaching the CPU cores is lower as it's been filtered through the power regulation circuitry within the package itself. The voltage supplied to the package is broken down and passed along to the CCX at one voltage and the CPU dies at a separate, lower level(what that ratio is was not disclosed). Don't ask for links, there aren't any as this info came from a phone call. However it makes sense given how the new Ryzen packages are made.
You seem to at least have been given good info, by whoever you talked to.
Since my first response got quoted below, I was a bit too quick to reply after reading the first part.
en.wikipedia.org/wiki/Electromigration
This doesn't count either.
www.urbandictionary.com/define.php?term=migation
Give credit where it is due. I run 1.476 by bios and it creeps to 1.524 on mine under blender, no problems
Only game , up to 10% ( %1 low ).