CN102741775B - 用于对计算机平台的系统功率状态进行转换的方法、装置和系统 - Google Patents

用于对计算机平台的系统功率状态进行转换的方法、装置和系统 Download PDF

Info

Publication number
CN102741775B
CN102741775B CN201180002698.5A CN201180002698A CN102741775B CN 102741775 B CN102741775 B CN 102741775B CN 201180002698 A CN201180002698 A CN 201180002698A CN 102741775 B CN102741775 B CN 102741775B
Authority
CN
China
Prior art keywords
processor
logic
power state
instruction
computer platform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201180002698.5A
Other languages
English (en)
Other versions
CN102741775A (zh
Inventor
R·D·穆拉利达尔
H·塞莎德里
B·L·弗莱明
V·M·鲁德拉穆尼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN102741775A publication Critical patent/CN102741775A/zh
Application granted granted Critical
Publication of CN102741775B publication Critical patent/CN102741775B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3268Power saving in hard disk drive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3278Power saving in modem or I/O interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Power Sources (AREA)
  • Hardware Redundancy (AREA)

Abstract

用于将平台上的处理器功率状态转换与该平台上的另一功率状态转换联系起来的技术。在一个实施例中,操作系统的处理器管理器功能检测执行该操作系统的处理器的空闲状况。基于该处理器空闲状况和其它平台设备的一个或多个所指示的状况,联系逻辑可以确定要将该平台转换到的系统功率状态。例如,联系逻辑可以从多个空闲待机系统功率状态中的一个进行选择。

Description

用于对计算机平台的系统功率状态进行转换的方法、装置和系统
技术领域
概括地说,实施例涉及计算机平台的设备的功率管理,具体地说,某些实施例提供了将平台的处理器功率状态转换与该平台的另一功率状态转换联系起来(tie)的方法。
背景技术
在现有的计算机平台中,操作系统(OS)例如使用传统的基于高级配置与电源接口(ACPI)的机制以各种方式支持特定于特定处理器的功率管理技术。例如,当前OS功率管理(OSPM)机制提供了将平台处理器核芯转换到特定于处理器的、空闲处理器功率状态,例如C6功率状态。
自主的设备功率管理的引入允许这样的计算机平台越来越依赖于各种类型的设备的驱动程序,其中这些驱动程序独立地管理特定于设备的功率状态之间的转换,每一种驱动程序用于它们自己各自的平台设备。
但是,到目前为止,平台的处理器向特定于特定处理器的功率状态的转换独立于该平台的其它类型设备向它们各自的特定于设备的功率状态的任何转换。例如,现有的OS功率管理(OSPM)机制并不有助于将处理器功率状态转换与该平台上的另一功率状态转换进行任何相关联,其中,所述另一功率状态转换特定于或者包括对于另一(例如,非处理器)类型的平台设备的功率状态进行转换。
由于依赖于单独的功率管理决策和它们相应的单独的平台状态转换(例如,特定于处理器的功率状态转换和单独的(处理器之外)设备功率状态转换),现有计算机平台的功率管理技术未能从计算机平台的总体角度考虑实现更高效功率状态的可能时机。
附图说明
在附图的图中,通过示例而不是限制的方式示出了本发明的各个实施例,其中:
图1的方框图示出了根据一个实施例用于实现功率管理的系统的挑选的单元;
图2的方框图示出了根据一个实施例用于执行系统功率状态转换的片上系统的挑选的单元;
图3的方框图示出了根据一个实施例用于将处理器功率状态转换与另一功率状态转换联系起来的平台的挑选的单元;
图4的方框图示出了根据一个实施例用于确定平台的系统功率状态转换的方法的挑选的单元。
具体实施方式
实施例以各种方式提供了将平台的处理器的特定于处理器的功率状态转换与该平台上的一个或多个其它设备的功率状态转换联系在一起的技术。这种转换的联系提供了认识和实现更高效的、平台宽度的功率状态的时机。
在一个实施例中,平台的功率管理功能例如由在该平台的处理器上执行的OS的处理器管理器(governor)提供。处理器管理器可以检测执行该OS的处理器的空闲状况,并对其进行响应。例如,响应于对于某种当前的或者预期的处理器空闲的指示,处理器管理器可以发起该处理器向诸如C6(或者更低功率状态)之类的空闲功率状态的转换。处理器管理器对于所指示的处理器空闲的响应可以包括发起平台宽度的系统功率状态转换,其中特定于处理器的功率状态转换只是一个组成部分。
通过示例而不是限制的方式,处理器管理器可以向该平台的系统管理器指示处理器进入处理器空闲功率状态。例如,系统管理器可以包括用于识别特定于该平台中的不同于处理器的一个或多个设备的功率状态信息的功能。替代地或另外地,系统管理器可以包括或者访问例如基于所识别的特定于设备的功率状态信息来实现特定于设备的功率状态转换的一个或多个设备驱动程序或者类似逻辑。
在一个实施例中,所述平台包括用于将处理器向特定于处理器的功率状态的转换与一个或多个其它平台设备向各自的特定于设备的功率状态的转换联系起来的联系逻辑。例如,联系逻辑可以在响应于确定出平台宽度的系统功率状态转换的可用性,伺机地执行这种联系,其中平台宽度的系统功率状态转换包括多个平台设备的各自的设备功率状态的转换。
图1示出了根据某些实施例的计算机系统100的挑选的单元。系统100可以包括平台105,平台105具有用于以各种方式向平台105的一个或多个组件供电的电源155。平台105可以包括:包括用于实现功率管理的机制的个人计算机(PC)、个人数字助理(PDA)、互联网装置、蜂窝电话、膝上型计算机、平板设备、移动单元、无线通信设备和/或任何其它这种计算设备中的一个或多个,但是各个实施例的范围在这方面并不受限制。
根据示例性实施例,平台105可以包括直接或者间接地耦合到一个或多个其它组件(例如,存储器125和系统互连135)的处理单元110。存储器125可以包括动态随机存取存储器(DRAM)、非易失性存储器等等。在一个示例中,存储器125可以存储可由处理单元110执行的软件程序。另外地或替代地,处理单元110可以访问例如存储在存储器125中或者存储在单独的存储设备中的基本输入/输出系统(BIOS)指令120。
处理单元110可以经由一个或多个地址总线和/或数据总线,以各种方式耦合到平台105的组件。应当理解的是,可以使用不同于这些总线或者除这些总线之外的互连来连接处理单元110。例如,根据不同的实施例,可以使用一个或多个专用数据线和/或控制线、交叉开关矩阵(crossbar)等等,将处理单元110连接到存储器125或者其它设备。
如下文讨论的,处理单元110可以包括用于执行操作系统(OS)(没有示出)的一个或多个核芯115。在各个实施例中,执行的OS可以实现用于以各种方式提供电源155的配电管理的一个或多个功能,例如高级配置与电源接口(ACPI)和/或操作系统功率管理(OSPM)代码。此外,处理单元110可以包括诸如静态随机存取存储器(SRAM)等的高速缓冲存储器(没有示出)或者多种类型的内部集成存储器中的任何一种。
为了实现数据和/或控制消息的各种交换,互连135可以将平台105的各个组件彼此耦合。通过示例而不是限制的方式,互连135可以包括以太网接口、通用串行总线(USB)接口、外围组件互连接口等等中的一个或多个。另外地或替代地,互连135可以表示用于控制通过其互连的各个组件的电路。例如,互连135可以包括一个或多个控制器中心,例如I/O控制器中心、平台控制器中心、存储器控制器中心等等。
为了示出某些实施例的各种特征,示出了互连135将处理单元110耦合到用于在平台105处接收通信的输入设备130、用于从平台105发送通信的输出设备140以及用于在平台105中存储数据的存储设备145。通过示例而不是限制的方式,输入设备130和输出设备140中的任意一个或二者可以包括键盘、小键盘、鼠标、触摸板、触摸屏、显示器、生物测定设备等等中的一个或多个。存储设备145可以包括硬盘驱动器(HDD)、固态驱动器(SSD)、光盘(CD)驱动器、数字多功能光盘驱动器(DVD)和/或其它计算机介质输入/输出(I/O)设备中的一个或多个。在一个实施例中,输入设备130、输出设备140和存储设备145中的一个或多个可以例如作为平台105的外围设备而在平台105之外并耦合到平台105。
应当理解的是,根据各个实施例,可以将平台105的多种另外的或替代的设备、电路块等等中的任何一个耦合到处理单元110。还应当理解的是,平台105的特定架构(例如,平台105的设备、电路块等等相对于处理单元110的相对配置)并不是对某些实施例的限制。
根据示例性实施例,系统100可以经由到网络160的连接,与其它设备交换数据。例如,平台105可以包括用于与网络160交换网络业务的网络接口设备150。网络连接可以包括任意类型的网络连接,例如以太网连接、数字用户线(DSL)、电话线、同轴电缆等等。网络160可以是任意类型的网络,例如互联网、电话网、有线电视网、无线网络,诸如遵循包括一个或多个与IEEE802.11有关的标准的IEEE标准802.11,1999、无线城域网的IEEE802.16标准等等的网络。
根据一个示例性实施例,处理单元110(例如处理单元110的处理核芯115)可以在不同的时刻在两种或者更多种处理器功率状态中进行操作。平台105可以提供用于支持、发起或者实现处理器核芯115在这些处理器功率状态之间的转换的硬件和/或软件单元。
图2示出了根据一个实施例用于实现计算机平台的系统功率状态的转换的片上系统(SoC)200的挑选的单元。例如,SoC200可以包括平台105中的一组设备里的一些或者全部,其中这些设备服从功率管理机制,在一个实施例中,所述功率管理机制将处理器功率状态转换与一个或多个其它平台设备的另一功率状态转换联系起来。
SoC200可以包括一个或多个处理器,例如,具有至少一个处理器核芯210的CPU205。应当理解的是,在替代的实施例中,CPU205可以位于平台的一个或者任意SoC之外,例如,位于单独的单核或者多核CPUIC芯片中。处理器核芯210可以以各种方式耦合到一个或多个其它平台设备,例如所述一个或多个其它平台设备包括位于SoC200之上或者之外的组件。
SoC200可以为CPU205、SoC200的一个或多个其它组件设备和/或耦合到SoC200的一个或多个其它平台设备(没有示出)提供功率管理。例如,处理器核芯210可以执行提供OS功率管理(OSPM)功能的OS。替代地或另外地,SoC200可以包括功率管理单元(PMU)220,其用于以各种方式检测、确定或者提供数据和/或控制消息,以便监测和/或控制SoC200的设备和/或耦接到SoC200的平台设备(没有示出)的功率特性。例如,PMU225可以接收、生成或者访问PMU状态信息225,以便对核芯210和/或一个或多个其它平台设备进行功率管理。在一个实施例中,可以将处理器核芯210的功率管理与SoC200的一个或多个其它设备的(和/或SoC200之外的一个或多个平台设备的)功率管理联系起来,其中SoC200的一个或多个其它设备结合处理器核芯210以各种方式进行操作。
这种功率管理可以延伸到平台设备的多种组合中的任何一种。通过示例而不是限制的方式,SoC200可以包括图形模块240,图形模块240具有用于执行渲染计算(renderingcalculation)或者图形数据的其它处理的电路或其它逻辑。替代地或另外地,SoC200可以包括例如用于处理在平台之间交换的视频数据的视频编码模块245和/或视频解码模块255。替代地或另外地,SoC200可以包括显示模块250,显示模块250具有用于例如经由SoC200的显示端口265向显示器提供视频信息的接口、驱动程序或者其它电路/逻辑。此外,SoC200可以另外地或者替代地包括存储器控制器215,存储器控制器215包括用于对SoC200所位于的平台的数据存储设备的访问进行管理的电路或者其它逻辑。
另外地或者替代地,SoC200可以以各种方式包括用于接收和/或发送时钟、电力、数据、控制或者其它信号的一个或多个单元。通过示例而不是限制的方式,SoC200可以包括供SoC200接收、处理一个或多个时钟信号和/或将一个或多个时钟信号分发给各个组件设备的锁相环(PLL)模块230。SoC200可以包括唤醒模块235,唤醒模块235具有用于检测对唤醒事件进行指示的输入信号的电路或其它逻辑,其中唤醒事件用于将电路转换出低功率状态。另外地或替代地,根据各个实施例,SoC200可以包括云数据管理接口(cDMI)260、双倍数据速率(DDR)I/O接口270、显示端口265和/或供SoC200接收和/或发送各种时钟、电力、数据、控制或者其它信号的另外或替代单元的多种组合中的任意一种。
在各个实施例中,SoC200中的耦合到处理器核芯210的组件中的一些或者全部在各个替代实施例中可以与平台的一个或任意SoC分离。此外,应当理解的是,SoC200的这种其它耦合组件的组合和/或配置仅仅是示例性的,并且根据不同的实施例,SoC200可以包括耦合到处理器核芯210的一个或多个另外的或替代的组件的多种组合中的任意一种。
图3示出了根据一个实施例在系统功率状态之间进行转换的平台300的挑选的单元。例如,平台300可以包括平台105的特征中的一些或者全部。在一个实施例中,图3中所示的所有设备中的一些可以位于单个SoC(例如,SoC200)上。
平台300可以包括OS305,OS305例如使用处理器315和存储器320进行执行。OS305可以包括处理器管理器310,例如一组执行的OS指令,所述指令进行操作用于管理处理器315的功率状态。在一个实施例中,处理器管理器310可以评估、识别或者检测处理器315的一个或多个处理器空闲状况。通过示例而不是限制的方式,处理器管理器310可以至少实现诸如LinuxOS的CPUIDLE管理器例程的功能之类的功能。替代地或另外地,处理器管理器310可以使用其它OS功率管理(OSPM)技术来进行处理器空闲检测和响应,例如其它OS功率管理技术根据诸如2010年4月5日发布的高级配置与电源接口(ACPI)修订版4.0a之类的ACPI标准。
通过示例而不是限制的方式,处理器管理器315可以执行,以计算、接收对于以下各项的指示,或者检测以下各项的级别(和/或类型):当前处理器空闲、当前的处理器空闲变化率、预期的未来处理器空闲、预期的未来处理器空闲变化率等等。应当理解的是,检测处理器的空闲状态可以包括:检测处理器的相应负载状态。
例如,OS305可以包括或者访问调度程序(没有示出),调度程序进行查找以便调度OS305要执行的下一个操作、线程等等。处理器管理器310可以检测OS305的调度程序已经确定存在或者预期存在某种状况,其中在该状况中,没有已准备的操作或者线程被调度进行执行。
基于检测当前的或者预期未来的处理器空闲状况,处理器管理器310可以确定该空闲状况表示将处理器315转换到特定的特定于处理器的功率状态(例如,诸如C6(或者更低的处理器功率状态)之类的处理器空闲功率状态)的时机。响应于识别到这种时机,处理器管理器310可以通过用信号通知OS的C状态驱动程序或者通过例如根据现有ACPI机制的用于使处理器空闲的多种替代技术中的任意一种来发起这种功率状态转换。
在一个实施例中,对于检测到的处理器315空闲状况的响应可以包括:处理器管理器310发起系统功率状态转换,例如,在系统功率状态转换中,处理器315的处理器功率状态转换只是一个组成部分。
通过示例而不是限制的方式,执行处理器管理器310的功能可以使处理器315生成消息325,消息325指示处理器315进入特定的处理器功率状态,例如C6或者其它处理器空闲功率状态。
消息325可以由例如平台300的系统管理器330中的联系逻辑355来接收,其中系统管理器330包括用于实现平台300中的不同于处理器315的一个或多个设备的特定于设备的功率管理的硬件和/或软件单元。通过示例而不是限制的方式,系统管理器330可以耦合到一个或多个其它平台设备340a、...、340n,或者访问平台状态信息,以确定一个或多个平台设备340a、...、340n是否处于或者预期进入空闲待机系统功率状态的充分休眠的活动级别。例如,系统管理器330可以获得对于屏幕保护程序超时、网络栈不活跃、在当前执行的应用之下运行的子进程的不活跃的通知,或者获得多种针对各个设备的平台不活跃的另外或替代指示符中的任何一种。应当理解的是,根据各个实施例,联系逻辑355可以位于系统管理器300之外的功率管理单元之中。
在一个实施例中,系统管理器330是在OS305上执行的功能。替代地或另外地,系统管理器330可以通过其它平台功率管理逻辑(例如,诸如PMU220之类的功率管理单元)而在OS305之外实现。系统管理器330可以紧耦合到OS305的特定于处理器的或者其它的功率管理功能。例如,系统管理器330可以包括或者访问用于与OS305进行直接功率管理通信的专用信道和/或协议。在一个实施例中,系统管理器330了解平台300的度量,所述度量用于确定平台300在各个时刻可以进入何种系统功率状态。此外,系统管理器330可以具有实现支持多种不同系统空闲状态的粒度级别的功率管理功能。
基于消息325和系统管理器330已经检测到的与平台300的一个或多个其它平台设备有关的其它状态信息,联系逻辑330可以确定处理器315进入处理器空闲功率状态是否是另外的、特定于设备的功率状态转换的时机,例如以支持在整体上实现平台300的总体系统功率状态转换。响应于确定这种系统功率状态转换,联系逻辑330可以指示包括在系统管理器330之中或者可由系统管理器330访问的机制(没有示出)(例如,一个或多个设备驱动程序、时钟门控逻辑、功率门控逻辑、PMU等等)实现系统功率状态转换。例如,这种指示可以包括:系统管理器330发送控制信号345以调节从电源335向一个或多个平台设备340a、...、340n进行的对于电压、电流或者其它信号的各种电平/频率等等的供应350。
图4示出了根据一个实施例用于确定计算机平台的功率状态转换的方法400的挑选的单元。例如,方法400可以由平台300执行。更具体地,方法400可以由呈现诸如OS305、系统管理器330和联系逻辑355(其可以包括在系统管理器330之中,也可以位于系统管理器330之外)的功能之类的功能的平台实体执行。
在方法400中,在410,OS的处理器管理器可以检测执行该OS的处理器的空闲状况。在420,响应于检测到处理器空闲状况,处理器管理器可以确定处理器向处理器空闲功率状态的转换。此外,对于检测到处理器空闲状况的响应可以包括:处理器管理器使得一消息被发送,其中该消息指示处理器向处理器空闲功率状态的已确定转换。
结合上面所描述的处理器管理器的操作,方法400可以包括:在430,系统管理器检测不同于处理器的平台设备的空闲状况。与操作410、420相比,关于何时发生430处的检测,各个实施例并不受限制。在440,联系逻辑可以接收对于检测到的设备空闲状况的指示以及对处理器向处理器空闲功率状态的已确定转换进行指示的消息。
在450,基于对处理器向处理器空闲功率状态的已确定转换进行指示的消息以及所指示的设备空闲状况,方法400可以确定该平台的系统功率状态转换。
在一个实施例中,确定系统功率状态转换可以包括:从多个空闲待机系统功率状态中的一个选择要转换到的优选系统功率状态。如本文所使用的,空闲待机系统功率状态是指并发的功率状态的组合,每一个功率状态针对各自的平台设备,其中该组合包括特定于平台处理器(例如,平台CPU的特定处理器核芯)的空闲功率状态。
下面的表1包括根据一个实施例针对两种示例性空闲待机系统功率状态中的每一种的组件设备功率状态列表。
表1针对各种空闲待机系统功率状态的组件功率状态
应当理解的是,在各个实施例中,可以实现多种另外的或替代的空闲待机系统功率状态中的任何一种。
确定450可以基于多个候选空闲待机系统功率状态中的每一个与一个或多个相应的性能益处和/或劣势相关联的状况。例如,实现特定的空闲待机系统功率状态可以导致特定的省电,但是同时需要特定的功率状态进入和/或恢复时延。
在一个实施例中,确定450可以寻找提供最大省电而无需太大的功率状态转换时延或者没有违反某种性能约束的系统功率状态。通过示例而不是限制的方式,联系逻辑可以例如根据处理器管理器或者系统管理器确定处理器或者其它平台设备的预期的空闲驻留期。例如,该预期的空闲驻留期可以指示在预期下一个操作准备好以供特定的平台设备进行处理之前的时间段。在一个实施例中,可以将预期的空闲驻留期与功率状态进入(或者恢复)时延进行比较,或者基于功率状态进入(或者恢复)时延来评估预期的空闲驻留期,以便去除任何不可接受的空闲待机系统功率状态。
用于实现确定450的另一级别的策略可以包括:确定在不妨碍对平台资源的某种所需访问的情况下,是否可以转换到任何剩余的、可接受的空闲待机系统功率状态。例如,如果转换到特定的系统功率状态将影响某种共享平台资源(例如,特定的电压干线(rail)、PLL等等)的管理,则联系逻辑可以确保共享这些资源的平台设备中的每一个都处于适当的功率状态,以便容忍对于共享资源访问的影响。对于访问共享平台资源的任何不可接受的约束可以进一步去除不可接受的一个或多个额外的候选系统功率状态。
用于实现确定450的另一级别的策略可以包括:确定任何剩余的候选系统功率状态是否将违反特定于设备的服务质量(QoS)需求。如果仍然存在没有被确定为不可接受的任何候选系统功率状态,则联系逻辑可以例如通过选择提供相对最大省电的可接受系统功率状态来确定要转换到的系统功率状态。
本文描述了用于计算机平台功率管理的技术和架构。在本文的描述中,为了解释的目的,给出了大量的具体细节以便提供对某些实施例的透彻理解。但是,对于本领域技术人员来说显而易见的是,可以在不使用这些具体细节的情况下实施某些实施例。在其它实例中,为了避免使描述模糊,结构和设备以方框图的形式给出。
说明书中提及“一个实施例”或者“实施例”表示结合实施例描述的特定特征、结构或者特性包括在本发明的至少一个实施例中。在说明书的各个地方中出现短语“在一个实施例中”未必都是指同一实施例。
本文中具体实施方式的一些部分是按照计算机存储器中的数据比特上的运算的算法和符号表示来呈现的。这些算法描述和表示是计算领域技术人员最有效地向该领域其它技术人员传达其工作本质所使用的方式。这里,通常认为算法是导致期望的结果的自相容的步骤序列。这些步骤是需要对物理量进行物理操作的步骤。通常但不是必需的,这些量采用能够进行存储、传输、组合、比较和以其它方式操作的电信号或磁信号的形式。已经证实,有时主要因为常用的原因,将这些信号称为为比特、值、元素、符号、字符、项、数字等等是方便的。
但是,应当牢记的是,所有这些术语和类似的术语是与适当的物理量相关联的,并仅仅是应用于这些量的便利标记。除非另外特别说明,否则,如从本文的讨论所显而易见的,应当清楚的是,贯穿本描述,使用诸如“处理”或“计算”或“运算”或“确定”或“显示”等等之类的术语的讨论,是指计算机系统或者类似的电子计算设备的动作和处理,这些动作和处理将表示成计算机系统的寄存器和存储器中的物理(电子)量的数据操作和变换成类似地表示成计算机系统存储器或寄存器或其它这种信息存储、传输或显示设备中的物理量的其它数据。
某些实施例还涉及用于执行本文的操作的装置。可以为了所需的目的而专门构造这种装置,或者这种装置可以包括由计算机中存储的计算机程序进行选择性激活或重新配置的通用计算机。这种计算机程序可以存储在计算机可读存储介质中,例如,但不限于:任何类型的盘,包括软盘,光盘,CD-ROM和磁光盘,只读存储器(ROM),随机存取存储器(RAM)(例如动态RAM(DRAM)),可擦可编程只读存储器(EPROM),电EPROM(EEPROM),磁卡或光卡,或者适合于存储电子指令的任何类型的介质,并且每一个均耦合到计算机系统总线。
本文所给出的算法和显示并不是内在地与任何特定的计算机或其它装置有关的。各种通用系统可以与根据本文的教导的程序一起使用,或者可以证实构造更专用的装置来执行所需要的方法步骤是方便的。从本文的描述,多种这些系统的所需结构将是显而易见的。此外,并没有参照任何特定的编程语言来描述某些实施例。应当清楚的是,可以使用多种编程语言来实现本文所描述的这些实施例的教导。
除了本文所描述的之外,可以对所公开实施例及其实现进行各种修改,而不脱离其范围。因此,本文的说明和示例应当以示例性方式而不是限制性方式来解释。本发明的范围应当仅通过参照随后的权利要求来估量。

Claims (20)

1.一种由计算机平台执行的方法,所述方法包括:
使用在所述计算机平台的处理器上执行的操作系统(OS):
检测所述处理器的处理器空闲状况;以及
响应于检测到所述处理器空闲状况:
确定所述处理器向处理器空闲功率状态的转换,以及
向所述计算机平台的联系逻辑发送指示所述处理器的所述转换的消息;
向所述联系逻辑提供对于所述计算机平台中的不同于所述处理器的设备的空闲状况的指示;以及
响应于指示所述处理器的所述转换的消息和对于所述设备的空闲状况的指示,所述联系逻辑确定将所述计算机平台向第一系统空闲功率状态转换的时机,所述第一系统空闲功率状态包括所述处理器处于处理器空闲功率状态并且所述设备处于第一设备功率状态;以及
响应于确定将所述计算机平台向所述第一系统空闲功率状态转换的时机,所述联系逻辑用信号通知驱动程序对于所述设备将所述设备转换到所述第一设备功率状态的过程。
2.根据权利要求1所述的方法,其中,所述OS的处理器管理器执行检测所述处理器空闲状况。
3.根据权利要求1所述的方法,其中,系统管理器执行提供对于所述平台中的不同于所述处理器的设备的空闲状况的指示。
4.根据权利要求1所述的方法,其中,所述联系逻辑接收对于性能参数的指示,并且其中,确定所述时机还响应于对于所述性能参数的指示。
5.根据权利要求4所述的方法,其中,所述性能参数包括预期的空闲驻留期和服务质量中的一个或多个。
6.根据权利要求1所述的方法,其中,确定将所述计算机平台向所述第一系统空闲功率状态转换的时机包括:从多个系统空闲功率状态中选择所述第一系统空闲功率状态。
7.一种用于转换计算机平台的系统功率状态的装置,包括:
第一逻辑,用于检测所述计算机平台的处理器的处理器空闲状况,并且响应于检测到所述处理器空闲状况:
确定所述处理器向处理器空闲功率状态的转换,以及
发送指示所述处理器的所述转换的消息;
第二逻辑,用于检测所述计算机平台中的不同于所述处理器的设备的空闲状况,并且提供对于所述设备的检测到的空闲状况的指示;以及
第三逻辑,用于响应于指示所述处理器的所述转换的消息和对于所述设备的空闲状况的指示,确定将所述计算机平台向第一系统空闲功率状态转换的时机,所述第一系统空闲功率状态包括所述处理器处于处理器空闲功率状态并且所述设备处于第一设备功率状态;以及,响应于确定将所述计算机平台向所述第一系统空闲功率状态转换的时机,所述第三逻辑还用信号通知驱动程序对于所述设备将所述设备转换到所述第一设备功率状态的过程。
8.根据权利要求7所述的装置,其中,所述第一逻辑包括在所述处理器上执行的操作系统(OS)的处理器管理器。
9.根据权利要求7所述的装置,其中,所述第二逻辑包括系统管理器。
10.根据权利要求9所述的装置,其中,所述系统管理器位于功率管理单元中。
11.根据权利要求9所述的装置,其中,所述系统管理器接收对于性能参数的指示,并且其中,确定所述时机还响应于所接收到的对于所述性能参数的指示。
12.根据权利要求11所述的装置,其中,所述性能参数包括预期的空闲驻留期和服务质量中的一个或多个。
13.根据权利要求12所述的装置,其中,所述服务质量包括时延容许量。
14.根据权利要求7所述的装置,其中,所述第三逻辑确定将所述计算机平台向所述第一系统空闲功率状态转换的时机包括:所述第三逻辑从多个系统空闲功率状态中选择所述第一系统空闲功率状态。
15.一种用于转换计算机平台的系统功率状态的系统,包括:
第一逻辑,用于检测所述计算机平台的处理器的处理器空闲状况,并且响应于检测到所述处理器空闲状况:
确定所述处理器向处理器空闲功率状态的转换,以及
发送指示所述处理器的所述转换的消息;
第二逻辑,用于检测所述计算机平台中的不同于所述处理器的设备的空闲状况,并且提供对于所述设备的所检测到的空闲状况的指示;
第三逻辑,用于响应于指示所述处理器的所述转换的消息和对于所述设备的空闲状况的指示,确定将所述计算机平台向第一系统空闲功率状态转换的时机,所述第一系统空闲功率状态包括所述处理器处于处理器空闲功率状态并且所述设备处于第一设备功率状态;以及,响应于确定将所述计算机平台向所述第一系统空闲功率状态转换的时机,所述第三逻辑还用信号通知驱动程序对于所述设备将所述设备转换到所述第一设备功率状态的过程;以及
将所述系统耦合到网络的天线。
16.根据权利要求15所述的系统,其中,所述第一逻辑包括在所述处理器上执行的操作系统(OS)的处理器管理器。
17.根据权利要求15所述的系统,其中,所述第二逻辑包括系统管理器。
18.根据权利要求17所述的系统,其中,所述系统管理器位于功率管理单元中。
19.根据权利要求17所述的系统,其中,所述系统管理器接收对于性能参数的指示,并且其中,确定所述时机还响应于所接收到的对于所述性能参数的指示。
20.根据权利要求15所述的系统,其中,所述第三逻辑确定将所述计算机平台向所述第一系统空闲功率状态转换的时机包括:所述第三逻辑从多个系统空闲功率状态中选择所述第一系统空闲功率状态。
CN201180002698.5A 2010-12-23 2011-12-08 用于对计算机平台的系统功率状态进行转换的方法、装置和系统 Active CN102741775B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN3083/DEL/2010 2010-12-23
IN3083DE2010 2010-12-23
PCT/US2011/063907 WO2012087593A2 (en) 2010-12-23 2011-12-08 Method, apparatus and system to transition system power state of a computer platform

Publications (2)

Publication Number Publication Date
CN102741775A CN102741775A (zh) 2012-10-17
CN102741775B true CN102741775B (zh) 2015-11-25

Family

ID=46314733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180002698.5A Active CN102741775B (zh) 2010-12-23 2011-12-08 用于对计算机平台的系统功率状态进行转换的方法、装置和系统

Country Status (7)

Country Link
US (2) US8775836B2 (zh)
EP (3) EP2656168A4 (zh)
JP (1) JP5697284B2 (zh)
KR (1) KR101464911B1 (zh)
CN (1) CN102741775B (zh)
TW (1) TWI474158B (zh)
WO (1) WO2012087593A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12019149B2 (en) 2017-05-10 2024-06-25 Google Llc Low-power radar

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8862920B2 (en) * 2011-06-16 2014-10-14 Advanced Micro Devices, Inc. Power state management of an input/output servicing component of a processor system
TWI454905B (zh) 2011-09-30 2014-10-01 Intel Corp 在多核心平台中之受限制的啓動技術
JP5893336B2 (ja) * 2011-10-24 2016-03-23 キヤノン株式会社 電源制御装置、電源制御装置の制御方法、およびプログラム
WO2013105931A1 (en) * 2012-01-10 2013-07-18 Intel Corporation Router parking in power-efficient interconnect architectures
KR20130087853A (ko) * 2012-01-30 2013-08-07 삼성전자주식회사 파워 컨트롤 시스템 및 그 동작 방법
US10007323B2 (en) 2012-12-26 2018-06-26 Intel Corporation Platform power consumption reduction via power state switching
US20140344599A1 (en) * 2013-05-15 2014-11-20 Advanced Micro Devices, Inc. Method and System for Power Management
US20160091957A1 (en) * 2014-09-26 2016-03-31 Suketu R. Partiwala Power management for memory accesses in a system-on-chip
US10275853B2 (en) * 2015-04-15 2019-04-30 Intel Corporation Media hub device and cache
KR20170016712A (ko) 2015-08-04 2017-02-14 한국전자통신연구원 시스템의 유휴 상태 감지를 통한 대기 전력 절감 방법 및 이를 이용한 장치
US20170038813A1 (en) * 2015-08-05 2017-02-09 Qualcomm Incorporated System and method for cache aware low power mode control in a portable computing device
US20170177068A1 (en) * 2015-12-17 2017-06-22 Intel Corporation Systems, methods and devices for standby power savings
US10481661B2 (en) * 2016-03-30 2019-11-19 Intel Corporation Power supply interface light load signal
US10956345B2 (en) * 2016-04-01 2021-03-23 Intel Corporation Enhanced directed system management interrupt mechanism
US10275008B2 (en) * 2016-09-22 2019-04-30 Intel Corporation Methods and apparatus to reduce computing device power consumption
US10936047B2 (en) * 2016-12-20 2021-03-02 Intel Corporation Power state management
US11171983B2 (en) * 2018-06-29 2021-11-09 Intel Corporation Techniques to provide function-level isolation with capability-based security
TWI706246B (zh) * 2018-12-27 2020-10-01 技嘉科技股份有限公司 效能管理系統、提供效能設定參數組合的方法、更新效能參數的方法、電腦軟體以及儲存媒體
US11550048B2 (en) 2019-05-20 2023-01-10 Google Llc Mobile device-based radar system for providing a multi-mode interface
WO2020256692A1 (en) * 2019-06-17 2020-12-24 Google Llc Mobile device-based radar system for applying different power modes to a multi-mode interface
US12013743B2 (en) * 2021-10-29 2024-06-18 Verizon Patent And Licensing Inc. Software-based power management for virtualization platforms

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5919264A (en) * 1997-03-03 1999-07-06 Microsoft Corporation System and method for using data structures to share a plurality of power resources among a plurality of devices
CN101067757A (zh) * 2007-06-01 2007-11-07 惠州市Tcl电脑科技有限责任公司 一种智能电源管理方法和系统
CN101526845A (zh) * 2009-04-24 2009-09-09 威盛电子股份有限公司 电源管理方法及其相关芯片组

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2974950B2 (ja) * 1995-10-26 1999-11-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 情報処理システム
JP3943665B2 (ja) * 1997-09-01 2007-07-11 株式会社東芝 スリープ制御方法、およびイベント通知方法
US6260150B1 (en) * 1998-03-10 2001-07-10 Agere Systems Guardian Corp. Foreground and background context controller setting processor to power saving mode when all contexts are inactive
US6317839B1 (en) 1999-01-19 2001-11-13 International Business Machines Corporation Method of and apparatus for controlling supply of power to a peripheral device in a computer system
US6802018B2 (en) 2000-12-27 2004-10-05 Intel Corporation Method and apparatus to directly access a peripheral device when central processor operations are suspended
JP3983026B2 (ja) * 2001-10-22 2007-09-26 シャープ株式会社 情報処理装置
US7634668B2 (en) * 2002-08-22 2009-12-15 Nvidia Corporation Method and apparatus for adaptive power consumption
US7313797B2 (en) 2002-09-18 2007-12-25 Wind River Systems, Inc. Uniprocessor operating system design facilitating fast context switching
KR100563691B1 (ko) 2003-06-09 2006-03-28 엘지전자 주식회사 컴퓨터 시스템에서의 전원 관리장치 및 방법
US7353413B2 (en) * 2003-08-18 2008-04-01 Intel Corporation Computer system power policy adjustment in response to an affirmative indication from a user
US20050138443A1 (en) * 2003-12-23 2005-06-23 Barnes Cooper Method for C state management
US7174471B2 (en) * 2003-12-24 2007-02-06 Intel Corporation System and method for adjusting I/O processor frequency in response to determining that a power set point for a storage device has not been reached
JP4387815B2 (ja) * 2004-01-30 2009-12-24 富士通株式会社 シリアルタイプのインターフェイス回路、そのパワーセーブ方法及びシリアルインターフェイスを持つデバイス
US7565562B2 (en) * 2004-09-03 2009-07-21 Intel Corporation Context based power management
US7373530B2 (en) 2005-03-16 2008-05-13 Microsoft Corporation Systems and methods for providing power-loss protection to sleeping computers systems
US20070043965A1 (en) * 2005-08-22 2007-02-22 Intel Corporation Dynamic memory sizing for power reduction
US20080098245A1 (en) * 2006-03-22 2008-04-24 G2 Microsystems, Inc. Power management system and method
US7685409B2 (en) * 2007-02-21 2010-03-23 Qualcomm Incorporated On-demand multi-thread multimedia processor
US8762692B2 (en) 2007-09-27 2014-06-24 Intel Corporation Single instruction for specifying and saving a subset of registers, specifying a pointer to a work-monitoring function to be executed after waking, and entering a low-power mode
US8140823B2 (en) * 2007-12-03 2012-03-20 Qualcomm Incorporated Multithreaded processor with lock indicator
US8458722B2 (en) * 2008-06-09 2013-06-04 International Business Machines Corporation Thread selection according to predefined power characteristics during context switching on compute nodes
US8683247B2 (en) 2008-06-12 2014-03-25 Advanced Micro Devices, Inc. Method and apparatus for controlling power supply to primary processor and portion of peripheral devices by controlling switches in a power/reset module embedded in secondary processor
US8255713B2 (en) * 2008-06-26 2012-08-28 Intel Corporation Management of link states using plateform and device latencies
US8954977B2 (en) * 2008-12-09 2015-02-10 Intel Corporation Software-based thread remapping for power savings
JP2010152853A (ja) * 2008-12-26 2010-07-08 Toshiba Corp データ記憶装置
US8495403B2 (en) * 2008-12-31 2013-07-23 Intel Corporation Platform and processor power management
US8656198B2 (en) * 2010-04-26 2014-02-18 Advanced Micro Devices Method and apparatus for memory power management
US8438416B2 (en) * 2010-10-21 2013-05-07 Advanced Micro Devices, Inc. Function based dynamic power control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5919264A (en) * 1997-03-03 1999-07-06 Microsoft Corporation System and method for using data structures to share a plurality of power resources among a plurality of devices
CN101067757A (zh) * 2007-06-01 2007-11-07 惠州市Tcl电脑科技有限责任公司 一种智能电源管理方法和系统
CN101526845A (zh) * 2009-04-24 2009-09-09 威盛电子股份有限公司 电源管理方法及其相关芯片组

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12019149B2 (en) 2017-05-10 2024-06-25 Google Llc Low-power radar

Also Published As

Publication number Publication date
CN102741775A (zh) 2012-10-17
KR20130087583A (ko) 2013-08-06
US20120166843A1 (en) 2012-06-28
EP2656168A4 (en) 2016-01-06
US8601304B2 (en) 2013-12-03
US20120166779A1 (en) 2012-06-28
EP3190478B1 (en) 2020-12-23
EP3190478A1 (en) 2017-07-12
KR101464911B1 (ko) 2014-11-24
TW201232242A (en) 2012-08-01
JP5697284B2 (ja) 2015-04-08
JP2014501987A (ja) 2014-01-23
TWI474158B (zh) 2015-02-21
US8775836B2 (en) 2014-07-08
WO2012087593A3 (en) 2012-08-16
EP3187965A1 (en) 2017-07-05
EP2656168A2 (en) 2013-10-30
WO2012087593A2 (en) 2012-06-28

Similar Documents

Publication Publication Date Title
CN102741775B (zh) 用于对计算机平台的系统功率状态进行转换的方法、装置和系统
US10146289B2 (en) Power system utilizing processor core performance state control
US9904346B2 (en) Methods and apparatus to improve turbo performance for events handling
KR101029414B1 (ko) 프로세서 상태 천이를 검출하기 위해 제공되는 장치 및방법과 머신 액세스 가능 매체와 컴퓨팅 시스템
CN1321362C (zh) 包括器件使用评估和功率状态控制的功率管理方法和系统
CN101622588B (zh) 动态功耗降低
US20110106935A1 (en) Power management for idle system in clusters
CN104238712A (zh) 分布式功率输送
CN103765409A (zh) 有功率效率的处理器体系结构
US10528119B2 (en) Dynamic power routing to hardware accelerators
US8078890B2 (en) System and method for providing memory performance states in a computing system
CN102934072A (zh) 信息处理设备及方法
CN104460938A (zh) 利用存储器高速缓存在系统范围内节省电力的方法和系统
US20130318370A1 (en) Middleware power management
US7958381B2 (en) Energy conservation in multipath data communications
CN103098019B (zh) 用于保存处理器状态以在处理器功率状态之间高效转换的方法、装置和系统
US11747882B2 (en) Central processor/accelerator power management system
CN102385529A (zh) 多cpu领域移动电子装置与其操作方法
US20230153121A1 (en) Accelerator usage prediction for improved accelerator readiness
US20230267059A1 (en) Systems and methods for detecting and suggesting breaks from use of an ihs (information handling system)
US20220317749A1 (en) Method and apparatus for low level utilization of excess power within a data center
US20230035142A1 (en) Input work item flow metric for computing environment telemetry
CN117707797A (zh) 基于分布式云平台的任务调度方法、装置及相关设备
CN106095046A (zh) 有功率效率的处理器体系结构

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant