Цифровой сад — общедоступная персональная база знаний

Лупа для поиска
  • Свежие правки
  • Карта сайта
  • 05.07.2026 ускорение (охлаждение) любых игр при помощи Lossless Scaling

    Бортовой журнал / 2026 /

    04.07.2026 ограничение энергопотребления видеокартой NVIDIA

    Универсальная инструкция по ограничению энергопотребления видеокартами NVIDIA без сторонних инструментов. Прилагается пример BAT-файла для быстрой настройки.

    Зачастую, игры потребляют больше мощности видеокарты, чем им нужно. Тем самым избыточно нагревая компьютер, что препятствует комфортной игре. В таких случаях можно ограничить частоту вычислительных ядер, памяти GPU и потребление мощности (Ватт).

    Предположим, что вы играете в игру с 60 FPS (кадрами в секунду) и не хотите его существенного снижения, но при этом хотите немного уменьшить энергопотребление. Это возможно. Для этого существует три параметра GPU, которыми можем управлять:

    Алгоритм простой. Постепенно уменьшаем каждый параметр, пока не заметим снижения FPS в игре. Все операции можно выполнять не выходя из игры.

    Для работы будем использовать встроенный инструмент от NVIDIA - nvidia-smi. Итак, нажимаем "Пуск", вводим "cmd", запускаем командною строку (терминал) от имени администратора и работаем с официальной программой nvidia-smi.

    Запуск командной строки от имени администратора.png

    Справочная информация о программе 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