Вопрос или проблема
На моем компьютере в BIOS отключены настройки энергосбережения. Когда я запускаю Ubuntu на этом компьютере, процессоры работают на максимальной частоте 2100 МГц.
Однако, когда я запускаю CentOS 7, даже с установленным файловым управлением “performance”, процессоры не работают на полной частоте 2100 МГц.
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
performance
performance
performance
performance
grep -i mhz /proc/cpuinfo
cpu MHz : 1688.285
cpu MHz : 2058.656
cpu MHz : 1622.988
cpu MHz : 2070.632
Мое приложение — это приложение для обработки сети, поэтому разница в тактовых частотах процессоров приводит к разнице в производительности.
У меня не работают cpuspeed, powerd или другие службы управления питанием.
Так что мой вопрос: является ли это ожидаемым поведением, если cpupower установлен на “performance”? Кажется, что CentOS игнорирует настройки BIOS.
Когда я загружаю Ubuntu, она просто принимает настройки BIOS, и все процессоры работают на максимуме.
Решение, которое я нашел, – это отключение intel pstate в grub.
С CentOS/RedHat я настоятельно рекомендую использовать демон tuned для управления состояниями питания. Вы можете установить его с помощью команды yum install tuned.
Похоже, что вам нужно:
tuned-adm profile latency-performance
Ответ или решение
Когда вы сталкиваетесь с проблемой, когда процессоры на вашей системе CentOS 7 не достигают максимальной частоты, несмотря на то, что вы установили режим управления частотой на «performance», это может вызвать беспокойство, особенно если ваши приложения требуют максимальной производительности. Давайте рассмотрим причины этого явления и возможные решения.
Проблема: Неправильная частота CPU в CentOS 7
В вашем случае вы заметили, что при запуске Ubuntu процессоры работают на максимальной частоте (2100 MHz), в то время как на CentOS 7 наблюдается уменьшение частоты (до 1688.285 MHz). Вы уже предприняли правильные шаги, проверив настройки BIOS и отключив режимы энергосбережения.
Причины проблемы
-
Интерфейс управления питанием: CentOS 7 может использовать различные механизмы управления питанием, которые могут не учитывать настройки BIOS, если они не настроены должным образом.
-
Intel P-state: На некоторых системах использование Intel P-state может приводить к тому, что частота процессора не достигает максимального уровня, даже если governor установлен на «performance». Это связано с тем, что P-state принимает собственные решения по регулированию частоты на основе текущей нагрузки.
-
Тонкие настройки ядра: Определенные параметры в конфигурации ядра могут препятствовать достижению максимальной частоты. Например, параметры, касающиеся управления питанием, могут блокировать доступ к максимальным выходным частотам.
Решения
-
Отключение Intel P-state: Как вы уже указали, отключение Intel P-state в конфигурации загрузки может решить проблему. Для этого вы можете добавить параметр
intel_pstate=disable
в строку GRUB. Это позволит системе управлять частотой CPU без ограничений, накладываемых механизмом P-state.sudo vi /etc/default/grub
Найдите строчку, начинающуюся с
GRUB_CMDLINE_LINUX
, и добавьтеintel_pstate=disable
, после чего выполните:sudo grub2-mkconfig -o /boot/grub2/grub.cfg sudo reboot
-
Использование tuned: Установка и использование службы tuned – это еще один эффективный способ управления настройками производительности CPU. Ваша рекомендация установить tuned и использовать профиль
latency-performance
вполне обоснованна. Для установки и применения этого профиля выполните следующие команды:sudo yum install tuned sudo systemctl enable tuned sudo systemctl start tuned sudo tuned-adm profile latency-performance
-
Проверка текущих частот CPU: После внесения изменений убедитесь, что CPU достигают нужной частоты, запустив команды:
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
-
Обновление ядра: В некоторых случаях более новая версия ядра может улучшить управление частотой и производительность системы. Рассмотрите возможность обновления ядра через менеджер пакетов.
Заключение
На основе описанной ситуации, да, поведение CentOS 7 может отличаться от Windows или Ubuntu из-за различных механизмов управления питанием и политики управления частотой. Отключение механизма Intel P-state и использование службы tuned являются практическими и надежными способами устранения проблемы. Применив корректные настройки, вы сможете вернуть вашу систему к полной производительности, обеспечивая оптимальную работу сети и приложений.