CPU工作状态的知识介绍
·应用程序和驱动直接控制了APM驱动
·各个配件的功耗由相应的驱动来管理
·CPU等硬件的功耗由APM BIOS来管理
·电源管理状态比较简单,由APM来管理
·应用程序不负责功耗管理
·配件通过ACPI界面来管理功耗
·ACPI更抽象,因此要把操作系统和硬件分开管理
·电源管理状态更复杂,因此由操作系统来处理。
|
ACPI电源管理状态
|
·用户可见
·分4个状态:G0, G1, G2, G3
·全局状态G1(不含S5)的睡眠状态
·分5个状态:S1,S2,S3,S4,S5
·用户不可见
·只要有一个配置显示为“on”(启动)状态,另一个则显示为“off”(关闭)状态
·分4个状态:D0,D1,D2,D3
·也叫做CPU睡眠状态
·在全局状态G0中
·分5个状态:C0,C1,C2,C3,C4
·将来会有C6状态(Penryn)
·电压和时钟频率由工作量决定
·P-state状态总量符合CUP/设备规格
·例如,CPU倍频越高,P-states就越高
·当CPU温度超过极限时,监控系统会降低CPU的性能
·在TM1中,功过改变周期来降低CPU性能
·在TM2种,通过改变时钟频率和核心电压(P-state)来降低CPU性能
|
全局状态(G-States)
|
·在这一状态下可运行应用程序
·整个计算机系统都可以运行,但外设、CPU都可动态改变各自的功耗。例如,在听音乐的时候就会把显示器关闭
·笔记本电脑在运行最大化节电模式时,CPU会在某一时间内
·是所有G状态下功耗最高的
·例如:如果只是上网或者聊天,CPU将以最低的时钟频率运行,同时关闭CD-ROM光驱等,以达到节电的目的。
·在G1状态下无法运行应用程序。计算机呈“关闭”状态。
·不用重新启动,操作系统会切换到正常状态(G0)。
·计算机的大部分内容都会保存在RAM内存或硬盘中。
·唤醒延迟(从G1切换到G0)有很多种,这取决于G1状态下的S-State选择。
·功耗很小,可能降低至几瓦(由S-State决定)。
·例如:在Windows XP系统中会切换到“待机”或“休眠”模式。
·不可运行应用程序和操作系统(保留在G2状态中)。
·除了主要的电源供电单元,基本上会关闭整个系统。
·功耗约等于零
·需重启系统,唤醒延迟时间比较长
·例如,在Windows XP系统中选择“关闭计算机”,但总电源并没有关闭。
·通过切断总电源来彻底关闭计算机
·使用笔记本电源,只有实时时钟频率
·不考虑电池,功耗为零
·切换到工作状态的时间比较长
|
全局状态
|
运行程序
|
唤醒延迟
|
功耗
|
重启系统
|
|
G0
|
可以
|
不可以
|
中到大
|
不需
|
|
G1
|
不可以
|
短至中
|
小
|
不需
|
|
G2
|
不可以
|
长时间
|
接近零
|
需要
|
|
G3
|
不可以
|
最长时间
|
仅有电池
|
需要
|
|
睡眠状态(S-States)
|
2. 不执行应用程序(睡着了嘛)
3. 部分配件处于睡眠状态,方便唤醒
4. 系统被唤醒后,计算机会继续执行
·CPU输入频率被终止,缓存无效
·系统内存进入“Self-refreshing(自我更新)”模式
·除实时频率外,所有系统频率被关闭
·功耗比G0工作状态下更低
·一般需2秒切换到G0工作状态
·例如:如果不支持S3状态,就在Windows XP系统下进入“待机”模式
·与S1状态相似——除了CPU功耗状态
·在S2中,CPU和缓存被关闭
·S2状态中的唤醒延迟比S1长,但更省电
·除了RAM,CPU、缓存、芯片组、外设均被关闭
·需要调用内存的设备仍然运行
·RAM转入低功耗、自我更新模式
·只有RAM与板载配置的功耗
·唤醒延迟为5-6秒
·例如:如果硬件支持S3状态,在Windows XP系统中进入“待机”模式
·包括RAM在内的所有部件均被关闭
·只保留平台设置,其他部分设置被保存在硬盘的特殊位置中
·成功切换至S4平台后,系统会关闭
·因为几乎所有的程序和配置都已经停止运行,因此功耗<3W
·唤醒计算机时需要再次进入“BIOS Boot Sequence”
·不需重启系统,计算机会继续执行
·例如:在Windows XP系统下的“睡眠”模式
|
睡眠状态
|
唤醒延迟
|
功耗
|
BIOS重启
|
系统重启
|
CPU
|
缓存
|
芯片组
|
RAM
|
|
S0(GO)
|
无
|
大
|
不需
|
不需
|
开启
|
开启
|
开启
|
开启
|
|
S1(G1)
|
2-3秒
|
中
|
不需
|
不需
|
无频率
|
无效
|
无频率
|
自动更新
|
|
S2(G1)
|
3-4秒
|
中至低
|
不需
|
不需
|
关闭
|
关闭
|
无频率
|
自动更新
|
|
S3(G1)
|
5-6秒
|
低
|
不需
|
不需
|
关闭
|
关闭
|
关闭
|
低功耗
|
|
S4(G1)
|
20-30秒
|
非常低
|
需要
|
需要
|
关闭
|
关闭
|
关闭
|
自动更新
|
|
S5(G2)
|
> 30秒
|
接近零
|
需要
|
需要
|
关闭
|
关闭
|
关闭
|
关闭
|
·在此状态下,计算机在全功耗和全功能下运行
·例如:可以使用DVD-ROM光驱
·功耗比D0状态下低
·例如:在不使用的情况下会自动关闭DVD-ROM光驱,但驱动仍在运行
·与D1相似,但电压更低
·在此状态下更节能,不过从D2状态唤醒的时间更长
·此状态下,所有设备均被关闭
·可最大限度节能
·唤醒时间是所有D状态下最慢的
|
设备状态
|
功耗
|
唤醒延迟
|
驱动监控
|
驱动控制器
|
界面内容
|
|
D0
|
100%
|
0
|
开启
|
功能性
|
保存
|
|
D1
|
80%
|
5秒
|
关闭
|
功能性
|
保存
|
|
D2
|
待定
|
待定
|
待定
|
待定
|
待定
|
|
D3
|
10%
|
6-7秒
|
关闭
|
非功能性
|
不保存
|
|
设备状态
|
唤醒延迟
|
显示器
|
DPMS
|
控制内容
|
内存内容
|
|
D0
|
0
|
开启
|
开启
|
保存
|
保存
|
|
D1
|
1秒
|
关闭
|
关闭
|
保存
|
保存
|
|
D2
|
5秒
|
关闭
|
开启
|
丢失
|
丢失
|
|
D3
|
>6秒
|
关闭
|
关闭
|
丢失
|
丢失
|
·这是CPU最大工作状态,在此状态下可以接收指令和处理数据
·所有现代处理器必须支持这一功耗状态
·可以通过执行汇编指令“HLT(挂起)”进入这一状态
·唤醒时间超快!(快到只需10纳秒!)
·可以节省70%的CPU功耗
·所有现代处理器都必须支持这一功耗状态
·处理器时钟频率和I/O缓冲被停止
·换言之,处理器执行引擎和I/0缓冲已经没有时钟频率
·在C2状态下也可以节约70%的CPU和平台能耗
·从C2切换到C0状态需要100纳秒以上
·总线频率和PLL均被锁定
·在多核心系统下,缓存无效
·在单核心系统下,内存被关闭,但缓存仍有效
·可以节省70%的CPU功耗,但平台功耗比C2状态下大一些
·唤醒时间需要50微妙
·二级缓存的数据被减为零
·唤醒时间超过200微妙
·这是Penryn处理器中新增的功耗管理模式
·二级缓存减至零后,CPU的核心电压更低
·不保存CPU context
·功耗未知,应该接近零
·唤醒时间未知
|
电源状态
|
执行
|
唤醒时间
|
CPU功耗
|
平台
|
核心电压
|
缓存收缩
|
内容丢失
|
|
C0
|
是
|
0
|
大
|
正常
|
正常
|
否
|
否
|
|
C1
|
否
|
10ns
|
30%
|
正常
|
正常
|
否
|
否
|
|
C2
|
否
|
100ns
|
30%
|
无I/O缓冲
|
正常
|
否
|
否
|
|
C3
|
否
|
50000ns
|
30%
|
I/O,无监控
|
正常
|
否
|
否
|
|
C4
|
否
|
160000ns
|
2%
|
I/0,无监控
|
C4_VID
|
是
|
否
|
|
C5
|
否
|
200000ns
|
待定
|
待定
|
C4_VID
|
L2=0KB
|
否
|
|
C6
|
否
|
待定
|
待定
|
待定
|
C6_VID
|
L2=0KB
|
是
|
P1,P2,P3……. :P1 > P2 > P3等等
Pn:能耗最小,P-State最大化
|
P-States
|
倍频
|
主频
|
电压
|
加载
|
|
P0
|
10x
|
2.67GHz
|
1.2875V
|
71-80%
|
|
P1
|
9x
|
2.40GHz
|
1.2500V
|
51-70%
|
|
P2
|
8x
|
2.13GHz
|
1.2250V
|
31-50%
|
|
P3
|
7x
|
1.87GHz
|
1.2000V
|
11-30%
|
|
P4
|
6x
|
1.60GHz
|
1.1750V
|
0-10%
|
|
温度监控1
(Thermal Monitor1, TM1)
|
超过温度极限时,TM1将改变频率周期以降低CPU功耗。在TM1状态时,用户会觉得程序运行不稳定。 Core1进入TM1状态时,Core2仍在正常状态下运行。 |
|
温度监控2
(Thermal Monitor2, TM2)
|
超过温度极限时,TM2将改变时钟频率与核心电压以降低CPU功耗。所有核心都会同时切入TM2状态。程序运行平稳。只有CPU支持TM2状态。
|
|
扩展温度监控
(Extended Thermal Monitor, ETTM)
|
在热度环境非常糟糕的情况下,TM1会突然切入TM2状态以降低CPU功耗。
|
CPU工作状态的知识介绍的更多相关文章
- 「MoreThanJava」一文了解二进制和CPU工作原理
「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...
- [转] - Linux网络编程 -- 网络知识介绍
(一)Linux网络编程--网络知识介绍 Linux网络编程--网络知识介绍客户端和服务端 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 客户 ...
- (转)计算机原理学习(1)-- 冯诺依曼体系和CPU工作原理
原文:https://blog.csdn.net/cc_net/article/details/10419645 对于我们80后来说,最早接触计算机应该是在95年左右,那个时候最流行的一个词语是多媒体 ...
- (转)Linxu磁盘体系知识介绍及磁盘介绍
Linxu磁盘体系知识介绍及磁盘介绍 系统管理 / 2017-01-14 / 0 条评论 / 浴春风 Linu磁盘设备基础知识指南磁盘速度快具备的条件: 1)主轴的转速5400/7200/10000/ ...
- PySpark SQL 相关知识介绍
title: PySpark SQL 相关知识介绍 summary: 关键词:大数据 Hadoop Hive Pig Kafka Spark PySpark SQL 集群管理器 PostgreSQL ...
- Nginx基础知识介绍
Nginx基础知识介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Nginx概述 Nginx是免费的.开源的.高性能的HTTP和正向/反向代理服务器.邮件代理服务器.以及T ...
- 计算机原理学习(1)-- 冯诺依曼体系和CPU工作原理
前言 对于我们80后来说,最早接触计算机应该是在95年左右,那个时候最流行的一个词语是多媒体. 依旧记得当时在同学家看同学输入几个DOS命令就成功的打开了一个游戏,当时实在是佩服的五体投地.因为对我来 ...
- ElasticSearch实战系列四: ElasticSearch理论知识介绍
前言 在前几篇关于ElasticSearch的文章中,简单的讲了下有关ElasticSearch的一些使用,这篇文章讲一下有关 ElasticSearch的一些理论知识以及自己的一些见解. 虽然本人是 ...
- CPU发展史和相关品牌介绍
CPU发展史和相关品牌介绍 CPU发展已经有40多年的历史了.我们通常将其分成 六个阶段. (1)第一阶段 (1971年-1973年) .这是4位和8位低档微处理器时代,代表产品是Intel 4004 ...
随机推荐
- (原创)Activity启动模式之singleTask
android中activity有四种启动模式 standard(默认):在同一个任务栈中可以有重复的activity,基本没什么限制 singleTop:只有当此activity在栈顶时,去创建它, ...
- 项目:DoubleFaceCamera
代码在github: https://github.com/Viyu/DoubleFacedCamera 这个app的想法是:用手机的前置和后置摄像头同时拍摄画面合成输出一张图,把拍摄者和被拍摄者的画 ...
- ccs3中icon转换为字体的方法
小图标转换为字体有几大优点 文件小,一般50k以内 避免了加载多个icons,减少了加载次数,有利于页面优化. 兼容性很好,可以随便放大缩小,都能正常显示. 维护起来也很简单,只用找到这个字体文件(比 ...
- java.lang.ClassNotFoundException: net.sf.json.JSONArray,java.lang.NoClassDefFoundError: net/sf/json/JSONArray jetty跑项目遇到的问题
2016-05-18 15:44:25 ERROR Dispatcher.error[user:|url:]:L38 - Dispatcher initialization failed Unable ...
- centos 安装gcc时,出错:Found 10 pre-existing rpmdb problem(s), 'yum check' output follows:
别人折腾的系统. 刚开始,准备安装下tornado,报错,需要安装 gcc 和 python-devel gcc安装报错,如标题所示: 谷歌了一把: http://stackoverflow.com/ ...
- url中出现井号("#")的问题
今天在asp.net mvc网站项目的前台页面里写一段js代码时,想要跳转到某个url,例如 location.href="xxxx?"+"id="+id+&q ...
- SQLServer:FUNCTION/CURSOR/PROCEDURE/TRIGGER
一.FUNCTION:在sqlserver2008中有3中自定义函数:标量函数/内联表值函数/多语句表值函数,首先总结下他们语法的异同点:同点:1.创建定义是一样的: ...
- select count(*)和select count(1)的区别
一般情况下,Select Count (*)和Select Count(1)两着返回结果是一样的 假如表沒有主键(Primary key), 那么count(1)比count(*)快, 如果有主键的話 ...
- Enum:Fliptile(POJ 3279)
Fliptile 题目大意:农夫想要测牛的智商,于是他把牛带到一个黑白格子的地,专门来踩格子看他们能不能把格子踩称全白 这一题其实就是一个枚举题,只是我们只用枚举第一行就可以了,因为这一题有点像开关一 ...
- css 发光字效果
<!DOCTYPE html> <html> <head> <!-- 超酷炫的CSS3发光字体,可自定义喔!!--> <meta http-equ ...