zoukankan      html  css  js  c++  java
  • 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参数):

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

    2. interactive:交互模式,直接上最高频率,然后看CPU负荷慢慢降低,比较耗电。Interactive 是以 CPU 排程数量而调整频率,从而实现省电。InteractiveX 是以 CPU 负载来调整 CPU 频率,不会过度把频率调低。所以比 Interactive 反应好些,但是省电的效果一般。

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

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

    5. performance:性能模式!只有最高频率,从来不考虑消耗的电量,性能没得说,但是耗电量。

    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

    之后我们就可以通过修改相应系统所在配置文件,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)

  • 相关阅读:
    Leetcode Unique Binary Search Trees
    Leetcode Decode Ways
    Leetcode Range Sum Query 2D
    Leetcode Range Sum Query
    Leetcode Swap Nodes in Pairs
    Leetcode Rotate Image
    Leetcode Game of Life
    Leetcode Set Matrix Zeroes
    Leetcode Linked List Cycle II
    CF1321A
  • 原文地址:https://www.cnblogs.com/276815076/p/5434295.html
Copyright © 2011-2022 走看看