/plasma-pstate

Intel P-state and CPUFreq Manager Widget

Primary LanguageQMLGNU General Public License v2.0GPL-2.0

Intel P-state and CPUFreq Manager Widget

What it is

Intel P-state and CPUFreq Manager is a KDE Plasma widget in order to control the frequencies of Intel CPUs and their integrated GPUs for any modern Intel Processors running in Active Mode with HWP or Active Mode Without HWP. It can also manage the processor's energy consumption through Energy-Performance Preference (EPP) knob (if supported) or the Energy-Performance Bias (EPB) knob (otherwise).

Intel P-state and CPUFreq Manager Widget

Furthermore, it allows you to interact with the following vendor specific settings

  1. Dell's Thermal Management Feature through libsmbios library.

Intel P-state and CPUFreq Manager Widget with Dell's Thermal Management Feature

  1. LG Gram laptop Battery care limit, USB charge and Fan mode features (on kernel 4.20 and higher).

Intel P-state and CPUFreq Manager Widget with LG Laptop Support features

  1. Nvidia PowerMizer Settings.

Intel P-state and CPUFreq Manager Widget with Nvidia PowerMizer Settings

What it isn't

This is just a GUI widget and it is not meant to replace TLP, powertop or any other power management / energy consumption service. It is meant just to provide quick access to sysfs settings related to Intel Processors and in fact it can run on top of TLP.

Why

As the trend in modern laptops continues to be more CPU power in more slim chassis design and as the software and becomes more demanding, it is becoming harder to find a combination of power performance and/or energy consumption settings to fit all your daily tasks that require different levels of performance.

This widget's purpose is to expose to the user hardware and kernel settings that may be useful in cases you need to adjust such a setting from the comfort of your graphical interface using point and click or tap interactions even in cases that a keyboard isn't available.

How to install

First of all you need to be in sudoers' group. After that you can just clone the code and install it using the following commands:

git clone https://github.com/frankenfruity/plasma-pstate
cd plasma-pstate
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_BUILD_TYPE=Release ..
make
make install

cd ..
cp ./src/plasma_pstate.policy /usr/share/polkit-1/actions/
chmod 644 /usr/share/polkit-1/actions/plasma_pstate.policy

Notice: If your processor doesn't support EPP(ie older generations without HWP), then you need also to install the x86_energy_perf_policy which (in case of Ubuntu 18.04 distros) is provided by the linux-tools package and can be installed using the following command

sudo apt install linux-tools-generic linux-tools-`uname -r`

Custom profiles

A profile applies multiple settings at once.

Click the Edit profiles button to manage profiles.

In edit mode, use the toolbar buttons to create or delete a profile.

Edit a profile name in the text box.

Select the settings to be included in a profile.

Colors of the navigation bar are inverted in edit mode. The config menus modify the values of the current profile.

Save or discard changes to exit edit mode.

Contributions

Please feel free to clone, hack, and contribute anything you may find useful, especially in relation to similar to Dell's Thermal Management Feature that may be available in other hardware platforms.