在何种情况下CPU会进入powersave模式(可能可以解决笔记本发热的问题)

如题:FydeOS在何种情况下CPU会进入powersave模式

PS:有没有可能把CPU策略的设置图形化放到 设置-设备-电源 这里,方便调整

安装好FydeOS到硬盘,发现我这个酷睿2代i3的笔记本散热捉鸡,风扇一直转。之前使用linux deepin也遇到类似问题,自觉是不是linux多是给服务器使用,所以强制风扇散热。这也是我一直没有把linux作为主力系统的原因之一。

但是后来发现,隔天开机后,刚开始风扇并没有转的很厉害,只是运行一段时间后,风扇起飞了。根据在windows下的使用经验,感觉是CPU策略导致的。因为windows默认的平衡模式,在没有负载后,自动降频,同时CPU电压也会降低,发热自然减少了。如果把windows系统设置为高性能模式,主频一直在最高,发热也会增加,风扇狂转。

根据这个思路,使用指令cat /proc/cpuinfo |grep MHz|uniq查看CPU主频,下图是调整为powersave模式并限制最大频率的结果,如果没有修改则每个逻辑核心几乎是跑在最高的频率下的

localhost / # cat /proc/cpuinfo |grep MHz|uniq
cpu MHz         : 1298.205
cpu MHz         : 930.347
cpu MHz         : 1380.764
cpu MHz         : 1406.651

通过在网上一番寻找,使用指令cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor查看CPU0的频率策略:

localhost / # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
performance

其他CPU核心可以已修改为cpu1、cpu2来查看。

看到CPU策略是performance,也就是性能模式,分析应该CPU即使没有负载也一直在最高主频下运行,发热也是自然。想到的解决方法就是修改CPU策略或者限制最大主频。在root权限下执行echo powersave > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor指令可以修改cpu0为powersave模式,这里最好一个物理核心都修改,貌似只修改一个逻辑核心是不起作用的。比如cpu0、cpu1对应一个物理核心,同时修改这两个才有作用。限制最大主频的指令:echo 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq这是把cpu0的最大主频限制在800MHz。

但是这个方法也是有缺点,就是每次重新启动后就不起作用了,需要重新调整。所以,有没有可能把CPU策略的设置图形化放到 设置-设备-电源 这里,方便调整,发现貌似目前支持的CPU策略只有performance和powersave,有没有可能在以后开放userspace, ondemand, conservative这些模式。

使用了一段时间的fydeos,感觉挺不错。开机快,不用装各种管家,系统安全,系统更新理论上比其他linux稳定,不容易挂。chrome应用多且轻量,还可以用安卓应用和linux应用。

不过使用中还是遇到几个问题,希望能解答一下:

  1. 笔记本发热问题可以通过我上面的方法缓解,虽然会有些体验上的下降…官方已经关注,想必这个问题很快会得到解决:)

  2. 可以双屏扩展,但是没法设置只显示在外接显示器上

  3. 访问chrome://flags,显示为空,没有任何feature可选,我的是 版本是4.6

  4. 安卓和linux应用都跑在容器里,访问容器里的文件成为问题。现在安卓的解决办法是安装一个文件管理器,文件管理器可以访问容器的文件和系统的Downloads文件夹。据说在flags里可以配置显示安卓文件夹的feature。系统默认的linux容器是可以访问文件的。但是新建的容器就没有这个待遇了,要手动建立sftp来访问:(

  5. 在debian的容器尝试安装snap,结果缺少squashfuse包

  6. 尝试去lxc官方拉取其他系统镜像,结果卡住…

chrome://flags要使用隐身标签页访问哦。

果然要用隐身模式才可访问(⊙ˍ⊙)flags里有个Show Android files in Files app的功能,貌似开启后就可以在文件应用里看到安卓文件夹了。

powermgnt 确实是亟待修复的一个问题,敬请期待

你好。我电脑是四代cpu,执行了相关代码 以powersave模式运行(cat 回复 是这个模式),但是依然在查看cpu频率的时候3392MHz运行,我已经限制了cpu的运行频率了,我应该怎么解决。

i7-4720hq是四核8线程,全部核心设置powersave模式可能需要修改8个核心

echo powersave > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor
echo powersave > /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor

可以把命令写到.sh文件,然后每次启动系统后用root权限执行一下就好

1 个赞

谢谢,从cpu4 就提示没有找到文件,修改后查看频率依然最高,看来问题有点顽固

能发一下写好的.sh文件,我写的报错。