August 30, 2024
Linux (ubuntu server) андервольтинг Nvidia
Ограничение по питанию на примере rtx 3060.
Как видим, дефолт 170W, а нам нужна долгая работа карточки без отвала и перегрева, так что проще всего занизить вольтаж, и это будет занижать частоты автоматически.
sudo nano /etc/systemd/system/gpu-limit.service
Создаем файл загрузки нового сервиса.
[Unit] Description=GPU power limiter After=network.target StartLimitIntervalSec=0 [Service] User=root Type=simple Restart=always RestartSec=1 ExecStart=/usr/bin/nvidia-smi -i 0 -pl 150 [Install] WantedBy=multi-user.target
Где в содержимом ставим 150, это будет 150W максимального потребления.
sudo systemctl daemon-reload & \ sudo systemctl start gpu-limit.service sudo systemctl enable gpu-limit.service
Перезагружаем сервисы и смотрим статус.
sudo systemctl status gpu-limit.service
А теперь смотрим лимит потребления.
Можно еще завысить частоту, пример завышения на 100 Mhz, но нужно искать готовые кейсы под разгон, сколько допустимо при определенном пиковом напряжении. Я этот параметр не дергаю, так как задача просто сохранить карту для дольшей работы, а не выжать из нее все соки.
nvidia-settings -a '[gpu:0]/GPUGraphicsClockOffset[4]=100' -a '[gpu:0]/GPUGraphicsClockOffset[3]=100' -a '[gpu:0]/GPUGraphicsClockOffset[2]=100'
nvidia-smi -q -a