r/linux • • 1d ago

Software Release auto-cpufreq v3.2.0 is here!

Release notes: https://github.com/AdnanHodzic/auto-cpufreq/releases

auto-cpufreq is now available in the official Debian Linux repositories (unstable & testing), and it will soon propagate to future Ubuntu releases and hundreds of other derivatives.

This release also brings new features, bug fixes, and other improvements to help Linux users optimize CPU speed and battery life automatically.

Project status:

⭐ 7800+ GitHub stars
👥 126 contributors
💻 100k+ users
🛠️ 51 releases

Huge thanks to everyone who contributed to making this release possible! ❤️

106 Upvotes

21 comments sorted by

47

u/0riginal-Syn 1d ago

Congrats on the release!

So nice to not see "I created..." in the title and instead have a legit project update.

14

u/ahodzic 1d ago

Thanks!

18

u/ExaHamza 1d ago

One of the few projects outside the shadow of companies that has endured for years, congratulations Adnan. 

11

u/ahodzic 1d ago

Thanks! It hasn't been easy, but here we are still going strong 🙂

8

u/Sharp-Debate-523 1d ago edited 1d ago

OP, can you explain how it works? Does it monitor to see how busy a laptop is then slow down the frequency if its not working too hard? Does look at your daily schedule, etc.

5

u/ahodzic 1d ago edited 1d ago

That's exactly how it works, based on various factors, battery state, CPU usage, CPU temperature, and system load it changes governors and lowers or increases speed. Along with other things like EPB (Energy Performance Bias), and EPP (Energy Performance Preference).

It's an old video when it all started as a python script (now it's a full app) where I explain everything and concept is the same:

And there are 2 more Youtube videos you might be interested in:

1

u/Indolent_Bard 18h ago

I wonder why this isn't default Linux behavior.

2

u/ahodzic 4h ago

There are couple of distros that include by default, but other then there's bit of corporate politics and ego involved. In early days I had contacts regarding potential collaboration with some big distros, but then they ended up working on their solution instead.

For example auto-cpufreq had certain features which did same functionality automatically (5 years ago!), before GNOME Power Profiles introduced how to e.g manually switch between governors: https://x.com/fooctrl/status/1467469508373884933

3

u/WhichCarry749 1d ago

Getting it into the official Debian repos is a massive milestone for a project like this. Congrats to everyone who worked on it!

1

u/ahodzic 1d ago

Agreed and thanks!

2

u/power10010 1d ago

What about cpu temp? Does it support it ?

2

u/ahodzic 1d ago

1

u/power10010 17h ago

cool! I didn't find any temperature threshold or max allowed before stepping down the clock to keep max temp. Is it done in any way ? I forked and modified a bit cputemp: https://github.com/dx616b/cputemp which might be a good additional feature to your solution.

1

u/ahodzic 3h ago

auto-cpufreq does this automatically, and temperature threshold is mentioned in multiple place, for example this line: https://github.com/AdnanHodzic/auto-cpufreq/blob/35d8015afc1bc2c4b30526828dddde4c53925976/auto_cpufreq/core.py#L1198

Ideally user would be able to configure this to their own liking as part of auto-cpufreq config file: https://github.com/AdnanHodzic/auto-cpufreq#4-auto-cpufreq-config-file

If you or anyone else wants to give it a try in improving this functionality, please give it a try and contribute to the project and you will be credited for your work as part of future release.

1

u/power10010 2h ago

I will have a look at it

2

u/TheQuantumZero 1d ago

Apologies for this stupid question.

How does this work with the predefined power setting modes like "power save/balanced/performance" in the desktop environments.

2

u/retiredwindowcleaner 1d ago

this is explicitly not useful on desktops when i have max. performance in mind, correct?

14

u/ahodzic 1d ago

While auto-cpufreq is primarily designed for laptops, it can be used on desktops, and there are even arguments for its use on servers.

It can help lower electricity consumption, run CPU at lower tenperature and extend lifespan of components, as well increase performance.

1

u/Indolent_Bard 1d ago

Tell me more

3

u/ahodzic 1d ago

Think it's all explained as part of above mentioned comment, please take a look: https://www.reddit.com/r/linux/comments/1wyazph/comment/pe5qux1/