Низкая частота CPU в Linux под нагрузкой

Низкая частота CPU в Linux под нагрузкой

Если у Вас заниженная частота CPU в Linux и не поднимается выше 1000 MHz во время тяжелых задач (рендеринг, компиляция, сжатие, шифрование) — это руководство поможет восстановить производительность.

Симптомы проблемы

После установки Linux (Debian, Ubuntu, ArchLinux и т.д.) на ноутбук с процессором Intel 10-12 поколения можно столкнуться с неожиданной проблемой: под нагрузкой частота CPU не поднимается выше 700-1000 MHz и температура в норме (40-50°C).

Диагностика

Проверить текущую частоту процессора можно командой:

grep "cpu MHz" /proc/cpuinfo | head -4

Утилита i7z

Для удобного мониторинга реальной частоты каждого ядра, температуры, множителя и состояния Turbo Boost используйте утилиту i7z:

sudo apt install i7z # Debian/Ubuntu
sudo dnf install i7z # Fedora
sudo pacman -S i7z # Arch Linux

Запустите от имени root:

sudo i7z

Утилита показывает частоту в реальном времени, загрузку ядер, C-states и температуру. Обратите внимание на строку Real Current Frequency — если она не поднимается выше 1000 MHz под нагрузкой, проблема подтверждена.

Если во время нагрузки значения не превышают 1000 MHz, хотя процессор способен работать на 2.4-4.5 GHz, проблема подтверждена. Также полезно проверить текущий governor:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor | sort -u

Причина

На современных процессорах Intel (особенно 11-го поколения и новее) за управление питанием и температурой отвечает служба thermald. Без него ядро Linux не получает корректных данных о тепловых лимитах (PL1/PL2) из ACPI и MSR-регистров процессора, поэтому переходит в консервативный режим, искусственно занижая частоту для предотвращения перегрева.

Решение: установка thermald

Для Debian/Ubuntu

Установите пакет thermald:

sudo apt update
sudo apt install thermald

Активируйте и запустите сервис:

sudo systemctl enable --now thermald

Перезагрузите систему:

sudo reboot

Для ArchLinux

sudo pacman -S thermald
sudo systemctl enable thermald
sudo systemctl start thermald

Проверка результата

После перезагрузки запустите нагрузку (например, рендеринг видео, сжатие архива, компиляция) и проверьте частоту:

watch -n 2 'grep "cpu MHz" /proc/cpuinfo | head -4'

Частота должна подняться до номинальных значений (2400-3500+ MHz в зависимости от модели CPU).

Низкая частота CPU в Linux под нагрузкой

Статус демона можно проверить командой:

systemctl status thermald

Дополнительная оптимизация

Для максимальной производительности также рекомендуется установить режим performance для CPU governor:

for cpu in /sys/devices/system/cpu/cpu*; do
  echo performance | sudo tee $cpu/cpufreq/energy_performance_preference 2>/dev/null
done

Чтобы настройки применялись автоматически при загрузке, создайте systemd-сервис или добавьте команды в /etc/rc.local.

Заключение

Установка thermald решает проблему заниженной частоты CPU на ноутбуках с процессорами Intel на Linux системах. Демон корректно управляет тепловыми лимитами, позволяя процессору работать на полной частоте без риска перегрева. Производительность в задачах рендеринга и компиляции возрастает в 2-3 раза.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Другие проекты SKILX


UNLIX © Все права защищены 2015 - 2026 | SKILX

Копирование материалов с сайта UNLIX без указания полной ссылки на источник ЗАПРЕЩЕНО!