目录

EIST(智能降频技术)

EIST 能够根据不同的 OS(操作系统)工作量自动调节 CPU 的电压和频率,以减少耗电量和发热量。它的引入,大大节省了 CPU 在低工作量的能耗,受到了极大的欢迎,从此每一代 Intel CPU 上都有了它的身影。

EIST 的工作原理:首先我们要明白,OS 主导了在整个 EIST 在各个频率的切换,只有它最了解工作量。同时 EIST 要工作,硬件,固件和 OS 三方缺一不可。我们也就从这三个方面介绍它的工作原理。

硬件

Intel CPU 是 EIST 可以工作的硬件基础。它通过一系列寄存器保证固件和 OS 可以得到足够的信息,有足够的手段控制 EIST 的工作模式。

固件

说到固件,不得不提到 ACPI(Advanced Configuration and Power Interface,高级配置与电源接口),它是固件和 OS 的电源管理接口和模型。

其中 ACPI 规范定义了 CPU 的工作状态,包含:

  • S-States(Sleeping):系统睡眠状态
  • C-States(CPU Power):CPU 电源状态,更改 CPU 供电功率。是 ACPI 定义的 CPU 工作在 G0 时的 Power states,这些状态包括 C0,C1,C2,C3…Cn。其中 C0 被称为 Active 状态,也只有 C0 的时候 CPU 才会执行指令;其余的状态则被称为 Sleeping,这时 CPU 是不执行指令的,也因而会节省更多的功耗。系统在运行时会根据 Loading 状况在各个 C-state 之间切换,以此来降低功耗,而 EIST 各个工作频率是通过在 C0 下的各种 P-states 表现出来的。

  • P-States(CPU Performance):CPU 性能状态,更改 CPU 主频率
  • T-states(CPU Throttling):CPU 节能状态,更改单位时间内 CPU Clock On 的比例
  • G-States(全局状态)
  • D-States(设备状态)

操作系统

OS 知道现在的工作量,由它来决定是不是要在各个 P-states 之间迁移。Linux 对 EIST 的支持始于 Linux Kernel 2.6.0,由 cpufreq 工具提供支持。cpufreq 工具主要由两个部分组成:调控器 + 守护程序。

可以使用 i7z 小工具(同时向下兼容 i5、i3 处理器)来查看线上服务器的 CPU 工作模式。e.g.

