- [РЕШЕНО] Не работает cpu frequency applet
- CPU frequency scaling
- Contents
- Userspace tools
- thermald
- cpupower
- cpupower-gui
- turbostat
- CPU frequency driver
- Setting maximum and minimum frequencies
- О том, как я заставлял Ubuntu работать 10 часов от батареи
- Содержание поста.
- 1. Отключаем дискретную видеокарту.
- 2. Полезные советы по энергосбережению.
- 3. Некоторые проблемы ноутбука (связанные с энергосбережением) и их решения.
- Частота процессора в Linux
- Как узнать частоту процессора Linux
- Управление частотой в Linux
- Выводы
[РЕШЕНО] Не работает cpu frequency applet
#1 — 11 июня 2016 в 16:02 |
Доброго времени суток. У меня не работает CPU Frequency Applet.
Устанавливаю его из стандартно приложения Апплеты, настраиваю для показа в трее,
трей моргает, значка нет. При подсветке значка из настроек рисуется полоска и пропадает.
Перезагрузка не помогает.
Linux Mint 17.3, ядро 4.4.0-24, комп asus n550jk(core i7, 8Gb)
Ни каких дополнительных программ по управлению cpu не установлено.
Вывод cpufreq-info (установился из коробки)
$ cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 0.97 ms.
hardware limits: 800 MHz — 3.50 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 3.50 GHz and 3.50 GHz.
The governor «powersave» may decide which speed to use
within this range.
current CPU frequency is 2.50 GHz.
и так на все 8 логических ядер.
почему available cpufreq governors только 2 типа, их должно быть как минимум 5
почему frequency should be within 3.50 GHz and 3.50 GHz. ведь должно быть 0.8 GHz and 3.5 GHz
Источник
CPU frequency scaling
CPU frequency scaling enables the operating system to scale the CPU frequency up or down in order to save power. CPU frequencies can be scaled automatically depending on the system load, in response to ACPI events, or manually by userspace programs.
CPU frequency scaling is implemented in the Linux kernel, the infrastructure is called cpufreq. Since kernel 3.4 the necessary modules are loaded automatically. For older kernels or CPUs, the recommended ondemand governor is enabled by default, whereas for newer kernels or CPUs, the schedutil governor is enabled by default. However, userspace tools like cpupower, acpid, Laptop Mode Tools, or GUI tools provided for your desktop environment, may still be used for advanced configuration.
Contents
Userspace tools
thermald
thermald is a Linux daemon used to prevent the overheating of Intel CPUs. This daemon monitors temperature and applies compensation using available cooling methods.
By default, it monitors CPU temperature using available CPU digital temperature sensors and maintains CPU temperature under control, before HW takes aggressive correction action. If there is a skin temperature sensor in thermal sysfs, then it tries to keep skin temperature under 45C.
The associated systemd unit is thermald.service , which should be started and enabled.
i7z is an i7 (and now i3, i5, i7, i9) CPU reporting tool for Linux. It can be launched from a Terminal with the command i7z or as GUI with i7z-gui .
cpupower
cpupower is a set of userspace utilities designed to assist with CPU frequency scaling. The package is not required to use scaling, but is highly recommended because it provides useful command-line utilities and a systemd service to change the governor at boot.
The configuration file for cpupower is located in /etc/default/cpupower . This configuration file is read by a bash script in /usr/lib/systemd/scripts/cpupower which is activated by systemd with cpupower.service . You may want to enable cpupower.service to start at boot.
cpupower-gui
cpupower-gui AUR is a graphical utility designed to assist with CPU frequency scaling. The GUI is based on GTK and is meant to provide the same options as cpupower. cpupower-gui can change the maximum/minimum CPU frequency and governor for each core. The application handles privilege granting through polkit and allows any logged-in user in the wheel user group to change the frequency and governor.
turbostat
turbostat can display the frequency, power consumption, idle status and other statistics of the modern Intel and AMD CPUs.
CPU frequency driver
cpupower requires modules to know the limits of the native CPU:
Module | Description |
---|---|
intel_pstate | This driver implements a scaling driver with an internal governor for Intel Core (Sandy Bridge and newer) processors. |
intel_cpufreq | Starting with kernel 5.7, the intel_pstate scaling driver selects «passive mode» aka intel_cpufreq for CPUs that do not support hardware-managed P-states (HWP), i.e. Intel Core i 5th generation or older. |
acpi-cpufreq | CPUFreq driver which utilizes the ACPI Processor Performance States. This driver also supports the Intel Enhanced SpeedStep (previously supported by the deprecated speedstep-centrino module). |
speedstep-lib | CPUFreq driver for Intel SpeedStep-enabled processors (mostly Atoms and older Pentiums) |
powernow-k8 | CPUFreq driver for K8/K10 Athlon 64/Opteron/Phenom processors. Since Linux 3.7 ‘acpi-cpufreq’ will automatically be used for more modern AMD CPUs. |
pcc-cpufreq | This driver supports Processor Clocking Control interface by Hewlett-Packard and Microsoft Corporation which is useful on some ProLiant servers. |
p4-clockmod | CPUFreq driver for Intel Pentium 4/Xeon/Celeron processors which lowers the CPU temperature by skipping clocks. (You probably want to use a SpeedStep driver instead.) |
To see a full list of available modules, run:
Load the appropriate module (see Kernel modules for details). Once the appropriate cpufreq driver is loaded, detailed information about the CPU(s) can be displayed by running
Setting maximum and minimum frequencies
In some cases, it may be necessary to manually set maximum and minimum frequencies.
To set the maximum clock frequency ( clock_freq is a clock frequency with units: GHz, MHz):
To set the minimum clock frequency:
To set the CPU to run at a specified frequency:
Alternatively, you can set the frequency manually:
The available values can be found in /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies or similar. [1]
Источник
О том, как я заставлял Ubuntu работать 10 часов от батареи
Я являюсь рядовым линукс-пользователем и поэтому не стоит от этой статьи ожидать очень умных ходов или нестандартных программистских решений. Все по мануалам. Но раз результат достигнут, значит кому-то кроме меня это может оказаться полезным.
О том, как заставит ноутбук работать под линуксами как можно дольше, написано немало, в том числе и на хабре. В какой-то степени я еще раз соберу все советы воедино, от очевидных до обскурных, заодно опишу несколько проблем и решений, которые у меня оказались достаточно «индивидуальными».
Устанавливал я Ubuntu 10.10 на ноутбук Acer Aspire Timeline 5810TG. Эта машина обладает экраном в почти 16 дюймов и относительно производительным железом, зато батарея достаточно емкая, чтобы ставить с ней личные рекорды.
Содержание поста.
1. Отключаем дискретную видеокарту.
2. Полезные команды для энергосбережения.
3. Проблемы ноутбука (связанные с энергосбережением) и их решения.
4. Автоматизация.
5. Дополнительные советы.
1. Отключаем дискретную видеокарту.
В моем ноутбуке имеется возможность переключаться между встроенным графическим чипом от Intel, маломощным и малотребовательным к электроэнергии, и сравнительно сильной и энергоемкой карте ATI Radeon HD4330. Многие обладатели ноутбуков с переключаемой графикой испытывают проблемы в работе с Linux-системами. Поиск по «ubuntu switchable graphics» на убунтуформус выдает больше 50 страниц тем.
Мне производительная графическая карта нужна редко, поэтому я задался целью отключить ее по умолчанию с возможностью быстрого и безболезненного включения.
Очень много читал те самые 50 страниц форумных тем. А надо было всего лишь заглянуть в убунту-вики или даже попробовать воспользоваться хабрапоиском.
В версиях ядра, начиная с 2.6.34, присутствует механизм vga_switcheroo, позволяющий переключаться между видеокартами. То есть в Ubuntu 10.10 он есть по умолчанию. О том, как им пользоваться, хорошо было написано здесь (см. второй способ) почти год назад, я по-быстрому напомню, что к чему.
Вначале выполним
Зная, какой GPU как обозначается, посмотрим, какой из них в каком состоянии.
Плюсик стоит на против видеочипа, который используется в данный момент, Pwr означает, что видеокарта включена и потребляет энергию.
Важно: у всех моих немногих знакомых, обладающих ноутбуками с двумя видеокартами, картина одинаковая: что бы вы не делали, при загрузке системы обе карты работают, при этом для вывода используется встроенная «слабая» графика. Это нам на руку, ибо обесточивание неактивной видеокарт происходит бескровно.
Команда отключает неиспользуемую GPU сразу же. Поэтому мы обратимся к файлу /etc/rc.local, добавив в него вышеуказанную команду (перед строчкой exit 0). Так, при загрузке систему дискретная видеокарта уже будет отключена и мне не нужно будет беспокоиться ни о чем.
Важно: насколько я могу судить, vga_switcheroo не работает, если установлены проприетарные драйверы на дискретную видеокарту.
Кстати, если вы хотите переключаться между видеокартами через графический интерфейс, установите Ubuntu Control Center. Программа представляет собой панель управления параметрами Ubuntu, но нас она интересует исключительно из-за опции переключения между GPU (естественно, здесь это тоже происходит средствами vga_switcheroo).
Будьте аккуратны с UCC: во-первых, работает кривовато, например, мне необходимо было вначале переключиться на дискретную видеокарту, а лишь затем на встроенную, чтобы обесточить дискретную (либо вначале выполнить echo OFF > /sys/kernel/debug/vgaswitcheroo/switch, а затем переключаться на встроенную GPU). Но работает. Во-вторых, переключение происходит сразу, то есть без спросу выполняется завершение сеанса и приходится вновь залогиниваться.
Больше о переключаемой графике можно почитать в хабрапосте, на который я дал ссылку выше, а также в Убунту-вики и в этом блоге. Я к этому вопросу возвращаться не буду.
2. Полезные советы по энергосбережению.
Собирались эти советы с lesswatts, ubuntuforums, учитывались хинты от powertop, кое-что было найдено случайно.
1) Если у вас стоит убунту на ноутбуке, стопроцентно у вас установлен пакет laptop_mode, оптимизирующий работу компьютера в зависимости от источника питания. Значение 0, посылаемое в /proc/sys/vm/laptop_mode, отключает режим энергосбережения, 5 устанавливает самый агрессивный. Подробнее о том, как именно laptop_mode сберегает энергию, можно прочесть где угодно.
2) Режим энергосбережение для SATA-устройств.
Не знаю, почему у меня в /sys/class/scsi_host/ целых шесть устройств 🙂 Для включения максимального быстродействия выполнить команды с max_performance вместо min_power.
3) По умолчанию в Ubuntu есть четыре профиля работы процессора:
conservative: медленно повышает частоту процессора в зависимости от нагрузки на систему и резко сбрасывает частоту к минимальной при простое.
ondemand: быстро повышает частоту процессора при возрастании нагрузки и медленно сбрасывает частоту к минимуму при простое.
powersave и performance, очевидно, соответствуют минимальной и максимальной частотам CPU. Многие независимые пользователи крайне не советуют использовать режим performance, поэтому даже для работы от сети, когда экономить на ваттах нет смысла, я использую режим ondemand.
4) Параметр ‘sched_mc_power_savings’ из /sys/devices/system/cpu/ позволяет использовать энергосберегающий режим работы процессора в случае, если у того более одного ядра, благодаря особому распределению нагрузки между ядрами.
5) Встроенные аудио-чипы от Intel (которые принадлежат к т. н. High Definition Audio — HDA) также имеют возможность экономии ватт, если звуковой чип не используется
6) Для того, что выиграть еще чуть-чуть времени работы батареи, можно запретить системе время от времени «опрашивать» cd/dvd-привод на предмет наличия там диска.
7) Можно выключить к черту веб-камеру вместе с драйвером. Не проверял отдельно, но сообщают, что дело очень хорошее при работе от батареи. Естественно, пропустите этот шаг, если вам придется использовать скайп или еще для чего-то понадобится камера.
8) Dirty ratio — максимальный размер памяти (в процентах), для хранения грязных данных прежде чем процесс, их сгенерировавший, будет принужден записать их. Чем выше значение, очевидно, тем реже производится запись и тем меньше активность жесткого диска и системы.
9) Dirty background ratio — минимальное число памяти (в процентах), где позволено хранить гразные данные вместо записи на диск. Этот параметр должен быть намного меньше чем dirty_ratio что бы позволить записывать куски грязных данных за один проход.
10) Dirty Writeback sentisecs — как часто ядро должно проверять есть ли «грязные» (измененные) данные для записи на диск (в сантисекундах). Чем выше значение, очевидно, тем реже используется диск для записи грязных данных.
11) Включение режима энергосбережения PCI Express, как говорят люди, позволяет экономить достаточно много энергии батареи.
3. Некоторые проблемы ноутбука (связанные с энергосбережением) и их решения.
Проблема 1. Не работает изменение яркости экрана. Яркость всегда стоит на максимуме. Это критичный момент для энергосбережения, так как яркая подсветка дисплея съедает уйму электроэнергии. Эта проблема наблюдается на многих ноутбуках, на Acer’ах особенно часто. Симптом: изменение яркости с помощью gnome-апплета не дает эффекта, сколько ползунок не таскай, переключение клавишами FN+Right, FN+Left, или аналогичными Fn-комбинациями вешает систему, помогает лишь хард-ресет.
Решение оказалось не самым практичным, но достаточно простым:
Здесь ХХ принимает значения от 00 до FF в шестнадцатеричной системе. Для работы от батареи я выбрал значение 40, для работы от сети — FF.
Источник
Частота процессора в Linux
Если вы уже пытались настраивать частоту Linux, то, наверное уже заметили, что частота процессора сама меняется в зависимости от нагрузки на систему. Операционная система устанавливает лимит минимальной и максимальной частоты, и когда нагрузки нет частота автоматически опускается до минимальной, а при появлении нагрузки подымается назад.
Конечно, в интерфейсе BIOS можно зафиксировать частоту на одном уровне, но в этом нет смысла. С точки зрения баланса производительности и энергопотребления лучше оставить всё как есть. Но правила изменения частоты можно настроить. Для этого используются политики CPU Governor. В этой статье мы рассмотрим как узнать частоту процессора Linux, а также как настроить её изменение.
Как узнать частоту процессора Linux
Узнать текущую частоту процессора можно вместе с другой информацией о нём с помощью утилиты lscpu:
Здесь же выводится максимальная и минимальная частота. Текущую частоту для каждого ядра по отдельности вы можете посмотреть в файле /proc/cpuinfo:
Так можно вывести информацию обо всех ядрах на одном экране:
cat /proc/cpuinfo | grep «cpu MHz»
Утилита lshw тоже выводит текущую и максимальную частоту в секции cpu:
Ну и hwinfo выводит нужную нам информацию. Правда, прежде надо её установить:
sudo apt install hwinfo
hwinfo —short —cpu
Если вы хотите отслеживать как меняется частота со временем используйте hwinfo в сочетании с утилитой watch:
watch hwinfo —short —cpu
Теперь вы знаете как посмотреть частоту процессора Linux, перейдём к управлению.
Управление частотой в Linux
Для управления частотой в операционной системе Linux используются политики CPU Governor. Они определяют как быстро будет изменятся частота при изменении нагрузки. Существует четыре политики:
- powersave — процессор работает на минимальной частоте;
- performance — процессор работает на максимальной частоте;
- ondemand — динамическое изменение частоты, при появлении нагрузки резко устанавливается самая высокая частота, а при снижении нагрузки частота медленно снижается;
- conservative — аналогично ondemand, только частота меняется более плавно;
- userspace — использовать частоту заданную пользователем;
- schedutil — изменение частоты на основе планировщика.
Самый выгодный в данном случае режим — это ondemand, частота повышается при необходимости и опускается если она не нужна. Чтобы посмотреть текущую политику управления частотой вам понадобится утилита cpupower, которую можно установить, установив этот пакет:
sudo apt install linux-tools-generic
Затем посмотрите информацию о процессоре:
Как видите, сейчас для управления частотой используется политика ondemand. Для установки политики используйте команду frequency-set и опцию -g. Например, для performance:
sudo cpupower frequency-set -g performance
Теперь частота гораздо выше, а используемая политика performance. Для того чтобы вручную менять частоту установите политику userspace:
sudo cpupower frequency-set -g userspace
Для установки максимальной частоты используйте опцию -u:
sudo cpupower frequency-set -u 3600Mhz
Для установки минимальной частоты — опцию -d:
sudo cpupower frequency-set -d 2300Mhz
А для изменения текущей частоты процессора — опцию -f:
sudo cpupower frequency-set -f 3500Mhz
Частота всё-равно будет немного колебаться, но эти колебания будут в пределах выбранного диапазона.
Все эти изменения сбрасываются после перезагрузки, поэтому если вы хотите чтобы всё сохранялось, придется создать скрипт с нужными командами и добавить его в автозагрузку.
Если вы любите пользоваться графическим интерфейсом вместо команд, вам понравится утилита cpupower-gui. Она позволяет настроить все необходимые параметры в графическом интерфейсе. Для её установки выполните:
sudo apt install cpupower-gui
Для установки самой последней версии выполните такие команды:
echo ‘deb http://download.opensuse.org/repositories/home:/erigas:/cpupower-gui/xUbuntu_20.04/ /’ | sudo tee /etc/apt/sources.list.d/home:erigas:cpupower-gui.list
curl -fsSL https://download.opensuse.org/repositories/home:erigas:cpupower-gui/xUbuntu_20.04/Release.key | gpg —dearmor | sudo tee /etc/apt/trusted.gpg.d/home:erigas:cpupower-gui.gpg > /dev/null
sudo apt update
sudo apt install cpupower-gui
После завершения установки вы сможете найти программу в главном меню. Её окно выглядит вот так:
Утилита позволяет настроить максимальную и минимальную частоту, а также политику для каждого ядра по отдельности или для всех ядер вместе. Просто выберите нужные значения и нажмите кнопку Apply.
В отличие от консольных команд утилита позволяет устанавливать необходимые вам значения профиля и частоты при старте программы. Для этого в программе есть два профиля Balanced и Performance. Первый использует политику Powersave, а второй — Performance. Для того чтобы выбрать профиль по умолчанию надо отредактировать конфигурационный файл /etc/cpupower_gui.conf:
sudo vi /etc/cpupower_gui.conf
Измените значение параметра Profile на нужное и этот профиль будет выбираться по умолчанию при старте программы, останется только добавить её в автозагрузку. Кроме этих двух профилей можно создавать свои в папке /etc/cpupower_gui.d/. В этой папке уже лежит пример профиля, но рассматривать этот процесс подробнее мы не будем.
Выводы
В этой небольшой статье мы рассмотрели как меняется частота процессора Linux, как её настроить и зачем это необходимо.
Источник