Главная >> Система >> Разгон процессора Linux

Разгон процессора Linux

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

Именно этим пользуются во время разгона процессора, когда пользователи получают намного большую частоту, чем установленная по умолчанию. В этой статье мы рассмотрим как выполняется разгон процессора компьютера, а также поговорим про особенности этой задачи в операционной системе Linux.


Содержание статьи

Разгон процессора в Linux

Перед тем, как приступить к разгону процессора, вам нужно узнать несколько очень важных моментов. Первый из них - это тепло. Естественно, что чем большее напряжение вы будете подавать на тот или иной компонент, тем больше тепла он будет производить. А чем большую частоту вы хотите получить, тем большее напряжение придется подать, но делать это нужно в рамках здравого смысла.

Есть предел напряжения, которое может выдержать ваш процессор, перед тем, как появится угроза его разрушения. При слишком большом напряжении компьютер может вовсе не загрузиться. Это напряжение и есть пределом разгона. Здесь подходит видоизмененная пословица: "Все чипы выпускаются равными, но некоторые большее равны чем другие". Каждый процессор уникален, вам может повести и именно ваш компонент будет поддерживать большую частоту работы. Потенциал процессора может варьироваться от 0,2 ГГц до 1 ГГц.

Допустим, что у вас есть хороший куллер для охлаждения вашего процессора, процессор поддерживает разгон, а к таким относятся серия K и X от Intel и все процессоры от AMD, а также вы знаете как попасть в меню настройки BIOS.

Этап первый - проверка системы

Перед тем как переходить к настройке BIOS и реальному разгону процессора нужно убедиться, что ваша система имеет хорошее охлаждение и работает достаточно стабильно. Для этого нам нужно протестировать температуру процессора при максимальной нагрузке. В Linux используется набор программ lm_sensors для просмотра текущей температуры.

Сначала нужно установить этот пакет утилит, если он еще не установлен в вашей системе. В Ubuntu для этого используйте команду:

sudo apt install lm-sensors

Затем используйте утилиту sensors для просмотра текущей температуры оборудования. Обычно, кроме процессора, отображается температура видеокарты, оперативной памяти и так далее. Но в нашем случае отображается только температура для обоих ядер:

sensors

Как видите, тут кроме текущей температуры, показана максимальная температура и критическая. Но сейчас мы смотрим температуру в обычном режиме, теперь нужно проверить ее при максимальной нагрузке. Для этого будем использовать утилиту stress. Ее можно установить в Ubuntu с помощью команды:

sudo apt install stress

Затем создаем нагрузку на процессор, например, в 16 потоков:

stress --cpu 16

И снова смотрим температуру:

sensors

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

Этап второй - настройка BIOS

Этот шаг отвечает непосредственно за разгон процессора. Перезагрузите ваш компьютер и войдите в BIOS. Настройка разгона отличается от версии BIOS, процессора и производителя. Мы рассмотрим разгон процессора AMD Athlon в BIOS от ASUS.

Во множестве материнских плат, в том числе и в этой есть возможность автоматического разгона процессора на определенный, безопасный процент. Так вы можете дать материнской плате сделать большинство работы за себя. Мой процессор работает по умолчанию с частотой 3.0 ГГц, На вкладке "Andvanced" есть раздел "Config JumperFree" здесь вы можете настроить вручную частоту и напряжение, а также задать профиль разгона.

Например, для пункта "AI Overclock Tuner" задайте значение "Overclock profile", если хотите использовать один из настроенных по умолчанию профилей. Затем для параметра Overclock Options нужно выбрать профиль разгона. У этой материнской платы доступен максимальный разгон на 10%:

Таким образом, для процессора на 3.0 ГГц мы получим частоту 3.3 ГГц.

Если же вы хотите настраивать напряжение вручную, вам придется обратиться к документации процессора. Установите значение Overclock profile в manual, изменять множители частоты. Для применения изменений нужно перезагрузить компьютер. В материнских платах в UEFI все может немного отличаться, но суть будет одна и та же, там будет пункт, позволяющий разогнать процессор.

Этап третий - повышение множителя частоты

Допустим, вы уже включили нужный профиль разгона или настроили вручную множитель для напряжения или частоты. Но нельзя сразу выставлять слишком высокий параметр, нужно сначала посмотреть как будет работать система с тем, что имеется. Перезагрузите компьютер и загрузитесь в операционную систему.

В Linux есть такая неприятная для разгона особенность, как cpufreq, эта технология меняет частоту в зависимости от нагрузки на систему поэтому вы не сможете получить максимальную частоту пока установлен профиль энергосбережения. Прежде всего, нам нужно установить профиль максимальной производительности - perfomance. Сначала устанавливает утилиту cpufrequtils если она еще не установлена:

sudo apt install cpufrequtils

Затем, с помощью конфигурационного файла, меняем профиль регулировки частоты по умолчанию на максимальную производительность. Это можно сделать с помощью команды:

sudo cpupower frequency-set -g performance

Если вы хотите чтобы такая частота сохранилась после перезагрузки, то нужно исправить файл сервиса systemd:

sudo vi /usr/lib/systemd/system/cpupower.service

[Unit]

Description=CPU performance

[Service]

Type=oneshot

