Most hardware ships tuned to win benchmarks. That is a reasonable default for a manufacturer and a poor default for anything that runs continuously, because the last few percent of performance is bought at a wildly disproportionate cost in power and heat.
Undervolting is how you decline that trade. It's worth understanding why it works, because the reason is more interesting than the tweak.
The asymmetry
Dynamic power in a switching circuit follows, near enough:
P = C × V² × f
Capacitance, voltage squared, frequency. The term that matters is the square.
Frequency enters linearly: drop the clock 10% and you drop that component of power roughly 10%. Voltage enters squared, so a 10% voltage reduction cuts power by closer to 19%. And the two are coupled: holding a higher clock stable requires higher voltage, so pushing for the last bit of frequency drags voltage up with it, and the power cost compounds.
Run that backwards and you get the whole argument. Give up a small amount of clock, and the voltage required to stay stable falls too. You pay linearly in performance and get paid back quadratically in power.
This is also why the top of a chip's frequency range is so expensive. The last 100 MHz often needs a voltage bump that costs more watts than the preceding 500 MHz did. You're paying the square for a linear return.
Every chip is different, and that is the annoying part
Two identical GPUs off the same line will not accept the same undervolt. Manufacturing variation means each piece of silicon has its own minimum stable voltage at a given frequency, the "silicon lottery."
Manufacturers set stock voltage to accommodate nearly all of that variation, including the worst pieces they're willing to ship, plus margin for a hot day and an aging part. Most individual chips are therefore running meaningfully more voltage than they personally need.
That gap is what you're reclaiming. It also means published numbers are close to useless. Anyone quoting you an exact figure is describing their chip, not yours. The only way to know is to test the specific unit.
Instability is not always a crash
The failure mode people expect is a crash or a driver reset. Those are the convenient failures: loud, obvious, immediate.
The failure you actually have to watch for is silent: a computation that returns the wrong answer without complaining. An under-volted part that is almost stable can produce subtly incorrect results for hours. Depending on the workload, that ranges from harmless to genuinely bad, and you will not get an error message either way.
So stability testing has to check correctness, not just survival. "It didn't crash overnight" is not a passing grade. Run something that validates its own output.
A reasonable method
Nothing exotic. The discipline is in changing one thing at a time.
- Establish a baseline. Record stock power draw, clocks, temperatures, and throughput on your actual workload before touching anything. Without this you cannot tell whether you gained.
- Move in small steps. Drop voltage a small increment, hold frequency, test. Repeat. Large jumps find the cliff without telling you where the edge was.
- Test long, and test correctness. Hours, not minutes, on the real workload, with output validation. Marginal instability hides in short runs.
- Back off from the edge. Whatever your lowest stable voltage turns out to be, don't run there. Ambient temperature rises in summer, parts drift as they age, and a setting that was stable in March can be marginal in July. Leave margin deliberately.
- Watch temperature as a signal. Lower power means lower heat, which means slower fans, less dust, less thermal cycling. Thermal cycling is a real driver of hardware failure over time, so this compounds beyond the electricity.
- Re-verify after any change. New drivers, new firmware, a different workload, revalidate. Stability is specific to a configuration, not a property you earn once.
Why bother
For a single machine that runs occasionally, honestly, you probably shouldn't. The tuning takes real hours and the savings on one part-time card are small.
The calculation changes when hardware runs continuously, when you have several units, or when you're paying for the heat twice: once to make it, once to remove it. Then a persistent reduction in draw per unit, multiplied across machines and across every hour they run, is a structural change to what the operation costs rather than a rounding error.
And the same tuning that lowers the power bill lowers the thermal load, which tends to extend the working life of parts that were already secondhand when they got here. That part is harder to measure and probably matters more.