当前位置: 首页 > news >正文

debian中笔记本的省电选择auto-cpufreq

在reddit中,看评论区出现这个软件,于是打算尝试一下,应该能对不使用电源时笔记本的省电起到一定的作用。

https://github.com/AdnanHodzic/auto-cpufreq?tab=readme-ov-file#why-do-i-need-auto-cpufreq

作用

One of the problems with Linux today on laptops is that the CPU will run in an unoptimized manner which will negatively impact battery life. For example, the CPU may run using the “performance” governor with turbo boost enabled regardless of whether it’s plugged into a power outlet or not.
These issues can be mitigated by using tools like indicator-cpufreq or cpufreq, but those still require manual action from your side which can be daunting and cumbersome.
Tools like TLP (which I used for numerous years) can help extend battery life, but may also create their own set of problems, such as losing turbo boost.
Given all of the above, I needed a simple tool that would automatically make CPU frequency-related changes and save battery life, but let the Linux kernel do most of the heavy lifting. That’s how auto-cpufreq was born.
Please note: auto-cpufreq aims to replace TLP in terms of functionality, so after you install auto-cpufreq it’s recommended to remove TLP. Using both for the same functionality (i.e., to set CPU frequencies) will lead to unwanted results like overheating. Hence, only use both tools in tandem if you know what you’re doing.
One tool/daemon that does not conflict with auto-cpufreq in any way, and is even recommended to have running alongside, is thermald.
Supported architectures and devices
Only devices with an Intel, AMD, or ARM CPU are supported. This tool was developed to improve performance and battery life on laptops, but running it on desktops/servers (to lower power consumption) should also be possible.

AI提炼

该软件 auto-cpufreq 的作用主要有以下几点:

  1. 自动进行与 CPU 频率相关的更改,优化 CPU 运行方式,避免其以未优化的方式运行,从而延长电池寿命。 让 Linux
  2. 内核承担大部分繁重工作,在不依赖过多手动操作(如使用 indicator-cpufreq 或 cpufreq 工具那样)的情况下,实现对
  3. CPU 频率的优化调整。 在功能上可替代 TLP,避免因同时使用 TLP 和 auto-cpufreq 设置 CPU频率而导致如过热等不良结果。
  4. 除了适用于笔记本电脑提升性能和延长电池寿命外,也可运行在台式机或服务器上,达到降低功耗的目的。

大概就是通过调节CPU的频率达到省电的作用,不过电脑的功耗大头不仅仅只有CPU,提升有但有限吧

过程解读

systemctl status power-profiles-daemon

与gnome下的power-profiles-daemon.service产生了冲突,也不奇怪,因为这个就是用来调节cpu的运行状态的。
长这样:
在这里插入图片描述
下面是警告(也就是说不是报错),意思是说两者不能共存,在安装auto-cpufreq为daemon service时会将power-profiles-daemon禁用,卸载时重新启用power-profiles-daemon服务。

ying@192 ~/p/auto-cpufreq (master)> sudo auto-cpufreq --monitor----------------------------------- Warning -----------------------------------Detected running GNOME Power Profiles daemon service!This daemon might interfere with auto-cpufreq and will be automatically
disabled when auto-cpufreq daemon is installed and
it will be re-enabled after auto-cpufreq is removed.Only necessary to be manually done on Snap package installs!
Steps to perform this action using auto-cpufreq: power_helper script:
git clone https://github.com/AdnanHodzic/auto-cpufreq.git
python3 -m auto_cpufreq.power_helper --gnome_power_disableReference: https://github.com/AdnanHodzic/auto-cpufreq#configuring-auto-cpufreq
press Enter to continue or Ctrl + c to exit...^C⏎  

回车查看详情信息
在这里插入图片描述

这个命令应该是临时启用 auto-cpufreq,如何看情况在安装为daemon service,重启配置就失效。
sudo auto-cpufreq --live

在这里插入图片描述
ok,给哥们主频最大频率砍了一般,稍微动动cpu占用就上去了。和轻薄本没两样了吧!

我尝试一下,可不可以退出这个监视界面,一直开着也较为碍事。
sudo auto-cpufreq --monitor
监控发现,配置基本没变。
在这里插入图片描述
谨慎起见,再查看
systemctl status power-profiles-daemon
在这里插入图片描述
可以看到这个服务还是在跑,不过尝试更改,会发现主频最高仍然是2300,所以也算是禁用了。

不过目测续航也并没有多少提高。

安装

