В некоторых дистрибутивах GNU/Linux клиент Steam и многие игры могут “тормозить”, т.е. работать слишком медленно. Это происходит из-за того, что в большинстве дистрибутивов ядро собрано с поддержкой модуля cpufreq, который снижает частоту процессора до минимально допустимой в угоду снижения энергопотребления.
Данный модуль часто некорректно определяет момент запуска игры и не разгоняет процессор до оптимальной частоты, из-за чего в играх начинаются фризы. В данной статье мы рассмотрим простой и надёжный способ увеличения производительности.
Скрипт увеличения производительности
Данный простой bash-скрипт отключает все режимы энергосбережения процессора и заставляет его работать на максимальной рабочей частоте (разгон не осуществляется, поэтому риск выхода из строя отсутствует):
#!/bin/sh
for cf in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor;
do
echo performance > $cf;
done
Запуск скрипта в системе
Для запуска скрипта сохраните его в файл например в домашний каталог с именем perfinc.sh, выдайте право на запуск и собственно запустите с правами суперпользователя (root).
Выдача прав скрипту с именем perfinc.sh, находящемся в домашнем каталоге (~) пользователя (выполняется только один раз после создания файла):
cd ~
chmod +x perfinc.sh
Для запуска скрипта выполните в терминале (только после того, как выдадите право на запуск):
sudo ./perfinc.sh
Производительность процессора увеличится немедленно. Действие будет выполнено сразу для всех доступных ядер CPU. Если скрипт запущен без прав суперпользователя, вы получите сообщение об ошибке “Отказано в доступе”.
Внимание! Скрипт действует только до перезагрузки системы. После рестарта снова будет активирован энергосберегающий режим.
Настройка автоматического запуска
Если вам нужно увеличивать производительность CPU постоянно, то добавьте строки из данного скрипта в системный инит-скрипт rc.local. Для продолжения проверьте существует ли файл rc.local.
Внимание! Расположение файла rc.local зависит от дистрибутива (используйте правильный во всех командах):
- Fedora, CentOS, RHEL – /etc/rc.d/rc.local (используется в нашем примере);
- Ubuntu – /etc/rc.local;
- openSUSE – /etc/init.d/boot.local;
- Arch – /etc/rc.local;
- Gentoo – /etc/conf.d/local.start;
Если файл уже существует, то просто добавьте строчки 3-6 из нашего примера perfinc.sh в него и сохраните изменения:
sudo nano /etc/rc.d/rc.local
Если же файл не существует, то сперва создадим его:
sudo touch /etc/rc.d/rc.local
Выдадим ему нужные права:
sudo chmod 700 /etc/rc.d/rc.local
Теперь добавим всё содержимое нашего примера perfinc.sh в rc.local:
sudo nano /etc/rc.d/rc.local
Заключение
Таким способом мы увеличили производительность системы. Все действия вы выполняете только на свой страх и риск. Мы не несём никакой ответственности за возможные повреждения системы или оборудования.