APP下载

调整Linux系统CPU频率

2016-03-14

网络安全和信息化 2016年6期
关键词:配置文件内核命令

引言: 现在电脑CPU耗电很大,按需调节CPU频率对普通桌面及移动设备节能有重要的意义。Linux提供的对CPU频率调节的功能对CPU性能使用受到一些限制,需要系统管理员对相关参数优化及设置来确保CPU性能最大化。本文对常见的RedHat 6、7系列及Debian Gnu/Linux 8系列中CPU频率调整工具的使用进行描述,以方便Linux用户进行该方面工作的优化。

现在电脑CPU耗电很大,按需调节CPU频率对普通桌面及移动设备节能有重要的意义。目前,多数Linux发行版都已经默认启用了这个功能,但在一些像数据库、集群系统等特别需要CPU高性能的服务器环境中,Linux提供的这种对CPU频率调节的功能对CPU性能使用受到一些限制,不利于系统性能的更好发挥。为此,需要Linux系统管理员对相关参数优化及设置来确保CPU性能最大化。

本文将针对应用中常见的RedHat 6、7系列及Debian Gnu/Linux 8系列中CPU频率调整工具的使用进行描述,以方便Linux用户进行该方面工作的优化。

在Linux中,内核的开发者定义了一套框架模型来完成CPU频率动态调整这一目的,它就是CPUFreq系统。尽管在各个Linux发行版中,前端软件稍有差异,但其最终都会通过Linux内核的CPUFreq系统来实现CPU频率动态调整的功能。这些软件都会提供如下CPU模式(governor参数):

1.ondemand

系统默认的超频模式,按需调节,内核提供的功能,不是很强大,但有效实现了动态频率调节,平时以低速方式运行,当系统负载提高时自动提高频率。以这种模式运行不会因为降频造成性能降低,同时也能节约电能和降低温度。一般官方内核默认的方式都是ondemand。

流畅度:一般,流畅。

2.interactive

交互模式,直接上最高频率,然后看CPU负荷慢慢降低,比较耗电。

流畅度:最高,极流畅。

Interactive是以CPU排程数量而调整频率,从而实现省电。

InteractiveX是以CPU负载来调整CPU频率,不会过度把频率调低。所以比Interactive反应好些,但是省电的效果一般

3.conservative

保守模式,类似于ondemand,但调整相对较缓,想省电就用他吧。Google官方内核,kang内核默认模式。

流畅度:高,流畅。

4.smartass

聪明模式,是I和C模式的升级,该模式在比interactive模式不差的响应前提下,会做到了更加省电。

流畅度:最高,流畅。

5.performance

性能模式,只有最高频率,从来不考虑消耗的电量,性能没的说,但是耗电量……

流畅度:流畅度高于interactive。

6.powersave

省电模式,通常以最低频率运行。

流畅度:极低。

7.userspace

用户自定义模式,系统将变频策略的决策权交给了用户态应用程序,并提供了相应的接口供用户态应用程序调节CPU运行频率使用。也就是长期以来都在用的那个模式。可以通过手动编辑配置文件进行配置。

流畅度:根据设置而定。

8.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。之后我们就可以通过修改相应系统所在配置文件并重启相关服务,使CPU按照我们的要求配置参数进行运行。

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-gondemand”为CPUPOWER_STOP_OPTS=”frequencyset-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)。

猜你喜欢

配置文件内核命令
多内核操作系统综述①
只听主人的命令
强化『高新』内核 打造农业『硅谷』
活化非遗文化 承启设计内核
互不干涉混用Chromium Edge
Linux内核mmap保护机制研究
基于Zookeeper的配置管理中心设计与实现
忘记ESXi主机root密码怎么办
移防命令下达后
为View桌面准备父虚拟机