服务器电源管理(Power Management States)的更多相关文章

  1. Linux电源管理(4)-Power Manager Interface【转】

    本文转载自:http://www.wowotech.net/pm_subsystem/pm_interface.html 1. 前言 Linux电源管理中,相当多的部分是在处理Hibernate.Su ...

  2. Linux电源管理-Linux regulator framework概述

    前言 1.  什么是regulator?      regulator翻译为"调节器",分为voltage regulator(电压调节器)和current(电流调节器).一般电源 ...

  3. Power Management开发的一般流程

    本文作为一个提纲挈领的介绍性文档,后面会以此展开,逐渐丰富. 开发流程 针对一个PM feature进行开发,设计模型是第一步.模型设计好之后,还要保留参数接口,可以基于这些参数针对特殊个体进行优化. ...

  4. [专业名词·硬件] 2、DC\DC、LDO电源稳压基本常识(包含基本原理、高效率模块设计、常见问题、基于nRF51822电源管理模块分析等)·长文

    综述先看这里 第一节的1.1简单介绍了DC/DC是什么: 第二节是关于DC/DC的常见的疑问答疑,非常实用: 第三节是针对nRF51822这款芯片电源管理部分的DC/DC.LDO.1.8的详细分析,对 ...

  5. Linux电源管理(11)_Runtime PM之功能描述

    转自:http://www.wowotech.net/pm_subsystem/rpm_overview.html 1. 前言 终于可以写Runtime PM(后面简称RPM)了,说实话,蜗蜗有点小激 ...

  6. exynos 4412 电源管理芯片PMIC 的配置及使用方法

    /** ****************************************************************************** * @author    Maox ...

  7. linux电源管理系列(一)

    本系列将逐步介绍linux电源管理相关的知识,涉及到常见电源管理机制.linux电源管理机制.linux驱动中有关电源管理的相关接口.内核文档中关于Linux电源管理架构文档的分析.以下将以此来介绍相 ...

  8. linux驱动程序之电源管理之标准linux休眠与唤醒机制分析(一)

    1. Based on linux2.6.32,  only for mem(SDR) 2. 有兴趣请先参考阅读: 电源管理方案APM和ACPI比较.doc Linux系统的休眠与唤醒简介.doc 3 ...

  9. Linux下Power Management开发总结

    本文作为一个提纲挈领的介绍性文档,后面会以此展开,逐渐丰富. 1. 前言 在 <开发流程>中介绍了PM开发的一般流程,重点是好的模型.简单有效的接口参数.可量化的测试环境以及可独性强的输出 ...

  10. Linux内核电源管理综述

    资料:http://blog.csdn.net/bingqingsuimeng/article/category/1228414http://os.chinaunix.net/a2006/0519/1 ...

随机推荐

  1. #dp#nssl 1478 题

    分析 设\(f[i]\)表示第\(i\)个是否幸存,\(dp[i][j]\)表示若第\(i\)个幸存,第\(j\)个是否必死 倒序枚举人,如果存在\(dp[i][a[x]],dp[i][b[x]]\) ...

  2. #线段树,离散#nssl 1476 联

    分析 由于下标过大,考虑离散,不仅仅是区间左右端点 假设只有一个区间从1到\(x\),那么修改后答案应该是\(x+1\) 所以说还要记录右端点+1的位置,你以为这就能A了吗 为了避免标记被覆盖,无论是 ...

  3. #SG函数#HDU 1848 Fibonacci again and again

    题目 分析 可取状态只能是斐波那契数,求出SG函数 然后判断三个数sg函数异或和不为0先手必胜 代码 #include <cstdio> #include <cctype> # ...

  4. #线性基#LOJ 114 k大异或和

    题目 分析 建出线性基后,但是要求最小所以要重建线性基让大的尽量小, 然后第k小就是拼凑 代码 #include <cstdio> #include <cctype> #inc ...

  5. 【直播回顾】参与ArkUI,共建OpenHarmony繁荣生态

    5月31日晚上19点,战"码"先锋第三期直播 <参与ArkUI,共建OpenHarmony繁荣生态> ,在OpenHarmony社群内成功举行.   本期课程,由华为终 ...

  6. HarmonyOS实践之应用状态变量共享

      平时在开发的过程中,我们会在应用中共享数据,在不同的页面间共享信息.虽然常用的共享信息,也可以通过不同页面中组件间信息共享的方式,但有时使用应用级别的状态管理会让开发工作变得简单. 根据不同的使用 ...

  7. Spring Cloud 核心组件之Spring Cloud Zuul:API网关服务

    Spring Cloud Zuul:API网关服务 SpringCloud学习教程 SpringCloud API网关 Spring Cloud Zuul 是Spring Cloud Netflix ...

  8. SQLite总结

    废话不多说: 优点,高并发读快速度读取超越所有主流大中型数据库 缺点,缺少同步机制,读写不能同时,且同时只能有一个写入线程 用途,硬盘式缓存 另附一SQLite工具类: import java.io. ...

  9. vue+scss混合(mixins)使用(css代码的vuex(公共管理))

    scss混合(mixins)使用 例一.使用混合mixins中的变量来定义一个n行文本溢出隐藏的公用样式. 1.创建mixins.scss文件 //文本n行溢出隐藏 @mixin ellipsisBa ...

  10. 【Oracle】对一个已经拥有重复数据的表的列设置唯一性约束

    对一个已经拥有重复数据的表的列设置唯一性约束 在这种情况下创建唯一性约束,可以发现会报错,通常为由于存在重复的键值,无法生效唯一性约束 最简单的方法,就是删除重复的记录,这样就可以按照正常流程,创建唯 ...