PowerTOP:热点应用程序及系统优化

一:前言

对于嵌入式设备或者PC平台来说,功耗是系统的重要指标,系统设计的重要目标之一就是要尽可能地降低功耗。想要降低功耗,就要知道功耗是如何被产生的,是哪些程序经常占用更多的功耗呢?

PowerTOP 就是这样一款软件,通过在linux平台上运行它,我们就可以清楚的看到是哪些程序经常把CPU 从深层睡眠中唤醒了,剩下的就是想办法去掉这些Timer,在搭配LINUX2.6.21 中的新特性dynamic tick,就可以让CPU 在不工作的时候更好的休息了,从而减少功耗,延长电池的使用时间了。

 

二:PowerTOP 简介

众所周知,计算机运行程序会使计算机使用更多的功耗。PowerTOP 是一款Linux的工具,能帮助人们发现这些程序。而占用功耗最多的就是linux 的内核,然而在新的linux 内核版本2.6.21 下,是无滴答内核,不再有一个固定的1000HZ 的定时器滴答,所以理论上来讲将节省很多电能,因为CPU 停留在系统同空闲时间较长的低功耗模式。然而,有很多不能预料的程序会破坏这个体制,包括内核和用户空间。PowerTOP 结合各种来源的信息从内核到一个方便的屏幕,让人们可以看到他们的系统是如何做省电,哪些组件是最大的问题。

PowerTOP 有以下四个基本目标:

显示系统是如何使用各种硬件省电功能的。

显示系统中占用功耗较多的组件,阻止软件程序影响硬件省电功能。

帮助 Linux 开发人员测试他们的应用和实现最佳的应用。

提供优化建议,以实现低功耗。

下面以实际电脑上运行状态为例分析

 

三:实验平台

Vmware Workstation 8.0.2 build-591240

Ubantu Linux Version 12.04

PowerTOP 1.97

 

四:实验分析

在笔记本电脑上运行 #sudo apt-get install powertop 就可以获取最新版本的PowerTOP,但是要但是要真正实用的分析功能,还需要把 kernel 中的 debug 功能打开。

下面是在在笔记本电脑上的实验结果:

Wakeups per second

"Wakeups per second"行是另一个指标用于显示笔记本电脑在节省电源方面的好坏。这个数值越小越好。当运行一个完全的较小的桌面时,使用3 wakeups per second 就可以完成。我的笔记本电脑在这方面性能比较差 (39远大于3!)

GPU ops/second   (Operations Per Second,操作/秒)

这个显示的是图形处理器每秒操作数,由于在空闲状态下,所以为0

VFS ops/second

这个显示虚拟文件系统每秒操作数,由于在空闲状态下,所以为0

Causes for wakeups

PowerTOP 在随机的几个阶段显示是哪些资源经常唤醒CPU,在上面显示中,前三位为三个进程(process)。其次是timer唤醒时钟,还包括一些无线设备经常唤醒CPU。

 

五:总结

用户可以根据软件界面直观的判断是什么经常将cpu经常从低功耗状态唤醒,同时,新版本的powertop还会在用户界面上提供如何降低功耗的建议,通过软件的反馈,及时修正,将使支持 trickless 内核的体系结构的linux用户获得更好的体验。

 

六:参考资料

https://lesswatts.org/projects/applications-power-management/

http://packages.ubuntu.com/precise/libnl-genl-3-200-udeb

 

 

 

转载于:https://www.cnblogs.com/yuzeren48/archive/2012/12/26/PowerTOP_%e7%83%ad%e7%82%b9%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e5%8f%8a%e7%b3%bb%e7%bb%9f%e4%bc%98%e5%8c%96.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值