git clone https://github.com/AdnanHodzic/auto-cpufreq.git
cd auto-cpufreq && sudo ./auto-cpufreq-installer
sudo auto-cpufreq --install

其他

它是有一个GUI程序可以图形化的管理操作,但是好像我安装过程中出了些问题,这个程序无法打开,但是命令行仍然可用。

安装之后

auto-cpufreq --stats

//To disable and remove auto-cpufreq daemon, run:

sudo auto-cpufreq --remove

内存占用不大,大概25M

systemctl status auto-cpufreq

其他

在插入电源后打开virtualbox测试,发现最大频率会波动,虚拟机也卡卡的感觉,也不知道是不是错觉。

You can configure separate profiles for the battery and power supply. These profiles will let you pick which governor to use, as well as how and when turbo boost is enabled. The possible values for turbo boost behavior are always, auto, and never. The default behavior is auto, which only activates turbo during high load.
这里有个问题,只有在高负载下会启用,那也就是说如果环境在高低负载交替的场景,可能会有明显卡顿。

作者也给出了配置的方法,可以通过配置文件来控制使用电源和电源适配器时不同的睿频调节方案。
配置文件并没有默认创建,可能需要手动创建。
在这里插入图片描述

在sudo auto-cpufreq --monitor的显示中可以看到电源适配器的插入状态,还有电池充电开始和停止的阈值,但是作者明确指出只适配联想设备,因为我是华硕所有我也就不尝试配置了,github中还有一些电源管理方案可以供选择,还有gnome插件的方案,不过需要指出,gnome插件需要在开机后登录进入桌面才会启用,也就是说这段时间内,电池会持续充电。
在这里插入图片描述

在安装为daemon后会关闭gnome的性能调节service

ying@192 ~> systemctl status power-profiles-daemon
○ power-profiles-daemon.serviceLoaded: masked (Reason: Unit power-profiles-daemon.service is masked.)Active: inactive (dead)

附一个我的配置文件

sudo vim /etc/auto-cpufreq.conf

在插入电源时一直启用turbo,在使用电池时auto,电池充电阈值那里还没开始搞,现在使用的gnome插件,虽然有点缺陷但可以使用,不过作者的reference我没有删除,感兴趣的可以去摸索一下,另外这个配置文件修改完保存就会生效。

# settings for when connected to a power source
[charger]
governor = performance
energy_performance_preference = performance
turbo = always# settings for when using battery power
[battery]
governor = powersave
energy_performance_preference = power# turbo boost setting (always, auto, or never)
turbo = auto# battery charging threshold
# reference: https://github.com/AdnanHodzic/auto-cpufreq/#battery-charging-thresholds
#enable_thresholds = true
#start_threshold = 20
#stop_threshold = 80

本篇内容有点乱

http://www.xdnf.cn/news/308683.html

相关文章:

  • 解决windows重启后分辨率问题
  • 2025最新出版 Microsoft Project由入门到精通
  • 雅思阅读--重点短语/句式39个
  • 小红书怎么看自己ip地址?小红书更改ip地址教学
  • UE5 脚部贴地不穿过地板方案
  • 含锡废水回收率提升技术方案
  • 37-算法打卡-栈与队列-滑动窗口最大值-leetcode(239)-第三十七天
  • ==和equals的区别 hashCode和equals的联系
  • 文章记单词 | 第65篇(六级)
  • 【JavaScript】将字符串转为base64
  • C/C++ 扩展智能提示太慢或无法解析项目
  • 使用VMware Workstation pro 17.5.1在Windows上安装Ubuntu 24.04.2的 详细步骤
  • 第一章-语言基础\3.STL
  • RHCSA Linux系统 网络管理
  • Grafana-新增用户
  • 104二叉树的最大深度
  • 标签语句分析
  • 第11次:用户注册(简要版)
  • 【大模型面试】大模型(LLMs)高频面题全面整理(★2025年5月最新版★)
  • 13前端项目----购物车修改
  • 结合Hutool 突增突降检测的算法
  • Linuxweb服务的部署及优化
  • 网站主机控制面板深度解析:cPanel、Plesk 及其他主流选择
  • AIDC智算中心建设:存储核心技术解析
  • suna直接从agent启动时,死循环问题
  • “FATAL ERROR: Reached heap limit Allocation failed” NodeJS 错误解决方案
  • URP - 深度图
  • 多模态大语言模型arxiv论文略读(六十一)
  • 码蹄集——直线切平面、圆切平面
  • postgresql 创建、移出数据保留策略