PowerTune: Balancing Performance And Acoustics
The last time we went into depth on AMD’s PowerTune technology was last year, when the company introduced its Boost feature to Radeon HD 7970 GHz Edition. Back then, we determined that the card’s base clock was stuck at 1 GHz, and overclocking consisted of moving the target on an extra P-state that’d hold as long as you ducked in under a power ceiling. All the way up, though, you’d see fan speed increase. Altering the fan speed through AMD’s OverDrive applet set a constant duty cycle, which probably wasn’t apropos all of the time.
With its Radeon HD 7790, AMD changed the behavior of PowerTune based on additional input from a second-gen VR controller. That same functionality carries over now to R9 290X.
So, now, PowerTune takes input from thermal sensors, creates an estimation of power use in real-time through activity counters, folds in telemetry data from the voltage regulator, and feeds that data into a digital power management arbitrator. That arbitrator is programmed to know the GPU’s power, thermal, and current limits. Within those bounds, it controls voltages, clock rates, and fan speeds, prioritizing maximum performance. If one of the input limits is exceeded, the arbitrator can pull back on voltage and/or frequency.
All of this can happen very quickly thanks to the aforementioned VR controller. Previously, there was a relatively long delay between the request for a higher voltage and a subsequent clock rate step. AMD’s second-gen serial VID is around two orders of magnitude faster (~10 µs rather than 1 ms), it provides confirmation of the switch, and it’s granular down to 6.25 mV steps.
With the ability to define and customize power, fan speed, GPU clock (performance), and target temperature, it becomes possible to very specifically dictate how an R9 290X behaves. Fan speed is one of the most clearly affected variables. Past cards employed a fan table that correlated temperature to RPM, but failed to deliver optimal acoustics—a point I’ve mentioned more than once. Now, however, the controller is both reactive and predictive, varying acceleration based on workload and, ideally, smoothing out changes to fan speed more than before.
Of course, all of this intelligence is still dependent on a well-designed thermal solution able to translate R9 290X’s 1 GHz clock rate and 95-degree temperature ceiling into friendly acoustics, even under load. By default, the card wants to run as close as possible to 1 GHz, and will let Hawaii get to 95 °C in the interest of spinning the fan slowly. You can imagine that the very nastiest loads will cause the fan to ramp up and up and up as it tries to maintain 95 degrees at 1 GHz. That’d be alright for performance, but it’d probably sound pretty bad. So, AMD implements two different BIOSes on R9 290X: one called Quiet Mode, and the other dubbed Uber. The first puts a default limit of 40% duty cycle on the fan, while the second one stops at 55%.
If the card is running in Quiet mode, hits 95 degrees, and cannot control temperature under 40% fan speed, it’ll start pulling back clock rate to avoid 96 degrees. Performance takes a hit in the interest of low noise. Switching to Uber mode simply gives you 15% more duty cycle before clock rates start dialing back.
I debated about where to put this graph. In one sense, it belongs with my CrossFire data because it shows that heat hurts the way two R9 290Xes perform. But I'm putting it here because this is an illustration of PowerTune in action. The technology, for better or worse, is forcing these cards to abide a 40% fan speed. So, when the GPU hits 95 degrees and can't spin its fan any faster, you have to watch the core clock melt away. The effect is even more severe with two cards next to each other (even with space between). Hawaii is still a very fast GPU, in spite of this phenomenon, but it's a shame to observe, regardless.
You’re certainly free to manually specify higher maximum fan speeds than the 40% I used, but it’s pretty telling that even AMD’s Uber mode stops at 55%. Again, we’re dealing with a reference cooler that makes a lot of noise once it gets going. I’d personally leave the card set to its Quiet firmware in my own PC.