CN103959202A - 包括基于非内核域在功率节省状态下的驻留时间确定装置的最佳功率状态的用于能量效率和能量节约的方法、装置及系统 - Google Patents
包括基于非内核域在功率节省状态下的驻留时间确定装置的最佳功率状态的用于能量效率和能量节约的方法、装置及系统 Download PDFInfo
- Publication number
- CN103959202A CN103959202A CN201280059871.XA CN201280059871A CN103959202A CN 103959202 A CN103959202 A CN 103959202A CN 201280059871 A CN201280059871 A CN 201280059871A CN 103959202 A CN103959202 A CN 103959202A
- Authority
- CN
- China
- Prior art keywords
- kernel
- state
- value
- kernel domain
- domain
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3293—Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Power Sources (AREA)
Abstract
处理器可确定驻留在功率节省状态下的非内核域的实际驻留时间,并且基于实际驻留时间,处理器可确定处理器的最佳功率节省状态(P状态)。响应于非内核域进入功率节省状态,中断生成器(IG)可生成第一中断并且设备驱动器或操作系统可使用第一中断开始计时器(第一值)。响应于非内核域退出功率节省状态,IG可生成第二中断并且设备驱动器或操作系统可使用第二中断停止计时器(终值)。功率管理单元可使用终值和第一值确定实际驻留时间。
Description
领域
本公开涉及集成电路中的能量效率和能量节约以及用于在其上执行的代码,并且具体地但并非排他地涉及基于非CPU域的功率状态驻留确定集成电路的最佳功率状态。
背景
半导体处理和逻辑设计的进步已经提高了可出现在集成电路器件上的逻辑数量。其结果是,计算机系统配置已经从系统中的单或多集成电路演进到单独集成电路上的多硬件线程、多内核、多设备、和/或计算机系统。附加地,随着集成电路的密度增长,也放大了对计算机系统(从嵌入式系统到服务器)的功率要求。而且,软件低效及其对硬件的要求已经造成了计算设备能量消耗的增长。事实上,某些研究表明,计算机消耗对于美国的全部供电的大约13%。其结果是,非常需要与集成电路相关联的能量效率和节约。并且,随着服务器、桌上计算机、笔记本、超级本、移动电话、处理器、嵌入式系统等等变得更加流行(从包括在典型的计算机、汽车以及电视中到生物技术),计算设备销售的影响很好地延伸到能量消耗范围之外,达到对美国经济的显著直接的影响,因为计算设备相关的销售已经与美国国内生产总值具有很大的因果关系。尽管已经在此展示与美国相关的具体统计数据,对增强能量效率以及降低能量或功率消耗的需要在全世界适用。
例如,计算机系统可包括处理器,处理器可包括多个处理内核、非内核区域、图形处理单元、以及许多这种处理模块。这些模块中的一个或多个可在不同且独立的时钟频率下运行并且可通常被称为“多频域”。除处理内核域(或内核域)之外的那些域(例如,GPU,非内核)可被称为非内核域。这些内核在功率节省(或C)状态(诸如C0至C7)下的驻留时间可由功率控制单元或操作系统或设备驱动器来确定。然而,当前技术仅测算非内核域诸如GPU的驻留时间,并且这种测算的驻留时间仅仅是测算值并且可能不准确或不能代表实际驻留时间。其结果是,基于非内核域的经测算驻留时间确定的处理器的功率状态(或P状态)可能不是最佳的并且可能错过了功率节省机会。
附图简要说明
通过举例而非通过限制在附图中展示在此所述的本发明。为了展示的简单和清晰,图中所示元件无需按比例绘制。例如,为了清晰的目的,一些元件的尺寸可能相对于其他元件被放大。而且,当考虑合适时,已经在附图中重复参考标号以便表明相应的或类似的元件。
图1展示处理器100,根据一个实施例,该处理器可确定一个或多个非内核域在功率节省状态下的驻留时间。
图2是流程图200,其展示一种技术,根据一个实施例,处理器可通过该技术确定一个或多个非内核域在功率节省状态下的驻留时间。
图3展示流程图300,该流程图展示一种技术,根据一个实施例,处理器可通过该技术基于一个或多个非内核域的驻留时间确定处理器的功率状态(P状态)。
图4展示计算机系统700,根据一个实施例,该计算机系统可确定一个或多个非内核域在功率节省状态下的驻留时间。
详细说明
以下说明描述了一种用于基于非内核域中的功率状态驻留确定装置的最佳功率状态的多个实施例。在以下说明中,列出了许多特定细节,诸如逻辑实现方式、资源划分或共享、或复制实现方式、系统组件的类型和相互关系、以及逻辑划分或集成选择,以便提供本发明的更透彻理解。然而,本领域普通技术人员将认识到本发明可在没有这些特定细节的情况下实施。在其他实例中,未详细地展示控制结构、门级电路、以及全软件指令序列,以便不混淆本发明。通过所包括的说明,本领域普通技术人员将能够在没有不适当的试验的情况下实施适当的功能。
在说明书中对“一个实施例”、“一实施例”、“一示例实施例”的引用表明所述实施例可包括具体的特征、结构或特性,但是每个实施例可能无需包括该具体的特征、结构或特性。而且,这种短语无需指代相同的实施例。而且,当结合实施例描述具体的特征、结构或特性时,认为其在本领域普通技术人员结合显式地或未显式地描述的其他实施例实施这种特征、结构或特性的知识范围内。
本发明的实施例可在硬件、固件、软件或其任意组合中实施。本发明的实施例还可实施为存储在机器可读介质上的指令,这些指令可由一个或多个处理器读取并执行。机器可读介质可包括任意用于存储或发送机器(例如,计算设备)可读形式的信息。
例如,机器可读介质可包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光学存储介质;闪存设备;电、光、声光或其他类似的信号。而且,固件、软件、例程以及指令可在此描述为执行某些动作。然而,应当认识到这种描述仅用于方便并且认识到这种动作事实上来自计算设备、处理器、控制器以及其他执行固件、软件、例程以及指令的设备。
尽管参考特定集成电路中(诸如在计算平台或多处理器中)的能量节约和能量效率描述以下实施例,其他实施例可适用于其他类型的集成电路和逻辑设备。类似的技术和在此所述的实施例的教导可应用于其他类型的也可受益于更好的能量效率和能量节约的电路或半导体器件。例如,所公开的实施例不限于桌上和膝上计算机系统并且还可用在其他设备中,诸如手持式设备、片上系统(SOC)、以及嵌入式应用。手持式设备的一些示例包括蜂窝电话、互联网协议设备、数码相机、个人数字助理(PDA)、以及手持式PC。嵌入式应用通常包括微控制器、数字信号处理器(DSP)、片上系统、网络计算机(NetPC)、机顶盒、网络集线器、广域网(WAN)交换机、或能够执行以下教导的功能和操作的任意其他系统。而且,在此所述的装置、方法、以及系统不限于物理计算设备,而是还可涉及用于能量节约和效率的软件优化。如将从以下描述变得非常明显的是,在此所述的装置、方法、以及系统的实施例(无论参照硬件、固件、软件还是其组合)对于“绿色科技”未来而言是至关重要的,诸如对于涵盖美国或世界经济的很大一部分的产品的功率节约和能量效率而言。
在一个实施例中,处理器可确定非内核域在功率节省状态(多种)下的实际驻留时间,并且基于实际驻留时间,处理器可确定处理器的合适P状态。在一个实施例中,处理器可包括功率控制单元、中断生成单元、以及用于确定一个或多个非内核域(例如,图形处理单元)的实际驻留时间的一个或多个计时器或计数器。基于例如GPU在功率节省状态(例如,C1至C7)下的驻留时间,处理器可确定处理器的P状态。其结果是,处理器可选择处理器的最佳P状态,并且可很好地利用功率节省机会以节约处理器中的功率。
在一个实施例中,中断生成单元可响应于非内核域进入功率节省状态(或C状态)而生成第一中断。在一个实施例中,中断生成单元可从功率控制单元或从内核区域中的诸个处理内核之一接收第一信号。在一个实施例中,处理内核可轮询(poll)状态寄存器以确定非内核域是否已经进入功率节省状态以及将第一更新信号发送到功率控制单元。在其他实施例中,处理内核可直接将第一信号发送到中断生成单元。在一个实施例中,设备驱动器或操作系统或功率控制单元可使用第一中断以开始计时器或计数器。在一个实施例中,计时器可响应于从设备驱动器或OS或PCU之一接收到信号而从第一值开始。在一个实施例中,开始值可被复制到寄存器中用于在稍后的时间点计算非内核域的驻留时间。在其他实施例中,开始值可由用户或诸个处理内核之一来配置,并且所配置的开始值可响应于OS或设备驱动器接收到第一中断而被加载到计数器中。
在一个实施例中,中断生成单元可响应于非内核域退出功率节省状态而生成第二信号。在一个实施例中,处理内核可将第二更新信号发送到功率控制单元,功率控制单元进而可将第二信号发送到中断生成单元。在其他实施例中,处理内核可直接将第二信号发送到中断生成单元。在一个实施例中,中断生成单元可响应于接收到第二信号而生成第二中断。在一个实施例中,OS、或设备驱动器、或处理内核之一可将停止或停止信号发送到计时器。
在一个实施例中,由计时器寄存的终值可被存储到寄存器。在一个实施例中,终值和第一值可用于确定非内核域在功率节省状态下的实际驻留时间。在一个实施例中,实际驻留时间值可用于确定处理器的最佳功率节省状态。在一个实施例中,功率控制单元可基于实际驻留时间值确定处理器的最佳功率节省状态。其结果是,和基于驻留时间的测算而选择的功率节省状态相比,为处理器选择的最佳功率节省状态可提供机会来节约更多的功率。
在图1中展示了可基于非内核域在功率节省状态下的实际驻留时间确定处理器的最佳功率节省状态的处理器101的实施例。在一个实施例中,处理器100可包括许多域,诸如内核105、非内核150、图形处理单元GPU170、计数器/计时器175、以及中断生成单元180。在一个实施例中,除内核域105之外的任意域可被称为“非内核域”。例如,图形处理单元(GPU)170可以是非内核域之一。而且,为了简明,仅在图1中描绘了三个域,然而,处理器101可包括许多这种域,并且每个域(或为内核或为非内核)可在不同的时钟频率值下运行并且这种域还可被称为多频域。在一个实施例中,内核105可包括许多处理内核(P内核)诸如110-A至110-N,分别与p内核110-A至110-N相关联的逐内核高速缓存120-A至120-N,以及分别与p内核110-A至110-N相关联的中级高速缓存130-A至130-N。在一个实施例中,内核105和非内核150可支持点到点双向总线,以便增强处理内核(p内核)110之间,以及内核区域105同非内核区域150之间的通信。
在一个实施例中,p内核110中的每一个可包括指令队列IQ106、节流器(throttler)107、活动累计逻辑AAL108、指令获取单元IFU112、解码单元113、保留站(reservation station)RS114、执行单元EU115、浮点执行单元FPU116、重排序缓冲器ROB117、以及回退(retirement)单元RU118。在一个实施例中,每个P内核110-A至110-N可代表独立的域。在其他实施例中,如果p内核110-A至110-N中的每一个在相同的时钟频率下运行,则所有p内核110-A至110-N可总体上被称为单个独立域。上述功率管理技术适用于上述任意场景以及其中存在可被称为非内核域的处理器100的多个部分的其他场景。在此,为了简明,所有p内核110-A至110-N被表示为单个域,即内核105。
在一个实施例中,每个处理内核110-B至110-N可包括类似于在处理内核110-A中所描绘的模块的模块,并且为了简明,未在此示出处理内核110-B至110-N中的每一个的内部细节。在一个实施例中,逐内核高速缓存120可包括可支持更高存取速度的存储器技术,这可例如降低指令和数据获取的延时。在一个实施例中,非内核区域150可包括存储器控制器155、末级高速缓存LLC160、归属(home)代理HA161、高速缓存代理CA162、路由代理RA163、全局时钟/PLL164、接口165、以及功率管理单元168。
在一个实施例中,活动传感器179可感测在内核105、非内核150、以及GPU170中发生的活动。在一个实施例中,活动传感器179可被设置在内核和非内核域中的每个模块的数据路径中,以便使得活动传感器179能够检测架构和数据活动值。在一个实施例中,存储在AAL108中的每个域的状态可用于确定该域是否已经进入或退出功率节省状态。
在一个实施例中,处理内核110-A可监控GPU170的活动等级,以便确定GPU是否已经进入功率节省状态,诸如C2、C3、C6、或C7。在一个实施例中,处理内核110-A可将第一信号发送到功率管理单元168,或处理内核110-A可将第一信号直接发送到中断生成单元180。在一个实施例中,处理内核110-A可监控GPU170的架构或数据活动值。在其他实施例中,处理内核110-A可从GPU170检取(retrieve)活动值并且然后确定GPU是否正在进入或退出功率节省状态。在这种情况下,处理内核110-A可从GPU170的寄存器读取AAL值或任意其他状态值。在一个实施例中,处理内核110-A可在确定GPU170正在进入功率节省状态之后发送第一信号。
在一个实施例中,功率管理单元168可响应于接收到第一信号而生成第一更新信号。在一个实施例中,第一更新信号可被发送至中断生成单元180。在一个实施例中,功率管理单元168可例如响应于从处理内核110-A接收到第二信号而生成第二更新信号。在一个实施例中,第二更新信号可被发送至中断生成单元180。在一个实施例中,功率管理单元168可接收非内核域在功率节省状态下的实际驻留时间,并且基于实际驻留时间,功率管理单元168可确定处理器101的最佳功率状态(P状态)。在一个实施例中,功率管理单元168可至少部分地基于一个或多个非内核域(诸如GPU170以及非内核150)的实际驻留时间控制提供给处理器101的时钟频率或电压。
在一个实施例中,功率管理单元168被描绘为非内核150中的单个模块,然而,功率管理功能可分布在域105、150、和170之间。在其他实施例中,非内核150和GPU170中的每个处理内核110可具有独立的功率管理单元,其可控制提供给处理内核110以及非内核150和GPU170中的模块的功率值。
在一个实施例中,中断生成单元180可响应于接收到第一信号或第一更新信号而生成第一中断。在一个实施例中,第一中断可表明非内核域(诸如GPU170)可能正在进入功率节省状态(例如,或C状态Cx)。在一个实施例中,中断生成单元180可响应于接收到第二信号或第二更新信号而生成第二中断。在一个实施例中,第二中断可表明非内核域(诸如GPU170)可能正在退出功率节省状态(Cx)。在一个实施例中,中断生成单元180所生成的中断可以是成对的形式并且可通过与中断相关联的标识符来标识。
例如,第一中断和第二中断可用于确定GPU170在功率状态Cx下的实际驻留时间,因此,第一中断(IF_170_x)和第二中断(SI_170_x)可由非内核域标识符(即,用于GPU的170)以及然后功率节省状态(即Cx)标识符来标识。同样,第一(IF_170_y)和第二中断(SI_170_y)可表示一对用于测量GPU170在功率节省状态Cy下的驻留状态。同样,第一(IF_170_y)和第二中断(SI_170_y)可表示一对,其用于测量非内核150在功率节省状态Cy下的驻留状态。
在一个实施例中,驱动器190或OS195可使用第一中断(IF_170_x)来用开始值(或第一值)发起计数器/计时器175。在一个实施例中,计数器/计时器175的启动(onset)表明GPU170已经进入功率节省状态Cx。在一个实施例中,驱动器190或OS195可响应于接收到第二中断(SF_170_x)来停止或停止计数器/计时器175。在一个实施例中,驱动器190可表示图形驱动器。在一个实施例中,为了清晰,计数器/计时器175被示出为处理器101内的分离的模块。但是,计数器/计时器模块175可被设置在内核105、非内核150、或GPU170内。
图2展示了描绘处理器100的操作的流程图,该处理器100可根据一个实施例基于非内核域在功率节省状态下的实际驻留时间确定处理器的最佳功率节省状态。
在方框205,处理内核(诸如处理内核110-A)可确定非内核域(例如,GPU170)是否正在进入功率节省状态(例如,Cx),并且,如果非内核域正在进入功率节省状态,则控制前进到方框220,否则自循环(loopback)。在一个实施例中,处理内核110-A或任意其他组件(诸如功率管理单元168、专用微控制器、逻辑电路、固件、软件、或其任意组件的组合)可判定非内核域是否正在进入功率节省状态并且可使用诸如AAL108的寄存器中的状态值的内容来做出这种判定。
在一个实施例中,AAL108可存储处理内核110-A以及还有非内核域170的活动等级、工作负荷等级、使用率等级、指令吞吐量、热等级、电压、电流、时钟频率值以及其他此类状态值。在一个实施例中,可使用专用传感器或提供用于监控状态值的检测设备来获取活动等级、工作负荷等级、使用率等级、指令吞吐量、热等级、电压、电流和频率值。在其他实施例中,非内核域170可具有用于存储状态值的寄存器,并且处理内核110-A可检取这种状态值,以便确定非内核域170是否正在进入或退出功率节省状态。在其他实施例中,处理内核110-A可接收非内核域170的状态,并且非内核域170可确定非内核170是否正在进入或退出功率节省状态。
在方框220,处理内核110-A或功率控制单元168可分别通过向中断生成单元180发送第一信号或第一更新信号来启动中断生成单元180。
在方框230,OS195或设备驱动器190可检查中断生成单元180是否生成了进入(entry)中断(或第一中断),并且如果生成了进入中断,控制前进到方框240,否则自循环。
在方框240,OS195或设备驱动器190可将计数器/计时器175初始化到第一值(或开始值)并且可允许计数器/计时器175计数。在一个实施例中,计数器/计时器175可被提供有时钟信号,并且时钟信号的频率可被设置为使得计数器/计时器175所寄存的值可表示非内核域在功率节省状态下的实际驻留时间。
在方框250,处理内核(诸如处理内核110-A)可确定非内核域(例如,GPU170)是否正在退出功率节省状态(例如,Cx),并且,如果非内核域退出功率节省状态,控制前进到方框260,否则自循环。在一个实施例中,处理内核110-A或任意其他组件(诸如功率管理单元168、专用微控制器、逻辑电路、固件、软件、或其任意组件的组合)可确定非内核域是否正在退出功率节省状态并且可使用寄存器诸如AAL108中的状态值的内容来做出这种确定。在一个实施例中,处理内核110-A可包含上述状态值,以便确定非内核域170是否正在退出功率节省状态。
在方框260,处理内核110-A或功率控制单元168可分别通过向中断生成单元180发送第二信号或第二更新信号来启动中断生成单元180。
在方框270,OS195或设备驱动器190可检查中断生成单元180是否生成了退出中断(或第二中断),并且如果生成了退出中断,控制前进到方框280,否则自循环。
在方框280,OS195或设备驱动器190可停止或停止计数器/计时器175,并且计数器/计时器175所寄存的第二值(或终值)可被检取并存储在寄存器中。
在方框290,功率控制单元168可测量或确定非内核域(诸如GPU170)在功率节省状态Cx下的驻留时间。在一个实施例中,功率管理单元168可使用第一(或开始)和第二(终)值确定实际驻留时间。在方框295,功率管理单元168可将非内核域的实际驻留时间存储在存储器(诸如驻留时间寄存器RTR168-1)中。
图3展示描绘功率管理单元的操作的流程图,根据一个实施例,所述操作可基于非内核域在功率节省状态下的实际驻留时间确定处理器的最佳功率节省状态。
在方框310,功率管理单元168可检取存储在寄存器(诸如RTR168-1)中的实际驻留时间值。在方框340,功率管理单元340可基于存储在RTR168-1中的实际驻留时间值确定非内核域(诸如GPU170)、或处理器101、或非内核域(诸如GPU170)和处理器101二者的最佳功率状态(P状态)。在一个实施例中,功率管理单元168可使用实际驻留时间值确定处理器101的最佳功率节省状态(P状态),并且其结果是,最佳功率节省状态(例如,Px)可不同于以其他方式基于所测算的驻留时间值来确定的非最佳功率节省状态(Pk)
在方框360,功率管理单元168可检查功率状态是否需要从PL改变到例如Px以便利用实际驻留时间值的测量所提供的功率节省机会。如果功率状态需要从PL改变到Px,控制前进到方框380,否则自循环。
在方框380,功率管理单元168可基于功率管理单元168在方框340中确定的最佳功率状态将处理器101的功率状态从PL状态改变到Px状态。
图4展示计算机系统400,根据一个实施例,该计算机系统可支持基于非内核域在功率节省状态下的实际驻留时间确定处理器的最佳功率节省状态。计算机系统400可包括处理器402,处理器402可包括多个域,诸如内核区域(area)403、非内核区域404、非内核域405、以及功率管理单元PMU406、和中断生成器407。例如,内核区域可包括许多处理内核,并且非内核区域可包括存储器控制器、末级高速缓存、归属代理、高速缓存代理、路由代理、全局时钟或PLL、以及接口。并且,非内核域405可表示图形处理单元GPU。在一个实施例中,这些域可包括单指令多数据(SIMD)处理器。在一个实施例中,处理内核、中断生成单元407以及PMU406可一起合作运行以便确定非内核域407在功率节省状态(Cx)下的实际驻留时间,并且实际驻留时间值可用于确定上述处理器402的最佳功率节省状态(Px)。处理器402可支持包括图形设备驱动器的各种设备驱动器。
运行计算机系统400的处理器402可以是耦联到逻辑430的一个或多个处理器内核。逻辑430可耦联到一个或多个I/O设备460,I/O设备460可提供到计算机系统400的接口。例如,在一个实施例中,逻辑430可以是芯片集逻辑。逻辑430耦联到存储器420,存储器420可以是任意种类的存储,包括光、磁、或半导体存储。非内核域405(诸如图形处理器单元)可通过帧缓冲器耦联到显示器440。在一个实施例中,机器可读存储介质425可包括操作系统。在其他实施例中,存储器420可存储操作系统。
在一个实施例中,处理器402可确定非内核域405在功率节省状态(多种)下的实际驻留时间,并且基于实际驻留时间,处理器402可确定处理器402的合适P状态。在一个实施例中,处理内核可确定非内核域405是否正在进入功率节省状态(例如,Cx)并且可生成到中断生成器IG407的启动信号,中断生成器IG407进而可生成第一中断(或进入中断)。在一个实施例中,设备驱动器或操作系统可使用第一中断开始计时器/计数器408。
在一个实施例中,IG407可响应于非内核域退出功率节省状态接收第二信号。在一个实施例中,处理内核可将第二信号发送到IG407。在一个实施例中,OS、或设备驱动器、或逐个处理内核之一可将停止或停止信号发送到计时器/计数器408。在一个实施例中,由计时器/计数器408寄存的终值可被存储到寄存器中。在一个实施例中,终值和第一值可用于确定当非内核域在驻留功率节省状态(Cx)下时的实际驻留时间。在一个实施例中,实际驻留时间值可用于确定处理器402的最佳功率节省状态(P状态)。其结果是,与基于驻留时间的测算选择的功率节省状态相比,为处理器402选择的最佳功率节省状态可提供机会来节约更多的功率。
已经参照示例实施例描述了本发明的某些特征。然而,不旨在以限制性的意义解释本说明。对本发明所涉及的对本领域普通技术人员明显的本发明的示例实施例以及其他实施例各种修改被认为落入本发明的精神和范围内。
Claims (20)
1.一种节约功率的处理器,包括:
多个域,包括内核域和非内核域,
中断生成器,用于响应于所述非内核域进入功率节省状态生成第一中断以及响应于所述非内核域退出所述功率节省状态生成第二中断,
耦联到所述处理器的操作系统,用于响应于所述第一中断的发生启动计时器并且响应于所述第二中断的发生停止所述计时器,以及
功率管理单元,用于使用第一值和第二值确定所述非内核域在所述功率节省状态下的实际驻留时间,其中所述第一值响应于启动所述计时器而寄存在所述计时器内,并且所述第二值响应于停止所述计时器而寄存在所述计时器内,
其中,所述非内核域的所述实际驻留时间用于控制所述非内核域的功率状态。
2.如权利要求1所述的处理器,其中,所述功率管理单元用于基于所述实际驻留时间确定最佳功率节省状态。
3.如权利要求1所述的处理器,所述内核域进一步包括多个处理内核,其中所述多个内核中的一个处理内核用于响应于所述非内核域进入所述功率节省状态而生成第一信号。
4.如权利要求3所述的处理器,其中,所述处理内核用于基于所述非内核域的活动值确定所述非内核域正在进入所述功率节省状态。
5.如权利要求4所述的处理器,其中,所述处理内核包括用于存储状态值的寄存器,所述状态值包括与所述非内核域相关的活动值、热值、指令吞吐量、工作负荷、使用率值、电压、电流和频率值,其中,所述处理内核用于基于所述状态值中的一个或多个确定所述非内核域正在进入所述功率节省状态。
6.如权利要求5所述的处理器,其中,所述处理内核用于基于所述状态值来判定进入所述功率节省状态和从所述功率节省状态退出,其中,所述非内核域用于为所述处理内核提供状态更新,并且所述状态更新用于指示所述非内核域是否正在进入或退出所述功率节省状态。
7.如权利要求1所述的处理器,所述功率管理单元进一步包括用于存储所述非内核域在不同功率节省状态下的实际驻留时间的驻留时间寄存器,并且所述功率管理单元用于至少部分地基于所述非内核域的所述实际驻留时间改变所述处理器的所述功率节省状态。
8.一种在处理器中节约功率的方法,包括:
响应于非内核进入功率节省状态生成第一中断以及响应于非内核退出所述功率节省状态生成第二中断,其中,所述处理器包括多个域,所述多个域包括内核域和非内核域,
响应于所述第一中断的发生启动计时器并且响应于所述第二中断的发生停止所述计时器,其中,耦联到所述处理器的设备驱动器用于启动和停止所述计时器,以及
使用第一值和第二值确定所述非内核域进入所述功率节省状态的实际驻留时间,其中功率管理单元耦联到所述处理器用于使用所述第一值和第二值确定所述实际驻留时间,其中,所述第一值响应于发起所述计时器寄存在所述计时器内并且所述第二值响应于停止所述计时器寄存在所述计时器内,
其中,所述非内核域的所述实际驻留时间用于控制所述非内核域的功率状态。
9.如权利要求8所述的方法,包括基于所述实际驻留时间确定所述处理器的最佳功率节省状态。
10.如权利要求8所述的方法,包括响应于所述非内核域进入所述功率节省状态而生成第一信号。
11.如权利要求10所述的方法,包括基于所述非内核域的活动值确定所述非内核域正在进入所述功率节省状态。
12.如权利要求11所述的方法,包括,
将状态值存储在寄存器中,其中,所述状态值包括与所述非内核域相关的活动值、热值、指令吞吐量、工作负荷、使用率值、电压、电流和频率值中的至少一个,以及
基于所述状态值中的一个或多个确定所述非内核域正在进入所述功率节省状态。
13.如权利要求12所述的方法,包括,
从所述非内核域接收状态更新,以及
基于所述状态值来判定进入所述功率节省状态和从所述功率节省状态退出,其中,所述状态更新用于指示所述非内核域是否正在进入或退出所述功率节省状态。
14.如权利要求8所述的方法,包括,
将所述非内核域在不同功率节省状态下的所述实际驻留时间存储在驻留时间寄存器中,以及
至少部分地基于所述非内核域的所述实际驻留时间改变所述处理器的所述功率节省状态。
15.一种用于节约功率的计算机系统,包括:
多个输入输出设备,
机器可读介质,
逻辑,
耦联到所述处理器的操作系统,用于响应于所述第一中断的发生启动计时器并且响应于所述第二中断的发生停止所述计时器,以及
处理器,其中,所述处理器包括,
多个内核和非内核域,
中断生成器,用于响应于所述非内核域进入功率节省状态而生成第一中断以及响应于所述非内核域退出所述功率节省状态而生成第二中断,以及
功率管理单元,用于使用第一值和第二值确定所述非内核域在所述功率节省状态中的实际驻留时间,其中所述第一值响应于启动所述计时器而寄存在所述计时器内,并且所述第二值响应于停止所述计时器而寄存在所述计时器内,
其中,所述非内核域的所述实际驻留时间用于控制所述非内核域的功率状态。
16.如权利要求15所述的计算机系统,所述功率管理单元进一步包括用于存储所述非内核域在不同功率节省状态下的实际驻留时间的驻留时间寄存器,其中所述功率管理单元用于至少部分地基于所述非内核域的所述实际驻留时间改变所述处理器的所述功率节省状态。
17.如权利要求16所述的计算机系统,所述内核域进一步包括多个处理内核,其中所述多个内核中的一个处理内核用于响应于所述非内核域进入所述功率节省状态生成第一信号。
18.如权利要求17所述的计算机系统,其中,所述处理内核用于基于所述非内核域的活动值确定所述非内核域正在进入所述功率节省状态。
19.如权利要求18所述的计算机系统,其中,所述处理内核包括用于存储状态值的寄存器,所述状态值包括与所述非内核域相关的活动值、热值、指令吞吐量、工作负荷、使用率值、电压、电流和频率值,其中,所述处理内核用于基于所述状态值中的一个或多个确定所述非内核域正在进入所述功率节省状态。
20.如权利要求19所述的计算机系统,其中,所述处理内核用于基于所述状态值来判定进入所述功率节省状态和从所述功率节省状态退出,其中,所述非内核域用于为所述处理内核提供状态更新,并且所述状态更新用于指示所述非内核域是否正在进入或退出所述功率节省状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/311,475 | 2011-12-05 | ||
US13/311,475 US8972763B2 (en) | 2011-12-05 | 2011-12-05 | Method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state |
PCT/US2012/068039 WO2013086054A2 (en) | 2011-12-05 | 2012-12-05 | A method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103959202A true CN103959202A (zh) | 2014-07-30 |
CN103959202B CN103959202B (zh) | 2017-03-01 |
Family
ID=46381877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280059871.XA Active CN103959202B (zh) | 2011-12-05 | 2012-12-05 | 包括基于非核域在功率节省状态下的驻留时间确定装置的最佳功率状态的用于能量效率和能量节约的方法、装置及系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8972763B2 (zh) |
CN (1) | CN103959202B (zh) |
TW (1) | TWI514128B (zh) |
WO (1) | WO2013086054A2 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8972763B2 (en) * | 2011-12-05 | 2015-03-03 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state |
US9740265B2 (en) * | 2014-05-12 | 2017-08-22 | Qualcomm Incorporated | Electronic device for extending battery life in mobile applications |
US20150378920A1 (en) * | 2014-06-30 | 2015-12-31 | John G. Gierach | Graphics data pre-fetcher for last level caches |
US10275008B2 (en) | 2016-09-22 | 2019-04-30 | Intel Corporation | Methods and apparatus to reduce computing device power consumption |
US11175938B2 (en) | 2019-04-25 | 2021-11-16 | Red Hat, Inc. | Central processing unit support for efficient timers at low power states |
US11537420B2 (en) | 2019-04-25 | 2022-12-27 | Red Hat, Inc. | Power management for virtualized computer systems |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1573656A (zh) * | 2003-05-27 | 2005-02-02 | 日本电气株式会社 | 并行处理系统中的电源管理系统及电源管理程序 |
US20090158067A1 (en) * | 2007-12-12 | 2009-06-18 | Bodas Devadatta V | Saving power in a computer system |
US20100077243A1 (en) * | 2008-09-25 | 2010-03-25 | Ren Wang | Conserving power in a computer system |
EP2383648A1 (en) * | 2010-04-28 | 2011-11-02 | Telefonaktiebolaget L M Ericsson (PUBL) | Technique for GPU command scheduling |
Family Cites Families (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5163153A (en) | 1989-06-12 | 1992-11-10 | Grid Systems Corporation | Low-power, standby mode computer |
US5208540A (en) * | 1992-02-28 | 1993-05-04 | Coltec Industries Inc. | Ignition performance monitor and monitoring method for capacitive discharge ignition systems |
US5706407A (en) | 1993-12-28 | 1998-01-06 | Kabushiki Kaisha Toshiba | System for reallocation of memory banks in memory sized order |
US5522087A (en) | 1994-03-22 | 1996-05-28 | Verifone Inc. | System for selectively operating in different modes depending upon receiving signal from a host computer within a time window upon power up |
US5590341A (en) | 1994-09-30 | 1996-12-31 | Intel Corporation | Method and apparatus for reducing power consumption in a computer system using ready delay |
US5621250A (en) | 1995-07-31 | 1997-04-15 | Ford Motor Company | Wake-up interface and method for awakening an automotive electronics module |
US5931950A (en) | 1997-06-17 | 1999-08-03 | Pc-Tel, Inc. | Wake-up-on-ring power conservation for host signal processing communication system |
US6823516B1 (en) | 1999-08-10 | 2004-11-23 | Intel Corporation | System and method for dynamically adjusting to CPU performance changes |
US7539885B2 (en) | 2000-01-13 | 2009-05-26 | Broadcom Corporation | Method and apparatus for adaptive CPU power management |
US7010708B2 (en) | 2002-05-15 | 2006-03-07 | Broadcom Corporation | Method and apparatus for adaptive CPU power management |
JP2001318742A (ja) | 2000-05-08 | 2001-11-16 | Mitsubishi Electric Corp | コンピュータシステムおよびコンピュータ読み取り可能な記録媒体 |
KR100361340B1 (ko) | 2000-05-15 | 2002-12-05 | 엘지전자 주식회사 | 씨피유 클럭 제어 방법 |
US6792392B1 (en) | 2000-06-30 | 2004-09-14 | Intel Corporation | Method and apparatus for configuring and collecting performance counter data |
US6748546B1 (en) | 2000-09-26 | 2004-06-08 | Sun Microsystems, Inc. | Method and apparatus for reducing power consumption |
US6829713B2 (en) | 2000-12-30 | 2004-12-07 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
JP2002341973A (ja) * | 2001-05-15 | 2002-11-29 | Fujitsu Ltd | 情報処理装置及びリセット制御方法 |
US7058824B2 (en) | 2001-06-15 | 2006-06-06 | Microsoft Corporation | Method and system for using idle threads to adaptively throttle a computer |
US20030061383A1 (en) | 2001-09-25 | 2003-03-27 | Zilka Anthony M. | Predicting processor inactivity for a controlled transition of power states |
US7111179B1 (en) | 2001-10-11 | 2006-09-19 | In-Hand Electronics, Inc. | Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters |
US6996728B2 (en) | 2002-04-26 | 2006-02-07 | Hewlett-Packard Development Company, L.P. | Managing power consumption based on utilization statistics |
US7051227B2 (en) | 2002-09-30 | 2006-05-23 | Intel Corporation | Method and apparatus for reducing clock frequency during low workload periods |
US6898689B2 (en) | 2002-11-15 | 2005-05-24 | Silicon Labs Cp, Inc. | Paging scheme for a microcontroller for extending available register space |
US7043649B2 (en) | 2002-11-20 | 2006-05-09 | Portalplayer, Inc. | System clock power management for chips with multiple processing modules |
US6971033B2 (en) | 2003-01-10 | 2005-11-29 | Broadcom Corporation | Method and apparatus for improving bus master performance |
US7089443B2 (en) | 2003-01-23 | 2006-08-08 | University Of Rochester | Multiple clock domain microprocessor |
JP4061492B2 (ja) | 2003-02-10 | 2008-03-19 | ソニー株式会社 | 情報処理装置および消費電力制御方法 |
US7093147B2 (en) | 2003-04-25 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Dynamically selecting processor cores for overall power efficiency |
US7272732B2 (en) | 2003-06-30 | 2007-09-18 | Hewlett-Packard Development Company, L.P. | Controlling power consumption of at least one computer system |
TW200502847A (en) | 2003-07-08 | 2005-01-16 | Benq Corp | Control device and method for reducing number of interrupts in a processor |
US7146514B2 (en) | 2003-07-23 | 2006-12-05 | Intel Corporation | Determining target operating frequencies for a multiprocessor system |
US7272730B1 (en) | 2003-07-31 | 2007-09-18 | Hewlett-Packard Development Company, L.P. | Application-driven method and apparatus for limiting power consumption in a processor-controlled hardware platform |
US7194643B2 (en) | 2003-09-29 | 2007-03-20 | Intel Corporation | Apparatus and method for an energy efficient clustered micro-architecture |
US7770034B2 (en) | 2003-12-16 | 2010-08-03 | Intel Corporation | Performance monitoring based dynamic voltage and frequency scaling |
US7451333B2 (en) | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
US20070156992A1 (en) | 2005-12-30 | 2007-07-05 | Intel Corporation | Method and system for optimizing latency of dynamic memory sizing |
US9001801B2 (en) | 2004-09-07 | 2015-04-07 | Broadcom Corporation | Method and system for low power mode management for complex Bluetooth devices |
US7941585B2 (en) | 2004-09-10 | 2011-05-10 | Cavium Networks, Inc. | Local scratchpad and data caching system |
US7426648B2 (en) | 2004-09-30 | 2008-09-16 | Intel Corporation | Global and pseudo power state management for multiple processing elements |
US7434073B2 (en) | 2004-11-29 | 2008-10-07 | Intel Corporation | Frequency and voltage scaling architecture |
US7502948B2 (en) | 2004-12-30 | 2009-03-10 | Intel Corporation | Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores |
US8041967B2 (en) | 2005-02-15 | 2011-10-18 | Hewlett-Packard Development Company, L.P. | System and method for controlling power to resources based on historical utilization data |
US7454632B2 (en) | 2005-06-16 | 2008-11-18 | Intel Corporation | Reducing computing system power through idle synchronization |
US7430673B2 (en) | 2005-06-30 | 2008-09-30 | Intel Corporation | Power management system for computing platform |
US8301868B2 (en) | 2005-09-23 | 2012-10-30 | Intel Corporation | System to profile and optimize user software in a managed run-time environment |
US20070079294A1 (en) | 2005-09-30 | 2007-04-05 | Robert Knight | Profiling using a user-level control mechanism |
US20070106827A1 (en) | 2005-11-08 | 2007-05-10 | Boatright Bryan D | Centralized interrupt controller |
US20070245163A1 (en) | 2006-03-03 | 2007-10-18 | Yung-Hsiang Lu | Power management in computer operating systems |
US7437270B2 (en) | 2006-03-30 | 2008-10-14 | Intel Corporation | Performance state management |
US7752468B2 (en) | 2006-06-06 | 2010-07-06 | Intel Corporation | Predict computing platform memory power utilization |
US7529956B2 (en) | 2006-07-17 | 2009-05-05 | Microsoft Corporation | Granular reduction in power consumption |
US7930564B2 (en) * | 2006-07-31 | 2011-04-19 | Intel Corporation | System and method for controlling processor low power states |
US7694160B2 (en) * | 2006-08-31 | 2010-04-06 | Ati Technologies Ulc | Method and apparatus for optimizing power consumption in a multiprocessor environment |
US8442511B2 (en) * | 2006-09-05 | 2013-05-14 | Richard Woods | Mobile phone control employs interrupt upon excessive speed to force hang-up and transmit hang-up state to other locations |
US7730340B2 (en) | 2007-02-16 | 2010-06-01 | Intel Corporation | Method and apparatus for dynamic voltage and frequency scaling |
US8125243B1 (en) * | 2007-03-12 | 2012-02-28 | Cypress Semiconductor Corporation | Integrity checking of configurable data of programmable device |
WO2008117133A1 (en) | 2007-03-26 | 2008-10-02 | Freescale Semiconductor, Inc. | Anticipation of power on of a mobile device |
JP2008257578A (ja) | 2007-04-06 | 2008-10-23 | Toshiba Corp | 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法 |
KR20080102905A (ko) * | 2007-05-22 | 2008-11-26 | 삼성전자주식회사 | 디지털 시그널 프로세서의 인터럽트 타이밍 조절장치 및방법 |
US7971074B2 (en) | 2007-06-28 | 2011-06-28 | Intel Corporation | Method, system, and apparatus for a core activity detector to facilitate dynamic power management in a distributed system |
US8024590B2 (en) | 2007-12-10 | 2011-09-20 | Intel Corporation | Predicting future power level states for processor cores |
US20090150696A1 (en) | 2007-12-10 | 2009-06-11 | Justin Song | Transitioning a processor package to a low power state |
US8442697B2 (en) | 2007-12-18 | 2013-05-14 | Packet Digital | Method and apparatus for on-demand power management |
KR101459140B1 (ko) | 2007-12-26 | 2014-11-07 | 엘지전자 주식회사 | 전원관리 제어 장치 및 방법 |
US8156362B2 (en) | 2008-03-11 | 2012-04-10 | Globalfoundries Inc. | Hardware monitoring and decision making for transitioning in and out of low-power state |
US8954977B2 (en) | 2008-12-09 | 2015-02-10 | Intel Corporation | Software-based thread remapping for power savings |
US8458498B2 (en) | 2008-12-23 | 2013-06-04 | Intel Corporation | Method and apparatus of power management of processor |
KR101610828B1 (ko) | 2009-09-23 | 2016-04-08 | 삼성전자주식회사 | 멀티코어 프로세서의 인터럽트 온/오프 관리 장치와 방법 |
US8700943B2 (en) | 2009-12-22 | 2014-04-15 | Intel Corporation | Controlling time stamp counter (TSC) offsets for mulitple cores and threads |
US8972763B2 (en) * | 2011-12-05 | 2015-03-03 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state |
US9395788B2 (en) * | 2014-03-28 | 2016-07-19 | Intel Corporation | Power state transition analysis |
-
2011
- 2011-12-05 US US13/311,475 patent/US8972763B2/en active Active
-
2012
- 2012-12-05 CN CN201280059871.XA patent/CN103959202B/zh active Active
- 2012-12-05 TW TW101145657A patent/TWI514128B/zh active
- 2012-12-05 WO PCT/US2012/068039 patent/WO2013086054A2/en active Application Filing
-
2015
- 2015-01-23 US US14/603,955 patent/US9753531B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1573656A (zh) * | 2003-05-27 | 2005-02-02 | 日本电气株式会社 | 并行处理系统中的电源管理系统及电源管理程序 |
US20090158067A1 (en) * | 2007-12-12 | 2009-06-18 | Bodas Devadatta V | Saving power in a computer system |
US20100077243A1 (en) * | 2008-09-25 | 2010-03-25 | Ren Wang | Conserving power in a computer system |
EP2383648A1 (en) * | 2010-04-28 | 2011-11-02 | Telefonaktiebolaget L M Ericsson (PUBL) | Technique for GPU command scheduling |
Also Published As
Publication number | Publication date |
---|---|
TW201337538A (zh) | 2013-09-16 |
CN103959202B (zh) | 2017-03-01 |
WO2013086054A2 (en) | 2013-06-13 |
US8972763B2 (en) | 2015-03-03 |
US20120173904A1 (en) | 2012-07-05 |
US20150199002A1 (en) | 2015-07-16 |
US9753531B2 (en) | 2017-09-05 |
WO2013086054A3 (en) | 2013-08-01 |
TWI514128B (zh) | 2015-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102495756B (zh) | 操作系统在不同的中央处理器之间切换的方法及系统 | |
CN103959202A (zh) | 包括基于非内核域在功率节省状态下的驻留时间确定装置的最佳功率状态的用于能量效率和能量节约的方法、装置及系统 | |
CN103492976B (zh) | 管理多核处理器中的功耗 | |
US10048741B1 (en) | Bandwidth-aware multi-frequency performance estimation mechanism | |
KR20130087583A (ko) | 컴퓨터 플랫폼의 시스템 전력 상태를 전환하는 방법, 장치 및 시스템 | |
EP3803588A1 (en) | Embedded scheduling of hardware resources for hardware acceleration | |
US8806491B2 (en) | Thread migration to improve power efficiency in a parallel processing environment | |
CN103309431B (zh) | 动态频率调整 | |
CN104169832A (zh) | 提供处理器的能源高效的超频操作 | |
TW200945206A (en) | Method for automatic workload distribution on a multicore processor | |
TW201346507A (zh) | 根據處理器的使用動態修改電力/效能權衡的技術 | |
TWI564684B (zh) | 一般主機控制器延遲方法及設備 | |
US20190171273A1 (en) | Processor core energy management | |
EP3140728B1 (en) | Dynamic load balancing of hardware threads in clustered processor cores using shared hardware resources, and related circuits, methods, and computer-readable media | |
TW201346521A (zh) | 根據效率評等方案包含在處理器的多頻域間平衡電力的能量效率及節能方法,設備與系統 | |
Li et al. | Optimizing power consumption in multicore smartphones | |
WO2016105876A1 (en) | Enabling system low power state when compute elements are active | |
US20140025930A1 (en) | Multi-core processor sharing li cache and method of operating same | |
JP2016513322A (ja) | アイドル状態の間の電源ユニットによる電力消費の制御 | |
US20140013142A1 (en) | Processing unit power management | |
CN103903295A (zh) | 一种基于InfiniBand实时调度海量高精度三维场景数据的方法 | |
EP4163795A1 (en) | Techniques for core-specific metrics collection | |
US20170075589A1 (en) | Memory and bus frequency scaling by detecting memory-latency-bound workloads | |
CN103218031A (zh) | 电子装置以及休眠方法 | |
TW201531947A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |