Затронутая ОС
Linux Mint 19.1 "Tessa" - Cinnamon (64-бит), основанный на Ubuntu 18.04 LTS. (Неважно, но позже обновлено до версии 19.3.)
вышеописанная система была позднее модернизирована до:
Linux Mint 20.2 "Uma" - Cinnamon (64-бит), основанный на Ubuntu 20.04 LTS. (Это моя основная ОС сейчас.)
Сопутствующее оборудование
Процессор:Интел,Core 7-го поколения (Kaby Lake),i7-7700HQ, базовая тактовая частота 2,80 ГГц, макс.Турбо ускорение3,80 ГГц,Умный кэш6 МБ
ГПУ:NVIDIA,GeForce GTX 1060,Макс-Q Дизайн, 6 ГБGDDR5 Видеопамять
Экран: 4K-дисплей для ноутбука с диагональю 15,6 дюйма (UHD 3840 x 2160)
Проблема
Есть около200 - 300 кадров в секундупри игре в любую игру, не нагружающая графический процессор, поэтому я думаюмного энергии тратится впустую, и мое железо перегревается, если такая игра находится на переднем плане много часов подряд. Кроме того, даже если я не плачу счета за электричество, я думаю, что мое железо более склонно к сбоям, если играть на максимальной частоте кадров, которая в обычных играх может быть указана выше, маловероятно, 200 - 300 FPS.
Вопрос
Как мне установить ограничение FPS для всех игр на моем оборудовании на базе Nvidia? Если это возможно, то хотя бы назвать несколько таких игр?
Например,НЕ реклама,Франшиза Hexcellsиспользует очень мало графического процессора, и я протестировал свое решение ниже на этих играх.
решение1
NVIDIA-специфическое решение
Отказ от ответственности: Я рекомендую использовать официальный пакет драйверов из репозитория, а НЕ из PPA. Вы можете узнать, как установить или обновить драйверы, в моем другом вопросе здесь:Как установить последние драйверы Nvidia на Linux Mint 20
Важное замечание
Отказ от ответственности:Это решение было проверено и протестировано только на одной системе на базе Ubuntu 18.04 или 20.04.. Если у вас старая версия, НЕ СЛЕДУЙТЕ ей; будьте осторожны и с новыми версиями.
Решение для систем на базе Ubuntu 18.04 и 20.04
Это решение используетВертикальная синхронизация(Вертикальная синхронизация). Если вам не нравится ее использование, это решение не для вас.
Спасибо,Ксандер, для комментария о включенииВертикальная синхронизация. С помощью этой подсказки я смог выяснить, что мне нужно выполнить только следующие шаги.
Создайте следующий новый файл (если он еще не существует) в вашем любимом текстовом редакторе:
/etc/modprobe.d/nvidia-drm-nomodeset.conf
Вставьте туда эту единственную строку, сохраните и закройте файл; если файл уже существует, убедитесь, что эта строка там есть:
options nvidia-drm modeset=1
Обновите все ваши
initramfs
изображения с помощью:sudo update-initramfs -u -k all
или если вы хотите только протестировать его, вы можете обновить только последний образ с помощью:
sudo update-initramfs -u
Перезагрузите систему.
TheВертикальная синхронизациясейчас будет включен, проверьте с помощью:
sudo cat /sys/module/nvidia_drm/parameters/modeset
Там будет написано:
Y
еслиВертикальная синхронизацияявляетсяНа
N
еслиВертикальная синхронизацияявляетсяВыключенный
Тебе уже пора закончить.ограничено частотой обновления вашего дисплея(обычно 60).
Несмотря на это, я удовлетворен этим решением, но вы можете свободно добавлять свои собственные (специфичные для AMD, Intel, какие угодно...), чтобы сделать этот вопрос полезным для других.