Adjust NVIDIA GPU TDP on Linux

← Back

My server PC died, presumably the motherboard, so I had to build a new one. It went from an ancient LGA1155 to a more recent AM4, hooray!

With the new system I can finally set up a build system and have much more freedom and fun with AI, self-hosted services, and bots. Hooray-hooray!!

Currently, this PC has two GTX 1660 cards with a max TDP of 160W, but they run at a default value of 140W.

TDP can be adjusted manually via command, but first we need to know the max supported TDP of the GPU.

To get TDP information, run nvidia-smi -q -d POWER and look for Max Power Limit:

nvidia-smi -q -d POWER

==============NVSMI LOG==============

Timestamp                                 : Sat Sep  6 12:25:59 2025
Driver Version                            : 575.64.03
CUDA Version                              : 12.9

Attached GPUs                             : 2
GPU 00000000:04:00.0
    GPU Power Readings
        Average Power Draw                : N/A
        Instantaneous Power Draw          : 5.90 W
        Current Power Limit               : 160.00 W
        Requested Power Limit             : 160.00 W
        Default Power Limit               : 140.00 W
        Min Power Limit                   : 70.00 W
        Max Power Limit                   : 160.00 W
    Power Samples
        Duration                          : 105.52 sec
        Number of Samples                 : 119
        Max                               : 6.89 W
        Min                               : 5.85 W
        Avg                               : 5.99 W
    GPU Memory Power Readings
        Average Power Draw                : N/A
        Instantaneous Power Draw          : N/A
    Module Power Readings
        Average Power Draw                : N/A
        Instantaneous Power Draw          : N/A
        Current Power Limit               : N/A
        Requested Power Limit             : N/A
        Default Power Limit               : N/A
        Min Power Limit                   : N/A
        Max Power Limit               : N/A

GPU 00000000:2B:00.0
    GPU Power Readings
        Average Power Draw                : N/A
        Instantaneous Power Draw          : 11.53 W
        Current Power Limit               : 160.00 W
        Requested Power Limit             : 160.00 W
        Default Power Limit               : 140.00 W
        Min Power Limit                   : 70.00 W
        Max Power Limit               : 160.00 W
    Power Samples
        Duration                          : 6.53 sec
        Number of Samples                 : 119
        Max                               : 25.68 W
        Min                               : 11.19 W
        Avg                               : 14.45 W
    GPU Memory Power Readings
        Average Power Draw                : N/A
        Instantaneous Power Draw          : N/A
    Module Power Readings
        Average Power Draw                : N/A
        Instantaneous Power Draw          : N/A
        Current Power Limit               : N/A
        Requested Power Limit             : N/A
        Default Power Limit               : N/A
        Min Power Limit                   : N/A
        Max Power Limit               : N/A

To adjust TDP:

nvidia-smi -pl 160

To adjust TDP on boot, create a service with the following content:

sudo nano /etc/systemd/system/
[Unit]
Description=Set NVIDIA GPU Power Limit

[Service]
Type=oneshot
ExecStart=/usr/bin/nvidia-smi -i 0 -pl 160
ExecStart=/usr/bin/nvidia-smi -i 1 -pl 160

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable SERVICE-NAME.service
sudo systemctl start SERVICE-NAME.service