纵有疾风起
人生不言弃

电脑待机、睡眠、休眠分不清楚?P、T、S、G、C 电源状态一次看懂

    有时候我们会被BIOS或是操作系统中的电源管理搞得雾煞煞,S0、C1究竟代表着什么,如果不了解其意义以及身后所代表的内涵,很难在BIOS中调整出适合的设定。就算你不是进阶或是超频玩家,看完此文你也能够对电源管理有更深的认识。

电脑待机、睡眠、休眠分不清楚?P、T、S、G、C 电源状态一次看懂插图

    各种电源状态缩写的意义

    P-States:英文为PerformanceStates的缩写,中文为效能状态。

    T-States:英文为ThrottlingStates的缩写。

    S-States:英文为SleepingStates的缩写,中文为睡眠状态。

    G-States:英文为GlobalStates的缩写,中文为全域状态。

    C-States:英文为CPUStates的缩写,中文为处理器状态。

    正常运作靠P-States

    P-States指的就是CPU处理器依据目前运算量负荷轻重,调整运作频率的高低,譬如1颗3.0GHz的处理器在执行Crysis3时以全速运作、上网时以1.8GHz运作、观赏影片时以800MHz运作。在Intel方面称为EIST(EnhancedIntelSpeedStepTechnology),AMD方面则是CnQ(Cool’n’Quiet)和PowerNow!。通常P0指的就是处理器以最高频率、最高运算量的状态运作,接下来P1、P2、P3……就依照运作效能的多寡、省电性由少至多依序排下去。

    除了P-States之外还有个T-States,不过T-States通常不会使用,唯有当处理器过热或是超过我们所设定的温度时才介入。T-States和P-States都是为了降低发热量而被使用,但是运作方式有别。例如1颗3.0GHz的处理器被P-States要求运作在50%,就是真的运作在1.5GHz之上,而T-States则是将3.0GHz切成一半,一半时脉不运作,一半时脉正常运作(调整处理器实际运作的占比)。

    ▲P-States和T-States的运作方式不同。

    题外话,Intel的TurboBoost技术就是当操作系统要求处理器运作在P0状态时,就会收集有关目前处理器耗电量、启动核心数量、核心电源状态、处理器温度等资讯,来决定P0的运作时脉为多少。

    ▲IntelTurboBoost简易原理说明。

    S-States与待机/休眠/睡眠关系式

    S-States则是指电脑系统状态,S0~S5共有6种,S0指的就是系统正常开机运作的状态,包含所有的P和C状态。S1时透过时脉产生器将处理器关闭、系统内存内容被刷新(持续供电),S1状态也被称为poweronsuspend;S2则是处理器电源完全关闭、系统内存内容刷新,系统整体耗电量比起S1更低一些。S3一般也称为suspendtoRAM或是待命(WindowsXP)、睡眠(WindowsVista之后),除了系统内存还有少量供电以外,其余大部分系统内的硬件电源均被关闭;S4则是所谓的suspendtodisk,将系统内存内部的资料写入硬盘之后,将电脑系统整体关闭,耗电量和关机一样;S5就是关机状态。

    例外有些人可能还有听过G-States全域状态,不过G-States仅是个抽象描写系统目前的电源状态(ACPI),要如何实作需额外定义。一般来说G0为系统开机状态、G1为睡眠状态、G2为软关机、G3为硬件关机。

    C-States好多种

    比较难理解的就是处理器待机状态C-States,因为这里的电源管理比较复杂,会根据状态的不同分别调降运作时脉或电压,或者干脆完全关闭。同时C-States也不断的加入新成员,像是C8~C10就是仅在HaswellULT系列才导入的C-State。

    C0:包含在S0之下,旗下包含所有P-States,也就是处理器内部电源全开的状态,所有的x86处理器都支援这个状态。

    C1:借由软件关闭处理器的时脉(stopinternalclock)(送出HLT指令),但是总线界面和APIC(AdvancedProgrammableInterruptController)均运作在全速状态,由Intel486DX4和之后的处理器开始支援,离开时间10ns。

    C1E:借由软件关闭处理器的时脉,以及降低处理器的输入电压,其余的总线界面和APIC运作在全速状态,LGA775脚位之后的处理器都支援,离开时间10ns;如果在BIOS中开启C1E支援,则处理器就会进入C1E而非进入C1状态。须注意AMD也使用C1E这个名词在处理器上,不过却是另外一回事,在AMD65奈米之后的处理器,所有处理器核心进入C1状态会让处理器直接进入C3状态。

    C2:借由硬件关闭处理器的时脉(设定STPCLK处理器接脚),总线界面和APIC均运作在全速状态,同样是Intel486DX4之后全部支援,离开时间100ns。

    C2E:借由硬件关闭处理器的时脉,降低处理器的输入电压,其余的总线界面和APIC运作在全速状态,IntelCore2Duo之后皆支援,但仅限Intel的处理器;同样的,若在BIOS中将C2E支援开启时,就会以C2E替代C2状态,离开时间100ns。

    C3:关闭处理器内部所有的时脉(包含总线界面和APIC),将L1快取中的内容清空,IntelPentiumII和AMDAthlon之后皆支援(除Core2DuoE4000和E6000系列不支援),此模式也称为sleep模式,离开时间50ms。C3下还有个deepsleep模式,由PentiumII以上(Core2DuoE4000和E6000系列不支援)、Turion64以上所支援,除处理器内部时脉外,也可关闭外部时脉。

    Intel处理器可透过设定SLP或是DSSLP接脚进入C3(在这之前处理器必须先进入C2),AMD则是透过读取APCI的暂存器和STPCLK的组合而定,如果读取PLVL_2暂存器,则设定STPCLK之后会进入C2;若读取PLVL_3暂存器,则设定STPCLK之后会进入C3。AMD行动版Turion64处理器还支援更进阶的AltVID功能,可于进入C3的同时降低处理器电压。

    C4:称做deepersleep,不像C1~C3为关闭处理器的时脉,C4更进一步降低处理器的电压供应,并把部分的L2快取内容清空以便进一步降低能源消耗;C4从IntelPentiumM(不包含Core2DuoE4000和E6000系列)和AMDTurion64之后开始支援,离开时间至少需200ms。

    C4E:将C4时的处理器L2快取完全清空并关闭,可进一步降低供应给处理器的电压,此模式仅在部分处理器上出现(CoreSolo、Duo、部分45奈米行动版Core2Duo、部分Atom)。

    C6:C6状态(deeppowerdown)可以说是完全关闭了处理器,包含L1和L2快取。在此状态下,处理器内部的状态都会被写入到1个具有独立电力来源的静态内存中(后来的处理器可使用L3快取做为目标写入),处理器的电压就能够降到非常低,甚至是0V完全关闭,从Intel45奈米行动版Core2Duo开始支援。C6时的离开时间比较长,约是C4的1.5倍。

    Intel在Nehalem中导入了1个电源控制模组,处理器各个部分可使用不同的电压,因此可让某个闲置的处理核心进入C6。

    ▲Intel于Penryn核心开始导入C6(桌上型版本没有)。

    C7:C7在C6的基础上增加了部分或者全部清空L3快取,被整合进去的北桥,现称SystemAgent以最小的电压保持启动,外部电压调整可从1.8V降至1.6V,从SandyBridge开始导入。

    C8:最后1层L3快取被关闭,SystemAgent以最小的电压保持启动,外部电压调整可从1.8V降至1.2V。

    C9:SystemAgent电压降至0V,IO关闭,外部电压调整可降至0V。

    C10:外部电压调整可降至0V或完全关闭(以上C8~C10目前仅在HaswellULT版出现)。










未经允许不得转载:起风网 » 电脑待机、睡眠、休眠分不清楚?P、T、S、G、C 电源状态一次看懂
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录