How to Set NVIDIA GPU Power Limit
Modern GPUs, such as the NVIDIA RTX 4090, often consume more power than necessary, even during low workloads. By optimizing power limits and undervolting, you can reduce GPU energy consumption, lower system heat, and even run high-performance graphics cards with smaller PSUs, such as 750W, without compromising stability. This guide will show you how to reduce GPU power usage effectively while maintaining performance.
Screenshot taken from this video at the 17:05 mark.
Disclaimer
Modifying power limits can affect system stability or void warranties. Follow official guidelines and proceed with caution.
Prerequisites
- Ensure NVIDIA drivers are installed.
- Verify
nvidia-smi
is available in the console.
Check Current Power Limit
Run the following command to view the current power limits:
nvidia-smi -q -d POWER
Set Power Limit
Use the nvidia-smi command below to set a specific GPU power limit, such as 360W. This is one of the easiest ways to reduce GPU power usage and optimize NVIDIA GPU energy efficiency.
nvidia-smi -pl 360
Windows: Automating Power Limit with Task Scheduler
Step 1: Create a Batch File
Create a batch file named set_gpu_power_limit.bat
and save it in your home folder with the following content:
@echo off
nvidia-smi.exe -pl 360
Step 2: Configure Task Scheduler
-
Open Task Scheduler
- Press
Win + R
, typetaskschd.msc
, and pressEnter
.
- Press
-
Create a New Task
- Click “Create Task…” in the Actions panel.
- Click “Create Task…” in the Actions panel.
-
General Tab
- Name the task (e.g., “Set GPU Power Limit”).
- Check “Run with highest privileges”.
- Set “Configure for” to your Windows version.
-
Triggers Tab
- Add a trigger set to “At log on”.
- Add a trigger set to “At log on”.
-
Actions Tab
- Add an action to “Start a program”.
- Point to your
set_gpu_power_limit.bat
file.
-
Conditions Tab
- Adjust conditions as necessary (e.g., only run on AC power).
- Adjust conditions as necessary (e.g., only run on AC power).
-
Settings Tab
- Check “Allow task to be run on demand”.
- Check “Allow task to be run on demand”.
Linux: Setting GPU Power Limit
For Linux users, optimizing NVIDIA GPU performance is just as straightforward. You can control and reduce GPU power consumption on Linux using the powerful nvidia-smi
tool.
Step 1: Create a Shell File
-
Create the script:
nano ~/set_gpu_power_limit.sh
-
Add the following content:
#!/bin/bash nvidia-smi -pl 360
-
Make the script executable:
chmod +x ~/set_gpu_power_limit.sh
Step 2: Make the Setting Persist at Boot Using a systemd Service
-
Create the service file:
sudo nano /etc/systemd/system/set-gpu-power-limit.service
-
Add the following content:
[Unit] Description=Set NVIDIA GPU Power Limit After=multi-user.target [Service] Type=oneshot ExecStart=/home/pariz/set_gpu_power_limit.sh RemainAfterExit=yes [Install] WantedBy=multi-user.target
-
Reload systemd and enable the service:
sudo systemctl daemon-reload sudo systemctl enable set-gpu-power-limit.service sudo systemctl start set-gpu-power-limit.service
Summary
Setting the GPU power limit is one of the most practical ways to optimize NVIDIA GPU performance, reduce power consumption, and improve energy efficiency. Whether you’re undervolting a GPU for gaming, reducing system heat, or running a high-performance card like the RTX 4090 on a smaller PSU, these methods will ensure stability and efficiency.