В некоторых дистрибутивах 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

Заключение

Таким способом мы увеличили производительность системы. Все действия вы выполняете только на свой страх и риск. Мы не несём никакой ответственности за возможные повреждения системы или оборудования.