ExecStart=/usr/bin/cpupower -c all frequency-set -g performance

[Install]

WantedBy=multi-user.target

Дальше вы можете проверить результат своих действий с помощью команды:

cpupower frequency-info

Вы должны увидеть, что активный профиль - perfomance. Посмотреть текущую частоту вы можете с помощью утилиты hwinfo:

hwinfo --cpu | grep Clock

Дальше нам нужно повторить тест температуры процессора при максимальной нагрузке. Как это делается смотрите выше. Если все хорошо и система стабильно работает на протяжении 5 минут, вы можете попытаться еще увеличить множитель.

Возможно, вы захотите контролировать изменение частоты во время теста stress, тогда можно использовать утилиту watch с интервалом в полсекунды:

watch -n 0,5 "hwinfo --cpu | grep Clock"

Чтобы обнаружить придел, увеличивайте множитель на единицу и повторяйте тестирование. Повторяйте такой процесс пока ваш компьютер либо совсем не загрузится, либо температура будет превышать максимальную. Но разгон процессора Linux еще незавершен.

Этап четвертый - повышение напряжения

Если ваш компьютер перестал включаться после повышения частоты до определенного предела или вы получаете Kernel Panic, то пришло время повысить напряжение. Увеличивайте напряжение на 0,1 или на 0,05 пока компьютер не будет нормально загружаться и стабильно работать. Вам нужно быть очень аккуратными с напряжением Vcore. Если вы примените слишком высокое напряжение, то можете сжечь свой процессор. Но делать это обязательно, если вы хотите разогнать компьютер, иначе вы никак не сможете понять как процессор реагирует на то или иное напряжение.

Дальше вы снова можете продолжать повышение множителя частоты. Но рано или поздно вы достигните момента, когда не сможете получить желаемую частоту даже после увеличения напряжения. Тогда верните множитель на предыдущее значение и уменьшите напряжение до предыдущего пункта. Это и будет ваш разгон процессора Linux.

Этап пятый - финальное тестирование

Теперь, когда разгон процессора amd или intel завершен, вам нужно его протестировать. Во первых, проведите еще раз тестирование, которое мы делали перед тем, как перейти к разгону. Вам нужно увидеть как хорошо процессор справляется со своей задачей при максимальной нагрузке и не нужно ли улучшить охлаждение. Посмотреть текущую частоту, до которой вам удалось разогнать процессор можно с помощью утилиты hwinfo:

hwinfo --cpu | grep Clock

Для процессоров Intel вы можете применять программу от производителя - i7z, которая позволяет просмотреть текущую частоту и температуру.

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

Выводы

В этой статье мы рассмотрели как выполнить разгон процессора bios в linux, до максимальной производительности. Но вы должны знать, что разработчики намеренно уменьшают частоту не из жадности. Это делается потому что при увеличении частоты компьютер может начать работать нестабильно, а во-вторых процессор будет намного быстрее изнашиваться. Все очень сильно зависит даже не от конкретной модели, а именно от определенного изделия. Все процессоры разные, и имеют разный потенциал. Возможности своего устройства вы сможете узнать только экспериментально.

20 комментариев к “Разгон процессора Linux”

    • вот кстати да, верное замечание.
      все эти консольные редакторы а ля vi\vim\nano, лично у меня вызывают попаболь.
      для навигации предпочитаю mc и его редакторы\просмотрщики, можно просто в консоли
      "mcedit config.json" например

      Ответить
  1. Доброго дня! Есть ноутбук с процессором AMD A8-3500m, в Windows есть возможность разгона с 1500Mhz до 2200Mhz с помощью AMD Catalyst Control Center . В биосе нет возможности разгона. Вопрос к знатокам, есть ли возможность разгона в Linux ?

    Ответить
    • Нет/есть - смотреть надо...BIOS/ядро Линукс править - точно будет...
      Посмотрите: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies - там все возможные частоты или: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq - максимальная частота CPU, если здесь уже есть ваши 2200000 - то работает уже из коробки.
      По Android, на Linux-ядре, проще - там я знаю, где править.

      Ответить
  2. Автор, у Вас описочка: "Прежде всего, нам нужно установить профиль максимальной производительности - prefomance." - надо perfomance.
    cpufrequtils не нужен, все параметры и так есть в /sys/devices/system/cpu/cpuX/cpufreq, где cpuX - номер ядра процессора (cpu0, cpu1 и т.д., если есть), т.е. сменить говернор можно проще: echo perfomance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor и если уж совсем надо, то: echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor; echo ваша_максимальная_частота_cpu > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed и проц будет постоянно молотить на ваша_максимальная_частота_cpu частоте, тоже самое иногда можно сделать так: cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
    Всё поддерживаемое можно посмотреть:
    cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors - поддерживаемые говерноры
    cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies - поддерживаемые частоты
    Если процессор состоит из нескольких кластеров ядер, то, соответственно всё надо прописывать для каждого кластера отдельно.
    Все команды, естесственно из-под su

    Ответить
  3. Совсем забыл: если уж предлагаете sensors использовать, то тогда уж лучше контролировать температуру так: while ( true ); do clear; sensors; sleep 0.1; done

    Ответить

Оставьте комментарий