Linux系统CPU频率调整工具使用
现在的CPU耗电很大,按需调节CPU频率对普通桌面及移动设备节能有重要的意义,目前多数Linux发行版都已经默认启用了这个功能,但在一些像数据库,集群系统等特别需要CPU高性能的服务器环境中,Linux提供的这种对CPU频率调节的功能对CPU性能使用受到一些限制,不利于系统性能的更好发挥。
为此需要Linux系统管理员进行必要相关参数优化及设置来确保CPU性能最大化。本文将针对应用中常见的RedHat6、7系列及Debian Gnu/Linux 8系列中CPU频率调整工具的使用进行描述,以方便Linux用户进行该方面工作的优化。
在Linux中,内核的开发者定义了一套框架模型来完成CPU频率动态调整这一目的,它就是CPU Freq系统。尽管在各个Linux发行版中,前端软件稍有差异,但其最终都会通过Linux内核的CPU Freq系统来实现CPU频率动态调整的功能。这些软件都会提供如下CPU模式(governor参数):
ondemand:系统默认的超频模式,按需调节,内核提供的功能,不是很强大,但有效实现了动态频率调节,平时以低速方式运行,当系统负载提高时候自动提高频率。以这种模式运行不会因为降频造成性能降低,同时也能节约电能和降低温度。一般官方内核默认的方式都是ondemand。
interactive:交互模式,直接上最高频率,然后看CPU负荷慢慢降低,比较耗电。Interactive 是以 CPU 排程数量而调整频率,从而实现省电。InteractiveX 是以 CPU 负载来调整 CPU 频率,不会过度把频率调低。所以比 Interactive 反应好些,但是省电的效果一般。
conservative:保守模式,类似于ondemand,但调整相对较缓,想省电就用他吧。Google官方内核,kang内核默认模式。
smartass:聪明模式,是I和C模式的升级,该模式在比interactive 模式不差的响应的前提下会做到了更加省电。
performance:性能模式!只有最高频率,从来不考虑消耗的电量,性能没得说,但是耗电量。
powersave 省电模式,通常以最低频率运行。
userspace:用户自定义模式,系统将变频策略的决策权交给了用户态应用程序,并提供了相应的接口供用户态应用程序调节CPU 运行频率使用。也就是长期以来都在用的那个模式。可以通过手动编辑配置文件进行配置
Hotplug:类似于ondemand, 但是cpu会在关屏下尝试关掉一个cpu,并且带有deep sleep,比较省电。
在进行CPU频率优化之前,我们首先需要使用命令:
lsmod | grep "acpi_cpufreq"
查看内核是否加载了acpi_cpufreq模块,如果加载了此模块,按照一般情况发行版都会将CPU设置为 “ondemand”模式。
之后可以通过命令:
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
来进一步确认CPU节能模式,但此时用户无法进行修改,需要进行修改必须使用命令安装cpufreq管理软件,在Debian Gnu/Linux下使用如下命令:
apt-get install cpufrequtils
在RedHat6一下版本中使用如下命令:
yum install cpuspeed
在RedHat7系列版本中使用如下命令:
yum install kernel-tools
之后我们就可以通过修改相应系统所在配置文件,Debian Gnu/Linux 8、RedHat6一下版本、RedHat7系列版本cpufreq管理软件配置文件分别为:
/etc/init.d/cpufrequtils、/etc/sysconfig/cpuspeed、/setc/sysconfig/cpupower
修改Debian Gnu/Linux 8配置文件中:
GOVERNOR="ondemand"
为:
GOVERNOR="performance"
RedHat6一下版本配置文件中:
GOVERNOR为GOVERNOR=performance
RedHat7系列版本配置文件中:
CPUPOWER_STOP_OPTS=”frequency-set -g ondemand”
为:
CPUPOWER_STOP_OPTS=”frequency-set -g performance”
在Debian Gnu/Linux 8、RedHat6一下版本、RedHat7系列版本中分别执行:
/etc/init.d/cpufrequtils restart、/etc/init.d/cpuspeed restart、systemctl restart cpupower.service
命令即可重启相关cpufreq管理软件。
从 kernel 3.9 开始,名为 pstate 的新的功率驱动程序将会在以下的驱动程序之前自动为现代的 Intel CPU 启用。该驱动会优先于其他的驱动程序,因为它是内置驱动,而不是作为一个模块来加载。
该驱动自动作用于 Sandy Bridge 和 Ivy Bridge 这两个类型的 CPU,在该模式下CPU只能被设置成performance或者powersave模式。如果您在使用这个驱动的时候遇到问题,建议您在 Grub 的内核参数中对其禁用(即修改 /etc/default/grub 文件,在 GRUB_CMDLINE_LINUX_DEFAULT= 后添加 intel_pstate=disable)
Linux系统CPU频率调整工具使用的更多相关文章
- Linux(debian7)操作基础(四)之CPU频率调整 Linux系统CPU频率调整工具使用
在Linux中,内核的开发者定义了一套框架模型来完成CPU频率动态调整这一目的,它就是CPU Freq系统.如下为CPU的几种模式(governor参数): ondemand:系统默认的超频模式,按需 ...
- Linux系统cpu 100%修复案例
Linux系统cpu 100%修复案例 阿里云技术支持团队:完颜镇江 案例背景: Linux主机连续三天CPU% 处理思路: 1. 登录服务器查看/var/log/messages+/var/lo ...
- linux系统CPU,内存,磁盘,网络流量监控脚本
前序 1,#cat /proc/stat/ 信息包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累积到当前时刻 2,#vmstat –s 或者#vmstat 虚拟内存统计 3, #cat ...
- Linux系统CPU相关信息查询
Linux系统CPU相关信息查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.lscpu常用参数介绍 1>.查看帮助信息 [root@node105 ~]# lscpu ...
- C/C++获取Linux系统CPU和内存及硬盘使用情况
需求分析: 不使用Top df free 等命令,利用C/C++获取Linux系统CPU和内存及硬盘使用情况 实现: //通过获取/proc/stat (CPU)和/proc/meminfo(内存 ...
- Java获取Linux系统cpu使用率
原文:http://www.open-open.com/code/view/1426152165201 import java.io.BufferedReader; import java.io.Fi ...
- 云服务器 ECS Linux 系统 CPU 占用率较高问题排查思路
https://help.aliyun.com/knowledge_detail/41225.html?spm=5176.7841174.2.2.ifP9Sc 注意:本文相关配置及说明已在 CentO ...
- 关于linux系统CPU篇--->不容易发现的占用CPU较高进程
1.系统的CPU使用率,不仅包括进程用户态和内核态的运行,还包括中断处理,等待IO以及内核线程等等.所以,当你发现系统的CPU使用率很高的时候,不一定能找到相对应的高CPU使用率的进程 2.案例分析, ...
- 关于linux系统CPU篇--->CPU使用率升高
1.CPU使用率为单位时间内CPU使用情况的统计,以百分比的方式展示. LINUX作为一个多任务操作系统,将每个CPU的时间划分为很短的时间片,再通过调度器轮流分配给各个任务使用,因此造成多任务同时运 ...
随机推荐
- 《Hadoop应用开发技术详解》
<Hadoop应用开发技术详解> 基本信息 作者: 刘刚 丛书名: 大数据技术丛书 出版社:机械工业出版社 ISBN:9787111452447 上架时间:2014-1-10 出版日期:2 ...
- Js组件layer的使用
作为独立组件使用 layer 引入好layer.js后,直接用即可 <script src="layer.js"></script> <script& ...
- python的异常机制使用技巧
1.当你开发的接口被其他应用调用时,响应要及时,但是有些要触发的操作很耗时间. 比如下面需要通过被调用触发的函数create_job_1().但是这个函数执行会比较消耗时间 2.于是,我们可以利用异常 ...
- Qt 串口类QSerialPort 使用笔记
Qt 串口类QSerialPort 使用笔记 虽然现在大多数的家用PC机上已经不提供RS232接口了.但是由于RS232串口操作简单.通讯可靠,在工业领域中仍然有大量的应用.Qt以前的版本中,没有提供 ...
- SQL IN
here are some additional clause in the SQL language that can be used to simplify queries by decrease ...
- 转:Android应用开发性能优化完全分析
转自:http://blog.csdn.net/yanbober/article/details/48394201 1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜 ...
- APNS 生成证书 p12 或者 PEM
.net环境下须要p12文件,下面是生成p12过程 1.$ openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem ...
- IIS 之 功能详解
IIS (Internet Information Services)信息服务管理器,本文以Windows10环境下的IIS为例,主要包含:FTP 服务器.Web 管理工具.万维网服务三大部分,如下表 ...
- Linux系统攻略 用UUID在Fstab中挂载分区
Fstab 文件大家都很熟悉,Linux 在启动的时候通过 fstab 中的信息挂载各个分区,一个典型的分区条目就像这样: /dev/sdb5 /mnt/usb vfat utf8,umask=0 0 ...
- ImageResizer for .net 图片处理强大类库
http://imageresizing.net / 官网 http://imageresizing.net/docs/basics (文档) 变换尺寸,加边框,覆盖文本,和旋转和分割图象