Бортовой журнал /
2026 /
04.07.2026 ограничение энергопотребления видеокартой NVIDIA
Универсальная инструкция по ограничению энергопотребления видеокартами NVIDIA без сторонних инструментов. Прилагается пример BAT-файла для быстрой настройки.
Зачастую, игры потребляют больше мощности видеокарты, чем им нужно. Тем самым избыточно нагревая компьютер, что препятствует комфортной игре. В таких случаях можно ограничить частоту вычислительных ядер, памяти GPU и потребление мощности (Ватт).
Предположим, что вы играете в игру с 60 FPS (кадрами в секунду) и не хотите его существенного снижения, но при этом хотите немного уменьшить энергопотребление. Это возможно. Для этого существует три параметра GPU, которыми можем управлять:
- graphics - ограничение частоты вычислительных ядер;
- memory - ограничение частоты памяти;
- power - ограничение потребления мощности (Ватт).
Алгоритм простой. Постепенно уменьшаем каждый параметр, пока не заметим снижения FPS в игре. Все операции можно выполнять не выходя из игры.
Для работы будем использовать встроенный инструмент от NVIDIA - nvidia-smi. Итак, нажимаем "Пуск", вводим "cmd", запускаем командною строку (терминал) от имени администратора и работаем с официальной программой nvidia-smi.
Справочная информация о программе nvidia-smi
> nvidia-smi --help
Ограничение максимальной частоты вычислительных ядер
Командой nvidia-smi --query-supported-clocks=graphics узнаём поддерживаемые частоты ядер видеокарты.
> nvidia-smi --query-supported-clocks=graphics
graphics [MHz]
3090 MHz
...
765 MHz
...
180 MHz
Командой nvidia-smi --lock-gpu-clocks=0,765 постепенно устанавливаем и подбираем минимальную частоту при котором FPS в игре не снижается ниже 60. В моём случае это 765 мегагерц.
> nvidia-smi --lock-gpu-clocks=0,765
GPU clocks set to "(gpuClkMin 0, gpuClkMax 765)" for GPU 00000000:01:00.0
All done.
Ограничение максимальной частоты памяти
Командой nvidia-smi --query-supported-clocks=memory узнаём поддерживаемые частоты памяти.
> nvidia-smi --query-supported-clocks=memory
memory [MHz]
12001 MHz
11001 MHz
9001 MHz
810 MHz
405 MHz
Командой вида nvidia-smi --lock-memory-clocks=0,9001 постепенно устанавливаем и подбираем минимальную частоту при котором FPS в игре не снижается ниже 60. В моём случае это 9001 мегагерц.
> nvidia-smi --lock-memory-clocks=0,9001
Memory clocks set to "(memClkMin 0, memClkMax 9001)" for GPU 00000000:01:00.0
All done.
Ограничение максимальной мощности
Командой nvidia-smi --query --display=POWER узнаём максимальное ограничение мощности видеокарты. В моём случае это 115 ватт.
> nvidia-smi --query --display=POWER
...
Min Power Limit : 5.00 W
Max Power Limit : 115.00 W
...
Командой nvidia-smi --power-limit=20 ограничиваем максимальную мощность, например 20-ю ваттами.
> nvidia-smi --power-limit=20
Changing power management limit is not supported in current scope for GPU: 00000000:01:00.0.
All done.
Так как видеокарта моего ноутбука не поддерживает ограничение мощности, то сообщает об этом сообщением "Changing power management limit is not supported in current scope for GPU: 00000000:01:00.0." Ничего страшного, ограничения частоты ядер и памяти вполне хватит.
Возвращаем исходные параметры
Командой nvidia-smi --gpu-reset сбрасываем все наши изменения на заводские. Также можно сбросить изменения по отдельности для частоты ядер nvidia-smi --reset-gpu-clocks и памяти nvidia-smi --reset-memory-clocks.
BAT-файл Limit GPU.bat
Чтобы каждый раз после перезагрузки Microsoft Windows не вводить команды вручную, можно создать запускаемый BAT-файл на рабочем столе с подобранными настройками. И запускать его по необходимости.
Пример содержимого BAT-файла Limit GPU.bat.
fsutil dirty query %systemdrive% >nul
if %errorlevel% NEQ 0 (
powershell -Command "Start-Process -FilePath '%0' -Verb RunAs"
exit /b
)
nvidia-smi --lock-gpu-clocks=0,765
nvidia-smi --lock-memory-clocks=0,9001
pause
Вначале BAT-файла идёт запрос прав администратора для выполнения команд, а затем знакомые настроечные команды.
nvidia-smi --lock-gpu-clocks=0,765
nvidia-smi --lock-memory-clocks=0,9001