# i undervolted my 3090 and my 3080 ti on linux, -94 W for almost nothing

two coding agents working at the same time, 452 W → 358 W across both cards, the fans go from 91% to 48%, and throughput loses 7%

- date: 2026-10-20
- type: experiment (hardware & power)
- hardware: 3090 + 3080 Ti, 80gb
- source: measurements made by the author on his own hardware
- html page: https://pkillsleep.dev/en/labo/undervolt-3090-3080ti/

## what i wanted to know

my box runs two coding agents at the same time on a big MoE (Qwen 3.8 Flash Next, 125B), and stock, both cards draw 452 W while the 3090 blows its fan at 91%, which you end up hearing from the other room. i wanted to know how many watts i could take off before throughput really started to suffer.

## the method

on linux you can't set the voltage of an nvidia card directly, so you take a detour: you lock the card's max clock with `nvidia-smi -lgc`, then shift the whole voltage/frequency curve up with the NVML call `nvmlDeviceSetGpcClkVfOffset` (+150 MHz here). the card then reaches the same clock while asking for less voltage, and that's where the watts disappear. the full step by step, with the script i use at boot, is in the [undervolt guide](/en/guides/undervolt-3090-3080ti-linux/).

for each setting i let it run 3 minutes with two real code reviews in parallel, on contexts going up to ~110K tokens, rather than a synthetic bench that wouldn't have reflected how i use it.

## the numbers

**throughput per agent, two agents at once**

| | tok/s |
|---|---:|
| 260 W stock | 67.0 |
| 220 W | 56.8 |
| 200 W | 54.2 |
| 180 W | 42.7 |
| both undervolted | 62.0 |

**power draw of both cards**

| | W |
|---|---:|
| 260 W stock | 452 |
| 220 W | 406 |
| 200 W | 367 |
| 180 W | 326 |
| both undervolted | 358 |


| 3090 setting | 3080 Ti | throughput per agent | draw of both | 3090 fan |
|---|---|---:|---:|---:|
| 260 W, stock | 260 W | 67.0 tok/s | 452 W | 91% |
| 220 W, stock | 220 W | 56.8 tok/s | 406 W | 80% |
| 200 W, stock | 200 W | 54.2 tok/s | 367 W | 66% |
| 180 W, stock | 180 W | 42.7 tok/s | 326 W | 63% |
| undervolt 1500 MHz +150 | 260 W | 63.5 tok/s | 404 W | 59% |
| undervolt 1650 MHz +150 | 260 W | 63.6 tok/s | 420 W | 74% |
| **undervolt 1500 MHz +150** | **undervolt 1800 MHz +150** | **62.0 tok/s** | **358 W** | **48%** |

with a single agent, throughput barely moves down to 200 W (111 tok/s at 260 W, 104 at 200 W): it's really when both agents generate at the same time that the power draw costs you.

## what surprised me

the most counter-intuitive part is that just lowering the power limit does more damage than the undervolt: at 220 W the two-agent throughput already loses 15%, while the undervolt keeps 63.5 tok/s drawing less than that.

the small card also matters more than the big one. with the same undervolt on the 3090, taking the 3080 Ti from 260 to 200 W drops throughput from 63.5 to 54.6 tok/s, because in a two-card setup the weaker one sets the pace.

and below 200 W the 3090 just collapses (788 MHz at 180 W), while raising the lock from 1500 to 1650 MHz brings nothing at all, except more power draw and more noise.

## what didn't work

i had planned to check stability by comparing answers bit for bit before and after, but even without undervolt the engine doesn't give back exactly the same text from one run to another, so i replaced that with a small series of math questions (4/4 right with and without undervolt). the new per P-state offset API returned 0 after being set, and only the GPC offset really took.

## what i keep

both cards are undervolted, the 3090 locked at 1500 MHz and the 3080 Ti at 1800 MHz with +150 MHz each: that's -94 W, the 3090 fan goes from 91% to 48%, and each agent runs at 62 tok/s instead of 67. the box has become livable in the room, and it's well worth the 7%.

[meme: Success Kid]

## What these numbers don&#39;t tell you

- a single 3 minute measurement per setting, under real agent load, so a gap of less than 5 to 10% stays within the noise
- stability was checked over about fifteen minutes of load, not over days, and each card takes the undervolt differently
- the 3090 still goes up to 84 °C: the gain is mostly about power draw and noise
- i measured neither prompt reading speed (prefill) with the undervolt, nor power at the wall

