【已解决】求内核大神帮忙,linux无法对cpu的频率调整!

内核编译和嵌入式产品的设计与开发
回复
头像
langyxxl
帖子: 443
注册时间: 2012-01-17 22:17

【已解决】求内核大神帮忙,linux无法对cpu的频率调整!

#1

帖子 langyxxl » 2016-09-18 11:58

cpufreq1.png
一开始我的cpu是1600MHz,这个时候通过turbostat工具(该工具直接读取cpu寄存器获得工作频率)看,可以看到cpu确实工作在1600MHz
cpufreq2.png
之后我更改cpu频率为3.2g,可以看到内核确实执行了(lscpu中的输出为3200MHz),但是turbostat从cpu寄存器中读取的真实工作频率却不是3200MHz,只有2200MHz左右

有哪位大神知道是为什么吗,不会是我的cpu坏了吧
上次由 langyxxl 在 2016-09-18 18:56,总共编辑 1 次。
头像
langyxxl
帖子: 443
注册时间: 2012-01-17 22:17

Re: 求内核大神帮忙,linux无法对cpu的频率调整!

#2

帖子 langyxxl » 2016-09-18 14:57

查了半天资料,在kernel的intel_pstate介绍中看到了,原来intel的cpu频率是不支持软件指定的。

https://www.kernel.org/doc/Documentatio ... pstate.txt
cpufreq3.png
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

Re: 【已解决】求内核大神帮忙,linux无法对cpu的频率调整!

#3

帖子 cnkilior » 2016-12-11 19:59

你可以设置max/min,基本等于是频率了。

P_state driver有一个内核命令行参数,可以禁用P_state。这样acpi_freq 驱动就上来了。
头像
cnkilior
论坛版主
帖子: 4984
注册时间: 2007-08-05 17:40

Re: 【已解决】求内核大神帮忙,linux无法对cpu的频率调整!

#4

帖子 cnkilior » 2016-12-11 20:02

intel_pstate=disable加到内核参数。
回复