由于我的笔记本电脑(运行 Gentoo Linux 的 Acer Aspire 5750G,其内核不是最新的 2.6.39-r3(奇怪的 wLan 硬件使更新变得困难))往往运行得相当热,我试图控制通过使用 cpufreqd 服务来了解情况。 cpufrequtils 存在并且处于活动状态。 acpi -t 不返回任何内容。然而,lm 传感器已安装并且看起来很高兴:
Ulyss etc # sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +64.0 C (high = +86.0 C, crit = +100.0 C)
coretemp-isa-0002
Adapter: ISA adapter
Core 1: +64.0 C (high = +86.0 C, crit = +100.0 C)
...
传感器 -u 产量
Ulyss等#传感器-u coretemp-isa-0000 适配器:ISA适配器 核心0: temp1_输入:63.000 temp1_max:86.000 temp1_crit:100.000 temp1_crit_alarm:0.000 coretemp-isa-0002 适配器:ISA适配器 核心1: temp1_输入:63.000 temp1_max:86.000 temp1_crit:100.000 temp1_crit_alarm:0.000 ...
阅读网上的一些资料,最后一点也是最重要的
man cpufreqd.conf
我创建了/etc/sensors.d/cores.inf
芯片“coretemp-isa-0000” 标签 temp1“核心 0” 芯片“coretemp-isa-0002” 标签 temp1“核心 1” ...
并在 /etc/cpufreqd.conf 中将常规块修改为
[General]
pidfile=/var/run/cpufreqd.pid
poll_interval=2
verbosity=7 # Was at 4
enable_remote=1 # Was commented out
remote_group=root # Was commented out
[/General]
并激活
[传感器插件] Sensors_conf=/etc/sensors.d/cores.conf [/传感器插件]
并定义
[规则] name=CPU 太热 传感器=温度1:60-200 cpu_间隔=50-100 配置文件=性能低 [/规则]
完成所有这些后,我检查所有传感器读数是否超过 60 摄氏度,重新启动 cpufreqd 并检查
尤利西斯等#cpufreq-info -p 2001000 2001000 业绩
由于其他规则可能更强,这仍然可能是正确的(顺便说一句:是否有某种方法可以引入权重?也许通过重复规则中的某些行?)。
因此,我尝试直接以最详细的模式调用 cpufreqd 来获取一些信息:
cpufreqd-V7
即使指定 -f /etc/cpufreqd.conf 也不会产生任何输出。
我有预感,缺少模块可能会出现一些问题。因此:
尤利斯传感器.d # lsmod 模块大小 使用者 保险丝 56971 1 cpufreq_ondemand 5203 0 英伟达 12290458 0 TG3 104688 0 2530575 0 uvc视频 52523 0 videodev 61049 1 uvcvideo v4l2_compat_ioctl32 7103 1 视频开发
另一个预感需要内核选项
--- ACPI(高级配置和电源接口)支持 [*] 已弃用的 /proc/acpi 文件 [ ] 已弃用的电源 /proc/acpi 目录 M ACPI 4.0 功率计 通过 /sys/kernel/debug/ec 进行 EC 读/写访问 [*] 已弃用 /proc/acpi/event 支持 * AC适配器 * 电池 -*- 按钮 -*- 视频 * 扇子 [*] 码头 * 处理器 处理器聚合器 * 热区 -*- NUMA 支持 [ ] 调试语句 M PCI插槽检测驱动 -*- 容器和模块设备(实验) M智能电池系统 硬件错误设备 [ ] ACPI 平台错误接口 (APEI) [*] CPU 频率缩放 [ ] 启用 CPUfreq 调试 CPU频率转换统计 默认CPUFreq调节器(用户空间)---> *“性能”调速器 *“省电”调速器 -*- 用于用户空间频率缩放的“用户空间”调节器 M 'ondemand' cpufreq 策略调节器 *“保守”cpufreq 调节器 *** CPUFreq 处理器驱动程序 *** 处理器时钟控制接口驱动程序 * ACPI 处理器 P 状态驱动程序 AMD Opteron/Athlon64 PowerNow! 英特尔增强型 SpeedStep(已弃用) Intel Pentium 4 时钟调制 *** 共享选项 ***
目前为止的情况。现在我的问题是:你们中的任何人能否解释一下为什么 cpufreq 无法更改为较低频率?或者,同样有趣的是,我如何调试该/etc/cpufreqd.conf
文件?
答案1
我也遇到了同样的问题。我也有一台运行太热的笔记本电脑。
我认为它没有做任何事情,但我启用了 cpufreqd -V7 并看到消息被写入 /var/log/messages。
我禁用了一些未使用的规则,只使用了 3 个“太热”的节。
[Rule]
name=temp high
sensor=temp6:100-105
cpu_interval=50-100
profile=Powersave Low
[/Rule]
[Rule]
name=temp med
sensor=temp6:95-99
cpu_interval=50-100
profile=Powersave High
[/Rule]
[Rule]
name=temp low
sensor=temp6:87-94
cpu_interval=50-100
profile=Performance Low
[/Rule]
我发现的一个问题是传感器(和内核)报告从 0 到 n 的温度传感器,其中 cpufreqd 指从 1 到 (n+1) 的温度传感器