All posts 中文版 →

How to Cap GPU Power Draw on Windows Without Undervolting or Underclocking

NVIDIA GPUs support setting a power limit directly with nvidia-smi -pl <watts> — no need to touch voltage curves or manually underclock. The card decides how high to clock itself within the wattage ceiling you set. This is common knowledge in Linux and server circles, but Windows consumer content on it is almost nonexistent — and there's a key catch nobody mentions: the setting resets every time you reboot. It doesn't stick on its own.

What does nvidia-smi -pl actually do?

It directly sets the GPU's power ceiling (in watts), and the card's firmware adjusts clocks and voltage on its own to approach that ceiling — you don't manually specify a fixed clock or voltage. This is different from manual overclocking/underclocking: you only control "don't exceed this total wattage," and the card decides how to allocate it.

Why is there so little written about this for Windows?

The command itself is cross-platform (the Windows NVIDIA driver ships nvidia-smi.exe too), but nearly all the guides that exist are written for Linux/systemd scenarios (e.g. a systemd service reapplying it at boot) — how to do "apply automatically at boot, no manual command needed" on Windows is something almost nobody has written up. It's genuinely a content and tooling gap.

Why does the setting reset back to default after a reboot?

nvidia-smi -pl sets the driver's runtime state, not a setting permanently written to the GPU's firmware — after a Windows reboot and driver reinitialization, it reverts to the factory default power limit. This isn't a bug, it's just how the mechanism works — the common Linux fix is a boot-time service that reapplies it, and the exact same thing happens on Windows if you only ever run the command once by hand.

A power limit is like setting a "spending cap" on your electric bill for the GPU — the card decides how to spend that budget to run as fast as possible, rather than you directly dictating a specific voltage or clock speed. The catch is this "budget setting" gets wiped back to zero on every Windows reboot, so something needs to set it again each time the machine starts.

How does PowerDoze actually handle this?

PowerDoze's power modes let you set a GPU power limit (executed via nvidia-smi -pl) that's applied automatically whenever you switch to that mode, and you can also set it to auto-apply on startup — effectively covering that "reapply on boot" step for you, so you don't need to run the command manually or write your own startup script.

Is there a value range? Does it only work with NVIDIA cards?

The UI slider range is 15–300W, and it's NVIDIA-only (the feature is shown or hidden based on whether nvidia-smi is detected on the system) — AMD and Intel GPUs aren't supported for this. If nvidia-smi isn't detected, this setting simply doesn't appear in the interface.

Frequently asked questions

Is capping GPU power the same as underclocking or undervolting?

No. A power limit only sets a total wattage ceiling — the card's firmware decides how to distribute voltage and clock speed to approach that ceiling; you're not manually specifying a fixed clock or voltage.

Why did my nvidia-smi -pl setting revert to the original wattage after a few days?

Because it's a runtime setting, not a permanent one — it resets to default on every reboot or driver reinitialization. Something needs to reapply it every time the machine boots.

Is this a Pro-only feature in PowerDoze?

No — GPU power limit is a core power-control feature available in the Free version, alongside things like CPU frequency limits and fan strategy, with no tier restriction.

Can AMD or Intel GPUs use this feature?

Not currently — this feature only works in environments where nvidia-smi is detected, i.e. NVIDIA GPUs.

Where this stands, honestly

This feature is built on calling nvidia-smi -pl, the official NVIDIA tool — PowerDoze doesn't do any lower-level GPU control of its own. The value is folding "apply it, and reapply it on every boot" — something you'd otherwise handle manually or with your own script — directly into power modes, so you set it once and never have to remember the command again.

Want to cap your GPU's power draw without manually running a command every time you boot? PowerDoze builds GPU power limit into its power modes — applied automatically on switch, and can auto-apply on startup too.

Download PowerDoze free →

Nisonxi

I'm Nisonxi, the developer behind PowerDoze. I built it because my own Windows desktop idled all day at near-full power and no existing tool could read the situation and switch on its own. This blog is my notebook from the journey.

About the author and PowerDoze →