LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1249|回复: 6

为什么我安装并设置好cpufreqd以后CPU不是最高就是最低频率运行?

[复制链接]
发表于 2007-2-1 21:22:30 | 显示全部楼层 |阅读模式
我的内核是2.6.18.4,笔记本是T42
内核在编译的时候,加入了对cpu freq控制的apci下的模块。

使用cpufreq-info已经可以手工控制CPU的频率。但是在配置cpufreqd.conf时出了一些问题。
cpu要不就是在1600000kHz,要不就是600000kHz。
我的cpufreqd.conf文件内容

# this is a comment
#
# you need: 1 [General] section,
#           1 or more [Profile] sections
#                  1 or more [Rule] sections
#
# a section ends at the first blank line
#
# [Rule] sample:
#           [Rule]
#           name=sample_rule
#           ac=on                    # (on/off)
#           battery_interval=0-10
#           cpu_interval=30-60
#           programs=xine,mplayer
#           profile=sample_profile
#
# [Profile] sample:
#           [Profile]
#           name=sample_profile
#           minfreq=10%
#           maxfreq=100%
#           policy=performance
#
# see CPUFREQD.CONF(5) manpage for a complete reference

[General]
pidfile=/var/run/cpufreqd.pid
poll_interval=2
pm_type=acpi #(acpi, apm or pmu)
# Uncomment the following line to enable ACPI workaround (see cpufreqd.conf(5))
# acpi_workaround=1
verbosity=4 #(if you want a minimal logging set to 5)

[Profile]
name=highest
minfreq=1600000kHz
maxfreq=1600000kHz
policy=performance

[Profile]
name=hi_boost
minfreq=600000kHz
maxfreq=1600000kHz
policy=powersave   #我希望是CPU根据使用需要,动态调整频率,但是CPU只运行在600000kHz但是如果这里设置为performance,那么CPU就一直以最高的1600000kHz运行。

[Profile]
name=medium_boost
minfreq=600000kHz
maxfreq=1200000kHz
policy=powersave

[Profile]
name=lo_boost
minfreq=600000kHz
maxfreq=800000kHz
policy=powersave

[Profile]
name=lo_power
minfreq=600000kHz
maxfreq=600000kHz
policy=powersave

# conservative mode when not AC
[Rule]
name=conservative
ac=off                   # (on/off)
battery_interval=0-100   
cpu_interval=0-100
profile=lo_boost

# need some power
[Rule]
name=lo_cpu_boost
ac=off                   # (on/off)
battery_interval=0-100
cpu_interval=0-100
profile=medium_boost

# need big power (not if battery very low)
[Rule]
name=hi_cpu_boost
ac=off                   # (on/off)
battery_interval=0-100
cpu_interval=0-100
profile=medium_boost

# full power when AC
[Rule]
name=AC_on
ac=on                   # (on/off)
battery_interval=0-100
cpu_interval=0-100
profile=hi_boost

# full power when compile
# this is the last rule and takes less
# precedence with respect to the others
[Rule]
name=Compile
ac=on                   # (on/off)
battery_interval=0-100
programs=gcc,g++,cc1,cc1plus,make
cpu_interval=0-100
profile=highest   #这项功能倒是可以,只要一编译程序,CPU立马以最高频率运行。

模块出列acpi加载的ac,battery,fan等
我还手工在modules文件中添加了
speedstep-centrino
cpufreq_ondemand
cpufreq_powersave
cpufreq_performance

哪位同志可以找出问题所在?
发表于 2007-2-1 21:35:16 | 显示全部楼层
policy=powersave

你的policy怎么不是powersave就是performance呢?

用ondemand或者conservative
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-1 21:50:46 | 显示全部楼层
主要是看可man文件中,关于cpufreqd.conf只有powersave就是performance,所以没有想到其他的。

问题解决,谢谢提醒。
回复 支持 反对

使用道具 举报

发表于 2007-2-2 13:20:27 | 显示全部楼层
赛扬cpu可以用这个降频吗?
回复 支持 反对

使用道具 举报

发表于 2007-2-2 13:20:54 | 显示全部楼层
赛扬cpu可以用这个降频吗?
回复 支持 反对

使用道具 举报

发表于 2007-2-2 13:28:17 | 显示全部楼层
传说 赛扬 不能降频,只能超频……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-2 22:34:20 | 显示全部楼层
CPU要支持speedstep才能降频
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表