2017-03-23 80 views
0

没有人有一个想法,为什么psutil的cpu_freq()返回空?我在Debian linux 8.7.1上运行python 3.4。我尝试过和没有提升权利,并得到相同的结果。Python3 psutils

Python 3.4.2 (default, Oct 8 2014, 10:45:20) 
[GCC 4.9.1] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import psutil 
>>> psutil.cpu_freq() 
[] 
>>> 

其他CPU信息(如cpu_stats()正确返回。 非常感谢!

+0

系统中是否存在'/ sys/devices/system/cpu/cpufreq'路径?如果是这样,那里有'政策*'目录'缩放_ * _频率'文件? –

+0

在我的Debian服务器上,没有'policy *'目录,所以没有频率信息可用于psutil。 –

回答

0

这是psutil一个bug,请参阅issue #981在psutil项目问题追踪

的CPU频率信息的位置已经在最近的内核中从/sys/devices/system/cpu/cpufreq/platform*目录移动到/sys/devices/system/cpu/cpu*/cpufreq目录,并且该项目尚未遵循。

新的5.2.1 release包括the fix for this

0

这是一个只在psutil中修复的bug。版本:5.2.1。


与python版本或代码无关。

尝试从Linux系统 上的psutil(latest-5.1.3)导入cpu_freq失败。该功能没有得到界定,因为没有 /sys/devices/system/cpu/cpufreq系统上(按照本线 https://github.com/giampaolo/psutil/blob/76d1fb61c14d286aa645f154f4a2b7a7bae8a828/psutil/_pslinux.py#L639

有,但是,/sys/devices/system/cpu/cpu0/cpufreq(和CPU1,CPU2 ..)

在Ubuntu 16.04(我的机器至少),有 /sys/devices/system/cpu/cpufreq但它是空的。因此,cpu_freq() 只是返回一个空列表,就像你的情况一样。

0

这是我刚刚在psutil中修复的一个错误。

+0

什么时候将5.2.2发布到PyPI? –

+0

这是5.2.1,它已经存在 –

+0

啊,你也标记了5.2.2 * *,在它的外观上,这是扔给我的理智的修订:https://github.com/giampaolo/psutil/发布 –