CN103842934A - 用于降低功耗的基于优先级的应用事件控制(paec) - Google Patents
用于降低功耗的基于优先级的应用事件控制(paec) Download PDFInfo
- Publication number
- CN103842934A CN103842934A CN201280047653.4A CN201280047653A CN103842934A CN 103842934 A CN103842934 A CN 103842934A CN 201280047653 A CN201280047653 A CN 201280047653A CN 103842934 A CN103842934 A CN 103842934A
- Authority
- CN
- China
- Prior art keywords
- application
- processor
- policy information
- multiple application
- low power
- 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
Images
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/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/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
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
描述了用于减少应用事件的与基于优先级的应用事件控制(PAEC)相关的方法和装置。在一个实施例中,PAEC可以确定哪些应用(及其相对应的子系统)可以使处理器或平台退出低功耗状态。在实施例中,PAEC可以确定哪些应用(及其相对应的子系统)可以在处理器或平台退出低功耗状态之后恢复操作。也请求保护并且公开了其它实施例。
Description
技术领域
本公开通常涉及电子学领域。特别地,本发明的实施例涉及基于优先级的应用事件控制(PAEC)以便降低计算设备中的功耗。
背景技术
通常,计算系统中的最高功耗部件之一是处理器。为了降低功耗,一些实现可以尝试使处理器尽可能经常地并且长时间地进入睡眠或待机模式。然而,由于各种事件的发生,这些尝试可能会失败,例如由系统中的其它部件触发,这会迫使处理器退出较低功耗状态。
转而,较高功耗也会增加热量生成。过度的热量会损害计算机系统的部件。进而,较高的功率利用会增加电池消耗,例如在移动计算设备中,转而降低了移动设备在再充电之前被操作的时间量。附加功耗会附加地要求使用会更重的较大电池。较重的电池降低了移动计算设备的便携性或可用性。
因此,整体系统功耗和实用性可能直接与将处理器维持在较低功耗状态多长时间相关。
附图说明
参照附图提供了详细描述。在这些图中,附图标记的最左边数字识别该附图标记在其中首次出现的图。不同附图中相同附图标记的使用指示相似的或相同的项目。
图1、3和5-6说明了可以用于实现本文讨论的各种实施例的计算系统的实施例的方框图。
图2说明了根据实施例的计算系统的处理器核心和其它部件的部分的方框图。
图4说明了根据一些实施例的流程图。
具体实施方式
在下面的描述中,阐释了许多特定细节以便提供对各种实施例的透彻理解。然而,可以在没有这些特定细节的情况下来实践本发明的各种实施例。在其它实例中,没有详细地描述公知的方法、过程、部件和电路以便不使本发明的特定实施例难于理解。进而,可以使用诸如半导体集成电路(“硬件”)、被组织为一个或多个程序的计算机可读指令(“软件”)或者硬件和软件的一些组合的各种方式来执行本发明实施例的各个方面。出于本公开的目的,对“逻辑”的引用应该意味着任一硬件、软件和固件,或者它们的一些组合。并且,如在本文讨论地,“指令”和“微操作”(uop)的使用可互换。
本文讨论的一些实施例可以利用基于优先级的应用事件控制(PAEC)以便降低会导致处理器退出低功耗状态的应用事件的数量。在一个实施例中,PAEC可以在移动设备或任何其它类型的计算设备中使用。在实施例中,PAEC技术可以利用硬件(例如,SoC(芯片系统)或裸片上系统结构(OSF))来向应用(“app”)分配优先级并且将这些应用优先级或应用与平台子系统状态(模式)相关联,例如,基于优先级和/或策略配置来控制由平台功率感知应用和/或平台功率非感知应用生成的平台事件,例如,在不损害QOS(质量服务)或用户体验的情况下。在一个实施例中,PAEC通过将应用与平台子系统相关联来提供细粒度的功率管理,例如,提供指定和/或优先考虑哪些应用可以唤醒系统或处理器、哪些应用必须/可以在系统唤醒或处理器唤醒之后运行等等的机制,并且在不影响QOS要求和/或用户体验的情况下。
在一些实施例中,一个或多个应用的恢复(在平台/系统和/或处理器进入低功耗状态之后)可以通过PAEC基于一些策略(在本文也被互换地称为配置)信息或设置进行限制。在一些实施例中,这一信息可以是自适应的并且在运行时间期间改变。而且,一旦平台/系统和/或处理器从较低功耗状态退出,这一策略信息可以包括关于一个或多个应用和/或它们相关联的子系统是否、按照何种顺序、何时被唤醒和/或该一个或多个应用和/或它们相关联的子系统中的哪一个被唤醒。在实施例中,该策略信息也可以指示和/或优先考虑哪一个应用和/或子系统可以唤醒系统。
本文讨论的技术可以用于任何类型的计算系统,例如参照图1-2和5-6讨论的系统。特别地,图1说明了根据本发明实施例的计算系统100的方框图。系统100可以包括一个或多个处理器102-1到102-N(在本文通常被称为“多个处理器102”或“处理器102”)。处理器102可以经由互联网络或总线104进行通信。每一个处理器可以包括各种部件,为了清楚起见,仅参照处理器102-1来讨论其中的一些。因此,剩余处理器102-2到102-N中的每一个可以包括参照处理器102-1所讨论的相同的或相似的部件。
在实施例中,处理器102-1可以包括一个或多个处理器核心106-1到106-M(在本文被称为“多个核心106”或更通常地被称为“核心106”)、共享高速缓存108、路由器110和/或逻辑120。处理器核心106可以在单个集成电路(IC)芯片上实现。而且,所述芯片可以包括一个或多个共享和/或私有高速缓存(例如,高速缓存108)、总线或互连(例如,总线或互连网络112)、存储器控制器(例如参照图5-6讨论的那些)或其它部件。
在一个实施例中,路由器110可以用于在处理器102-1和/或系统100的各种部件之间进行通信。而且,处理器102-1可以包括多于一个路由器110。此外,多个路由器110可以进行通信以便启用处理器102-1内部和外部的各种部件之间的数据路由。
共享高速缓存108可以存储由诸如核心106的处理器102-1的一个或多个部件利用的数据(例如,包括指令)。例如,共享高速缓存108可以本地高速缓存存储在存储器114中的数据用于由处理器102的部件进行更加快速的访问。在实施例中,高速缓存108可以包括中级高速缓存(例如,级2(L2)、级3(L3)、级4(L4)或其它级的高速缓存)、最后级高速缓存和/或其组合。而且,处理器102-1的各种部件可以直接地、经过总线(例如,总线112)和/或存储器控制器或集线器与共享高速缓存108进行通信。如图1所示,在一些实施例中,核心106中的一个或多个可以包括级1(L1)高速缓存116-1(在本文通常被称为“L1高速缓存116”)。
在一个实施例中,PAEC逻辑120可以降低可能导致处理器/平台退出低功耗状态和/或在处理器/平台退出低功耗状态之后通过应用来限制操作的恢复(并且对其相对应的子系统加电)的应用事件的数量。逻辑120可以向可能存储在存储器114中的应用(“app”)分配优先级并且可以进一步将该应用与平台子系统状态(模式)相关联,例如,以便基于应用优先级和/或策略配置来控制由平台功率感知应用和/或平台功率非感知应用生成的平台事件,例如,在不损害QOS(质量服务)或用户体验的情况下。在一些实施例中,通过逻辑120执行的操作可以经由OS和/或软件应用(例如,可以存储在存储器114中)进行控制或配置,例如每用户或原始设备制造商(OEM)(在一些实施例中基于来自用户接口(例如,图3中的UI314)的信息)。此外,可以将与应用优先级和/或应用策略配置相关的信息存储在本文讨论的任何存储器中,例如包括存储器114和/或高速缓存108/116等等。
图2说明了根据本发明实施例的计算系统的处理器核心106和其它部件的部分的方框图。在一个实施例中,图2所示的箭头说明了指令经过核心106的流向。一个或多个处理器核心(例如,处理器核心106)可以在单个集成电路芯片(或裸片)上实现,如参照图1所讨论的。而且,芯片可以包括一个或多个共享和/或私有高速缓存(例如,图1的高速缓存108)、互连(例如,图1中的互连104和/或112)、控制单元、存储器控制器或其它部件。
如图2中说明的,处理器核心106可以包括获取指令(包括具有条件分支的指令)用于由核心106执行的获取单元202。该指令可以从诸如存储器114和/或参照图5-6讨论的存储器设备的任何存储设备获取。核心106也可以包括用于对获取的指令进行解码的解码单元204。例如,解码单元204可以将获取的指令解码为多个uop(微操作)。此外,核心106可以包括调度单元206。调度单元206可以执行与存储解码的指令(例如,从解码单元204接收)相关联的各种操作,直到该指令准备用于派遣(dispatch)为止,例如,直到解码的指令的所有源值变为可用为止。在一个实施例中,所述调度单元206可以向执行单元208调度和/或发出(或派遣)解码的指令用于执行。执行单元208可以在指令被解码(例如,通过解码单元204)和派遣(例如,通过调度单元206)之后执行所派遣的指令。在实施例中,执行单元208可以包括多于一个执行单元。执行单元208也可以执行各种算术运算,例如加法、减法、乘法和/或除法,并且可以包括一个或多个算术逻辑单元(ALU)。在实施例中,协处理器(未示出)可以结合执行单元208执行各种算术运算。
进而,执行单元208可以无序地执行指令。因而,在一个实施例中,处理器核心106可以是无序处理器核心。核心106也可以包括引退单元210。引退单元210可以在指令被提交之后引退所执行的指令。在实施例中,所执行的指令的引退会导致处理器状态从指令的执行到被提交,指令使用的物理寄存器被释放等等。
核心106也可以包括总线单元214,以便经由一个或多个总线(例如,总线104和/或112)启用处理器核心106的部件和其它部件(例如,参照图1所讨论的部件)之间的通信。核心106也可以包括一个或多个寄存器216,以便存储由核心106的各种部件访问的数据(例如,与分配的应用优先级和/或子系统状态(模式)关联性相关的值)。
而且,尽管图1说明了PAEC逻辑120经由互连112耦接到核心106,但是在各种实施例中,PAEC逻辑120可以位于其它地方,例如核心106的内部,经由总线104耦接到核心等等。
而且,当前一代的智能手机和上网本平台可以经由OSPM(操作系统功率管理)、PMU(功率管理单元)和SCU(系统控制器单元)支持粒度功率管理。SCU连同操作系统可以向平台提供常开常连接(AOAC)能力。基于OS功率管理器的向导,SCU可以对于平台中的不同子系统(包括CPU(中央处理单元)或处理器)确定正确的功率级别。类似定时器中断和来自通信模块的中断等等的外部事件可以被SCU转发到CPU,从而唤醒CPU。除了子系统中断之外,CPU也可以由于定时器或事件而由应用(app)唤醒,以便提供AOAC功能。这些唤醒减少了CPU在睡眠或深度睡眠状态的停留时间,导致附加功耗。并且,平台功率非感知应用可以是活动的,这导致CPU和其它子系统的唤醒,尽管功率管理器已经使平台进入待机/睡眠模式。此外,应用可以设置定时器并且周期性地唤醒CPU,尽管所考虑的资源不具有改变。
而且,一些当前的平台可以支持外部事件的合并,并且基于一些唤醒配置来等待/传送该事件(唤醒)。通常,当前实现无法对平台中的应用分配优先级并且将这些应用优先级与平台的不同操作模式(例如,浏览、视频回放等等)相关联,并且因此,应用会被冻结/解冻-进入睡眠/深度睡眠/待机状态或者被迫处于暂停状态或被允许以被运行。此外,通常不存在现有机制来指定并且优先考虑哪些应用可以将系统从暂停状态唤醒并且一旦平台唤醒,哪些应用必须/可以运行。例如,在一些当前系统中,SCU仅控制子系统状态而不是与其相关联的应用。并且,当前方法通常未能考虑在被迫进入睡眠/待机状态的应用/子系统上的QOS或用户体验。
图3说明了根据一些实施例可以在其中实现PAEC技术的系统300的方框图。为了提供计算和存储能力,系统300可以包括主机CPU(或GFX(图形))302(例如参照图1-2和5-6所讨论的处理器)、存储器304(例如参照图1-2和5-6所讨论的存储器)和驱动(例如,作为子系统1到X的一部分)。通常,所示出的子系统(如1、2到X)可以包括计算系统中的任何部件,例如参照图1-2和4-6所讨论的部件,这些部件能够被功率选通和/或能够唤醒计算系统/平台和/或处理器。
而且,系统300可以包括用于提供显示能力的显示控制器308、用于提供任何必要的密码操作和/或防篡改执行环境的硬件安全引擎310、被实现为OS部件以便在OS313内部运行的PAEC部件312(其中,在一个实施例中,PAEC312可以与OS313的调度器和OS功率管理器紧密结合,并且在一些实施例中,具有停止/冻结/解冻当前运行的处理/程序并且随后恢复的能力)、用于向管理员或用户提供指定优先级和/或将它们与平台中子系统的模式相关联的能力的PAEC UI(用户接口)314(根据一个实施例,其可以是应用部件)、用于提供存储由用户/管理员信息配置的PAEC策略的防篡改安全存储的安全存储316、以及用于提供精细的平台功率管理支持的SCU(系统控制器单元)和/或PMU(功率管理单元)318。
图4说明了根据一些实施例用于实现PAEC的方法的流程图。在实施例中,图4说明了根据一些实施例的PAEC逻辑120、PAEC部件312和/或PAEC UI314的操作。而且,参照图4所讨论的操作可以通过图1-3和图5-6中的一个或多个部件执行。
参照图1-4,一旦在402处启用了PAEC功能和/或在403处调用了PAECUI(例如,通过用户/OEM/OS等等,并且按照诸如比特的一些存储的值),在404处,PAEC UI314可以向用户提供存储在安全存储316中的当前策略设置。在406处,PAEC UI314可以向用户提供改变策略和/或优先级设置的选项。在408处,PAEC UI314可以允许用户或管理员向应用分配优先级并且将它们与子系统操作模式(例如,浏览或视频重放等等)相关联,例如以便更新策略设置。
在实施例中,在408处,可以通过OEM、OS或应用提供方来分配优先级。而且,在实施例中,可以在应用注册期间,基于由该应用置入的QOSAPI(应用程序接口)要求来确定和分配优先级。功率感知应用可以使用QOS API以便指定其QOS要求,该要求由PAEC机制(例如,项目120或312)例如作为向量使用,以便确定应用的优先级。在410处,基于策略设置,PAEC确定允许唤醒事件的阈值优先级,并且构建将在系统/平台恢复之后被冻结的应用的列表。在实施例中,该阈值优先级也可以确定PAEC在唤醒CPU之前可以延迟事件多长时间。
在412处,当平台将要进入(例如S0ix)平台低功率状态时,所有的应用被冻结并且处理执行被停止(例如,通过PAEC机制120或312),例如基于一些优先级方案和策略设置。“S0ix”通常指代由平台级别功率管理实现的改进的空闲功率状态,该平台级别功率管理是事件驱动的(例如基于OS或软件应用输入),而不是传统的周期性的或基于轮询活动的空闲功率状态。在一些实施例中,至少一些本文讨论的功耗状态可以依据2010年4月5日定义的高级配置和功率接口(ACPI)规范,版本4.0a,例如包括可以指示处理器正在操作的C0、可以指示处理器没有执行指令但是可以几乎瞬间地返回到执行状态的C1、可以指示处理器将维持所有软件可视信息但是可能花费更长的时间来返回到充分执行状态的C2、可以指示处理器处于睡眠状态并且不需要保持其高速缓存一致性的C3等等。
在一个实施例中,PAEC机制(例如,项目120或312)基于在应用注册或调用期间获得的信息来冻结应用。在一些实施例中,在412,对于PAEC不应该冻结的例外应用,PAEC可以配置为向这些应用分配最高/最低可用优先级以便允许其唤醒事件相应地到达CPU。PAEC可以向用户(如果已配置)发送关于这些应用的通知,例如,经由PAEC UI314,或者关于这些应用的日志信息。这允许用户在未来改写缺省设置。
在414处,基于配置设置,PAEC机制(例如,项目120或312)可以允许或限制选择的应用唤醒系统/处理器或者在运行后恢复(从诸如S0ix的低功耗状态)以便将相对应的子系统保持在低功率状态并且增加CPU在低功率状态下的停留。PAEC机制(例如,项目120或132)可以在平台(例如,S0ix)低功耗状态期间跟踪唤醒事件以便向策略管理器提供关于策略设置的反馈,用于参数的精细调整。这允许PAEC是自适应的,例如通过在运行时间期间跟踪唤醒事件。
在各种实施例中,PAEC在应用和子系统功率状态之间建立关系以便向OS/应用/功率管理器逻辑提供较大的灵活性,以便以非常细粒度的方式降低功率。并且,PAEC可以是自适应的并且可以不影响平台中的QOS或用户体验。在一些实施例中,PAEC是可配置的并且可以与诸如恶意软件程序、父母控制等等的部件集成以便限制特定应用。PAEC可以减少唤醒并且保持CPU在较长时间的空闲状态中。应用开发者可以平衡QOS API以便改善用户体验并且具有增强的功率节约。在一些实施例中,PAEC将应用与平台子系统操作模式相关联并且提供在从低功率状态恢复(例如,从S0ix状态唤醒)之后唤醒/运行选择的应用的选项。
在实施例中,PAEC能够基于策略设置屏蔽来自选择的子系统/应用的唤醒事件。进而,PAEC可以在随后的时间帧中合并并且传送低优先级唤醒。并且,PAEC可以基于其优先级设置和/或其相关联的子系统状态,在不损害用户体验或QOS的情况下,冻结应用,以便避免子系统在低功率(例如,S0ix)状态期间打开。也可以存在更多的每应用基础的配置“旋钮”的用户控制(用于安全优化等等)。并且,PAEC可以提供在安全存储上安全地存储策略设置的能力。
在一些实施例中,PAEC可以提供包括下面的一个或多个优点的几个优点:(1)向平台中的应用分配优先级并且将该应用与平台子系统操作模式相关联的能力。可以通过应用提供方/系统管理员/服务提供方或者也可以基于用户可配置的策略设置来分配优先级。而且,实施例允许应用基于其优先级进行分类,例如,以便提供更简易的应用管理。(2)PAEC可以配置为停止/冻结在覆盖区域中被屏蔽掉的应用以便避免其事件。(3)PAEC提供用于基于配置设置来唤醒选择的应用及其相关联的子系统的机制。PAEC提供从OS/应用方面的细粒度控制。(4)PAEC可以是自适应的,例如在暂停状态期间跟踪唤醒并且提供反馈以便精细地调整参数。(5)增加CPU及其它子系统在最低功率状态下的停留时间。(6)在防篡改的安全存储中存储用户配置政策。
图5说明了根据本发明实施例的计算系统500的方框图。计算系统500可以包括经由互联网络(或者总线)504进行通信的一个或多个中央处理单元(CPU)502或处理器。处理器502可以包括通用处理器、网络处理器(处理经过计算机网络503通信的数据)或其它类型的处理器(包括精简指令集计算机(RISC)处理器或复杂指令集计算机(CISC))。而且,处理器502可以具有单个或多个核心设计。具有多核心设计的处理器502可以在相同的集成电路(IC)裸片上集成不同类型的处理器核心。并且,具有多核心设计的处理器502可以被实现为对称或非对称的多处理器。在实施例中,处理器502中的一个或多个可以与图1所示的处理器102相同或相似。例如,处理器502中的一个或多个可以包括参照图1-4讨论的PAEC逻辑120。并且,参照图1-4讨论的操作可以通过系统500的一个或多个部件执行。
芯片集506也可以与互联网络504进行通信。芯片集506可以包括存储器控制集线器(MCH)508。MCH508可以包括与存储器512(可以与图1的存储器114相同或相似)进行通信的存储器控制器510。存储器512可以存储数据,包括可以通过CPU502执行的指令的序列,或者包括在计算系统500中的任何其它设备。例如,存储器512可以存储参照图3-4所讨论的PAEC312、OS313和/或PAEC UI314。在本发明的一个实施例中,存储器512可以包括一个或多个易失性存储(或存储器)设备,例如随机存取存储器(RAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)或其它类型的存储设备。也可以使用诸如硬盘的非易失性存储器。附加设备可以经由互联网络504进行通信,例如多个CUP和/或多个系统存储器。
MCH508也可以包括与显示设备516进行通信的图形接口514。在本发明的一个实施例中,图形接口514可以经由加速图形端口(AGP)与显示设备516进行通信。在本发明的实施例中,显示器516(例如,平板显示器)可以例如经过信号转换器与图形接口514进行通信,该信号转换器将存储在诸如视频存储器或系统存储器的存储设备中的图像的数字表示转换为由显示器516解释并且显示的显示信号。由显示设备产生的显示信号可以在由显示器516进行解释之前通过各种控制设备并且随后在显示器516上进行显示。
集线器接口518可以允许MCH508和输入/输出控制集线器(ICH)520进行通信。ICH520可以提供到I/O设备的接口,该I/O设备与计算系统500进行通信。ICH520可以经过诸如外围部件互连(PCI)桥、通用串行总线(USB)控制器或其它类型的外围桥或控制器的外围桥(或控制器)524与总线522进行通信。桥524可以提供在CPU502和外围设备之间的数据路径。也可以利用其它类型的拓扑结构。并且,多条总线可以例如经过多个桥或控制器与ICH520进行通信。而且,在本发明各种实施例中,与ICH520进行通信的其它外围设备可以包括集成驱动电子设备(IDE)或者小型计算机系统接口(SCSI)硬驱、USB端口、键盘、鼠标、触摸屏、相机、并行端口、串行端口、软盘驱动、数字输出支持(例如,数字视频接口(DVI))或其它设备。
总线522可以与音频设备526、一个或多个磁盘驱动528以及网络接口设备530(与计算机网络503通信)进行通信。其它设备可以经由总线522进行通信。并且,在本发明的一些实施例中,各种部件(例如,网络接口设备530)可以与MCH508进行通信。此外,可以组合处理器502和MCH508以便形成单个芯片。而且,在本发明的其它实施例中,图形加速器516可以包括在MCH508内。
而且,计算系统500可以包括易失性和/或非易失性存储器(或存储)。例如,非易失性存储器可以包括下列中的一个或多个:只读存储器(ROM)、可编程只读存储器(PROM)、可擦除PROM(EPROM)、电EPROM(EEPROM)、磁盘驱动(例如,528)、软盘、压缩盘ROM(CD-ROM)、数字通用盘(DVD)、闪存、磁光盘或者能够存储电子数据(例如,包括指令)的其它类型的非易失性机器可读介质。
图6说明了根据本发明实施例的布置在点对点(PtP)配置中的计算系统600。特别地,图6示出了系统,其中处理器、存储器和输入/输出设备通过多个点对点接口互连。参照图1-5所讨论的操作可以通过系统600的一个或多个部件执行。
如图6中说明的,系统600可以包括几个处理器,为了清晰起见,仅示出了其中的两个处理器602和604。处理器602和604可以分别包括本地存储器控制器集线器(MCH)606和608以便使能与存储器610和612的通信。存储器610和/或612可以存储各种数据,例如参照图5的存储器512所讨论的各种数据。
在实施例中,处理器602和604可以是参照图5所讨论的处理器502中的一个。处理器602和604可以分别使用点对点(PtP)接口电路616和618经由PtP接口614来交换数据。并且,处理器602和604可以使用点对点接口电路626、628、630和632经由单独的PtP接口622和624分别与芯片集620交换数据。芯片集620可以进一步经由图形接口636与图形电路634交换数据,例如使用PtP接口电路637。
可以在处理器602和604内提供本发明的至少一个实施例。例如,图1-4中的PAEC逻辑120可以位于处理器602和604内。然而,本发明的其它实施例可以存在于图6的系统600中的其它电路、逻辑单元或设备中。而且,本发明的其它实施例可以贯穿图6中说明的几个电路、逻辑单元或设备进行分布。
芯片集620可以使用PtP接口电路641与总线640进行通信。总线640可以与诸如总线桥642和I/O设备643的一个或多个设备进行通信。经由总线644,总线桥642可以与诸如键盘/鼠标/触摸屏/相机645、通信设备646(例如调制解调器、网络接口设备或者可以与计算机网络503进行通信的其它通信设备)、音频I/O设备647和/或数据存储设备648的其它设备进行通信。所述数据存储设备648可以存储可以由处理器602和/或604执行的代码649。
在本发明的各种实施例中,可以将例如参照图1-6在本文讨论的操作实现为硬件(例如,逻辑电路)、软件、固件或其组合,这些可以作为计算机程序产品来提供,例如包括其上存储有指令(或者软件程序)的(例如,非暂态)机器可读或计算机可读介质,该指令用于对计算机进行编程以便执行在本文讨论的处理。所述机器可读介质可以包括例如参照图1-6所讨论的那些存储设备。
此外,这样的计算机可读介质可以被下载为计算机程序产品,其中该程序可以通过体现在载波或其它传播介质中的数据信号的方式经由通信链路(例如,总线、调制调解器或网络连接)从远程计算机(例如,服务器)传送到请求计算机(例如,客户端)。
在本说明书中对“一个实施例”、“实施例”或“一些实施例”的引用意味着结合所述实施例描述的特定特征、结构或特性可以包括在至少一个实现中。短语“在一个实施例中”在说明书中各种位置中的出现可以指代或者不指代相同的实施例。
并且,在说明书和权利要求书中,可以使用词语“耦接”和“连接”及其衍生词。在本发明的一些实施例中,“连接”可以用于指示两个或更多个元件彼此直接的物理或电学接触。“耦接”可以意味着两个或更多个元件直接物理或电学接触。但是,“耦接”也可以意味着两个或更多个元件可以彼此不直接接触,但是仍然可以协同操作或交互。
因而,尽管按照对于结构特征和/或方法动作特定的语言描述了本发明的实施例,但是将理解,请求保护的主题并不局限于所描述的特定特征或动作。而是,所述特定特征和动作被公开作为实现请求保护的主题的样例形式。
Claims (30)
1.一种装置,包括:
处理器;以及
用于基于与多个应用相对应的策略信息并且在所述处理器将退出低功耗状态之后允许执行所述多个应用中的一个或多个应用的逻辑,
其中,所述策略信息用于指示所述多个应用中的哪一个应用将在所述处理器退出所述低功耗状态之后被唤醒。
2.如权利要求1所述的装置,其中,所述逻辑用于基于所述策略信息并且在所述处理器将退出所述低功耗状态之后允许与所述多个应用中的所述一个或多个应用相对应的一个或多个子系统被加电。
3.如权利要求2所述的装置,其中,所述策略信息用于指示所述一个或多个子系统中的哪一个子系统与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
4.如权利要求2所述的装置,其中,所述策略信息用于指示所述一个或多个子系统中的哪一个功率状态与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
5.如权利要求1所述的装置,其中,所述逻辑用于优先考虑所述多个应用中的所述一个或多个应用中的哪一个应用被允许将所述处理器从所述低功耗状态唤醒。
6.如权利要求1所述的装置,其中,所述多个应用包括一个或多个平台功率感知应用或者一个或多个平台功率非感知应用。
7.如权利要求1所述的装置,其中,所述处理器包括多个处理器核心。
8.如权利要求1所述的装置,其中,存储器中的一个或多个、所述处理器和所述逻辑位于相同的集成电路设备上。
9.一种装置,包括:
处理器;以及
用于基于与多个应用相对应的策略信息允许所述多个应用中的一个或多个应用使所述处理器从低功耗状态退出的逻辑,
其中,所述策略信息用于指示所述多个应用中的哪一个应用被允许使所述处理器从所述低功耗状态退出。
10.如权利要求9所述的装置,其中,所述逻辑用于基于所述策略信息允许与所述多个应用中的所述一个或多个应用相对应的一个或多个子系统使所述处理器退出所述低功耗状态。
11.如权利要求10所述的装置,其中,所述策略信息用于指示所述一个或多个子系统中的哪一个子系统与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
12.如权利要求10所述的装置,其中,所述策略信息用于指示所述一个或多个子系统中的哪一个功率状态与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
13.如权利要求9所述的装置,其中,所述逻辑用于优先考虑所述多个应用中的所述一个或多个应用中的哪一个应用被允许将所述处理器从所述低功耗状态唤醒。
14.如权利要求9所述的装置,其中,所述多个应用包括一个或多个平台功率感知应用或者一个或多个平台功率非感知应用。
15.如权利要求9所述的装置,其中,所述处理器包括多个处理器核心。
16.如权利要求9所述的装置,其中,存储器中的一个或多个、所述处理器和所述逻辑位于相同的集成电路设备上。
17.一种用于存储指令的计算机可读介质,当由处理器执行时,所述指令使所述处理器执行下列操作:
基于与多个应用相对应的策略信息并且在所述处理器退出低功耗状态之后,允许执行所述多个应用中的一个或多个应用,
其中,所述策略信息指示所述多个应用中的哪一个应用将在所述处理器退出所述低功耗状态之后被唤醒。
18.如权利要求17所述的计算机可读介质,其中,所述指令使所述处理器基于所述策略信息并且在所述处理器退出所述低功耗状态之后允许与所述多个应用中的所述一个或多个应用相对应的一个或多个子系统被加电。
19.如权利要求18所述的计算机可读介质,其中,所述策略信息指示所述一个或多个子系统中的哪一个子系统与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
20.如权利要求18所述的计算机可读介质,其中,所述策略信息指示所述一个或多个子系统中的哪一个功率状态与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
21.如权利要求17所述的计算机可读介质,其中,所述指令使所述处理器优先考虑所述多个应用中的所述一个或多个应用中的哪一个应用被允许将所述处理器从所述低功耗状态唤醒。
22.如权利要求17所述的计算机可读介质,其中,所述多个应用包括一个或多个平台功率感知应用或者一个或多个平台功率非感知应用。
23.如权利要求17所述的计算机可读介质,其中,耦接到所述处理器的存储器用于存储操作系统软件。
24.一种用于存储指令的计算机可读介质,当由处理器执行时,所述指令使所述处理器执行下列操作:
基于与多个应用相对应的策略信息允许所述多个应用中的一个或多个应用使所述处理器从低功耗状态退出,
其中,所述策略信息指示所述多个应用中的哪一个应用被允许使所述处理器从所述低功耗状态退出。
25.如权利要求24所述的计算机可读介质,其中,所述指令用于使所述处理器基于所述策略信息并且在所述处理器退出所述低功耗状态之前允许与所述多个应用中的所述一个或多个应用相对应的一个或多个子系统使所述处理器退出所述低功耗状态。
26.如权利要求25所述的计算机可读介质,其中,所述策略信息指示所述一个或多个子系统中的哪一个子系统与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
27.如权利要求25所述的计算机可读介质,其中,所述策略信息指示所述一个或多个子系统中的哪一个功率状态与所述多个应用中的所述一个或多个应用中的哪一个应用相对应。
28.如权利要求24所述的计算机可读介质,其中,所述指令用于使所述处理器优先考虑所述多个应用中的所述一个或多个应用中的哪一个应用被允许将所述处理器从所述低功耗状态唤醒。
29.如权利要求24所述的计算机可读介质,其中,所述多个应用包括一个或多个平台功率感知应用或者一个或多个平台功率非感知应用。
30.如权利要求24所述的计算机可读介质,其中,耦接到所述处理器的存储器用于存储操作系统软件。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN2849/DEL/2011 | 2011-09-30 | ||
IN2849DE2011 | 2011-09-30 | ||
PCT/US2012/057525 WO2013049326A2 (en) | 2011-09-30 | 2012-09-27 | Priority based application event control (paec) to reduce power consumption |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103842934A true CN103842934A (zh) | 2014-06-04 |
CN103842934B CN103842934B (zh) | 2017-08-15 |
Family
ID=47996734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280047653.4A Active CN103842934B (zh) | 2011-09-30 | 2012-09-27 | 用于降低功耗的装置和方法 |
Country Status (7)
Country | Link |
---|---|
US (3) | US9383803B2 (zh) |
EP (2) | EP2761395A4 (zh) |
JP (1) | JP5932044B2 (zh) |
KR (1) | KR101597167B1 (zh) |
CN (1) | CN103842934B (zh) |
TW (1) | TWI556092B (zh) |
WO (1) | WO2013049326A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753311A (zh) * | 2017-11-07 | 2019-05-14 | 三星电子株式会社 | 包括命令优先级策略管理的半导体设备和相关系统 |
WO2019128586A1 (zh) * | 2017-12-29 | 2019-07-04 | Oppo广东移动通信有限公司 | 应用程序处理方法、电子设备、计算机可读存储介质 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10474213B1 (en) * | 2005-05-30 | 2019-11-12 | Invent.Ly, Llc | Predictive power management in a wireless sensor network using scheduling data |
TWI556092B (zh) | 2011-09-30 | 2016-11-01 | 英特爾公司 | 用以減少電力消耗之基於優先順序的應用程式事件控制技術 |
US9588568B2 (en) * | 2012-11-16 | 2017-03-07 | Samsung Electronics Co., Ltd. | Monitoring and managing processor activity in power save mode of portable electronic device |
US10007323B2 (en) | 2012-12-26 | 2018-06-26 | Intel Corporation | Platform power consumption reduction via power state switching |
US9904575B2 (en) | 2013-05-15 | 2018-02-27 | Apple Inc. | System and method for selective timer rate limiting |
US9703355B2 (en) * | 2013-08-28 | 2017-07-11 | Qualcomm Incorporated | Method, devices and systems for dynamic multimedia data flow control for thermal power budgeting |
TW201516634A (zh) * | 2013-10-16 | 2015-05-01 | Wistron Corp | 磁碟陣列儲存裝置、伺服器系統及其電源管理方法 |
USRE49652E1 (en) | 2013-12-16 | 2023-09-12 | Qualcomm Incorporated | Power saving techniques in computing devices |
CN110058889B (zh) * | 2014-08-21 | 2023-10-20 | 斑马智行网络(香港)有限公司 | 一种应用唤醒方法及装置 |
EP3286655A4 (en) * | 2015-04-18 | 2018-12-12 | INTEL Corporation | Multimodal interface |
US9958933B2 (en) | 2015-06-04 | 2018-05-01 | Apple Inc. | Opportunistic waking of an application processor |
TWI612475B (zh) * | 2015-09-09 | 2018-01-21 | 緯創資通股份有限公司 | 伺服器及其控制方法 |
WO2017099793A1 (en) | 2015-12-11 | 2017-06-15 | Hewlett Packard Enterprise Development Lp | Subscription to a subset of switching events |
EP3458948A4 (en) * | 2016-06-16 | 2019-05-22 | Samsung Electronics Co., Ltd. | METHOD FOR PROVIDING NOTIFICATIONS |
CN106127037A (zh) * | 2016-06-21 | 2016-11-16 | 依偎科技(南昌)有限公司 | 一种应用冻结处理的方法、装置以及终端 |
KR101989033B1 (ko) * | 2016-09-28 | 2019-06-13 | 한국전자통신연구원 | 플랫폼 관리 장치 및 방법 |
US11815979B2 (en) | 2017-08-22 | 2023-11-14 | Intel Corporation | Application priority based power management for a computer device |
JP6409240B1 (ja) * | 2017-09-06 | 2018-10-24 | レノボ・シンガポール・プライベート・リミテッド | 情報処理装置、制御方法、及びプログラム |
CN109783202A (zh) * | 2017-11-15 | 2019-05-21 | 阿里巴巴集团控股有限公司 | 事件处理方法、系统、设备和存储介质 |
KR20210031187A (ko) * | 2019-09-11 | 2021-03-19 | 삼성전자주식회사 | 복수의 어플리케이션을 실행하는 전자 장치 및 방법 |
JP7032497B1 (ja) | 2020-09-11 | 2022-03-08 | レノボ・シンガポール・プライベート・リミテッド | 情報処理装置、及び制御方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070150759A1 (en) * | 2005-12-22 | 2007-06-28 | Intel Corporation | Method and apparatus for providing for detecting processor state transitions |
CN101470518A (zh) * | 2007-12-26 | 2009-07-01 | 英特尔公司 | 用于不依赖于操作系统的服务的方法和装置 |
CN101515976A (zh) * | 2008-02-19 | 2009-08-26 | 佳能株式会社 | 信息处理设备和信息处理方法 |
CN101517510A (zh) * | 2006-09-29 | 2009-08-26 | 英特尔公司 | 使计算平台转换到低功率系统状态 |
US20110029799A1 (en) * | 2006-04-27 | 2011-02-03 | Walrath Craig A | Power management system and method |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0727728A1 (en) | 1995-02-15 | 1996-08-21 | International Business Machines Corporation | Computer system power management |
US6275932B1 (en) * | 1997-10-08 | 2001-08-14 | Sony Corporation | Program startup apparatus and program startup method for use in electronic machine, and medium |
WO2001015159A1 (en) * | 1999-08-24 | 2001-03-01 | O2 Micro International Limited | Launch key, low power cd-rom player for portable computers |
US6965763B2 (en) * | 2002-02-11 | 2005-11-15 | Motorola, Inc. | Event coordination in an electronic device to reduce current drain |
US7191349B2 (en) * | 2002-12-26 | 2007-03-13 | Intel Corporation | Mechanism for processor power state aware distribution of lowest priority interrupt |
US7539994B2 (en) * | 2003-01-03 | 2009-05-26 | Intel Corporation | Dynamic performance and resource management in a processing system |
US20050108717A1 (en) * | 2003-11-18 | 2005-05-19 | Hong Steve J. | Systems and methods for creating an application group in a multiprocessor system |
US7624257B2 (en) * | 2005-11-30 | 2009-11-24 | International Business Machines Corporation | Digital data processing apparatus having hardware multithreading support including a register set reserved for special class threads |
JP2008107914A (ja) * | 2006-10-23 | 2008-05-08 | Denso Corp | マイクロコンピュータ、プログラム及び車両用電子制御装置 |
WO2008075137A1 (en) * | 2006-12-21 | 2008-06-26 | Nokia Corporation | Data processing apparatus |
US8041968B2 (en) * | 2007-01-04 | 2011-10-18 | Apple Inc. | Power management for driving display with baseband portion when application portion is in low power mode |
US20090210519A1 (en) | 2008-02-18 | 2009-08-20 | Microsoft Corporation | Efficient and transparent remote wakeup |
US8762759B2 (en) | 2008-04-10 | 2014-06-24 | Nvidia Corporation | Responding to interrupts while in a reduced power state |
US9027027B2 (en) * | 2008-06-09 | 2015-05-05 | Microsoft Technology Licensing, Llc | Thread management based on device power state |
US7861024B2 (en) * | 2008-09-30 | 2010-12-28 | Intel Corporation | Providing a set aside mechanism for posted interrupt transactions |
JP2010097427A (ja) * | 2008-10-16 | 2010-04-30 | Autonetworks Technologies Ltd | 処理装置、処理方法及びコンピュータプログラム |
US8555100B2 (en) * | 2008-12-10 | 2013-10-08 | Verizon Patent And Licensing Inc. | Selective low power management prioritization in a mobile device |
US9152199B2 (en) | 2008-12-16 | 2015-10-06 | Microsoft Technology Licensing, Llc | Power state dependent wake-up alarm |
US8595740B2 (en) * | 2009-03-31 | 2013-11-26 | Microsoft Corporation | Priority-based management of system load level |
US8213971B2 (en) * | 2009-04-27 | 2012-07-03 | Qualcomm Incorporated | Apparatus and method for activating computer applications with SMS messaging |
JP5278221B2 (ja) * | 2009-07-21 | 2013-09-04 | 富士ゼロックス株式会社 | 情報処理装置、画像処理システム、及びプログラム |
US8626141B2 (en) * | 2009-07-30 | 2014-01-07 | Qualcomm Incorporated | Method and apparatus for customizing a user interface menu |
JP5418097B2 (ja) * | 2009-09-14 | 2014-02-19 | 株式会社リコー | 情報処理装置、画像形成装置、動作モード切替方法 |
US8578384B2 (en) * | 2009-10-28 | 2013-11-05 | Freescale Semiconductor, Inc. | Method and apparatus for activating system components |
US20110099507A1 (en) * | 2009-10-28 | 2011-04-28 | Google Inc. | Displaying a collection of interactive elements that trigger actions directed to an item |
TWI556092B (zh) * | 2011-09-30 | 2016-11-01 | 英特爾公司 | 用以減少電力消耗之基於優先順序的應用程式事件控制技術 |
US9021287B2 (en) * | 2012-09-04 | 2015-04-28 | Intel Mobile Communications GmbH | Circuit arrangement and method for low power mode management with delayable request |
-
2012
- 2012-09-25 TW TW101135077A patent/TWI556092B/zh active
- 2012-09-27 CN CN201280047653.4A patent/CN103842934B/zh active Active
- 2012-09-27 US US14/125,439 patent/US9383803B2/en not_active Expired - Fee Related
- 2012-09-27 KR KR1020147008097A patent/KR101597167B1/ko active IP Right Grant
- 2012-09-27 JP JP2014530976A patent/JP5932044B2/ja active Active
- 2012-09-27 EP EP12837567.2A patent/EP2761395A4/en not_active Withdrawn
- 2012-09-27 WO PCT/US2012/057525 patent/WO2013049326A2/en active Application Filing
- 2012-09-27 EP EP20167302.7A patent/EP3742256A1/en not_active Withdrawn
-
2016
- 2016-05-13 US US15/153,995 patent/US10254818B2/en active Active
-
2019
- 2019-04-03 US US16/373,839 patent/US11112853B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070150759A1 (en) * | 2005-12-22 | 2007-06-28 | Intel Corporation | Method and apparatus for providing for detecting processor state transitions |
US20110029799A1 (en) * | 2006-04-27 | 2011-02-03 | Walrath Craig A | Power management system and method |
CN101517510A (zh) * | 2006-09-29 | 2009-08-26 | 英特尔公司 | 使计算平台转换到低功率系统状态 |
CN101470518A (zh) * | 2007-12-26 | 2009-07-01 | 英特尔公司 | 用于不依赖于操作系统的服务的方法和装置 |
CN101515976A (zh) * | 2008-02-19 | 2009-08-26 | 佳能株式会社 | 信息处理设备和信息处理方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753311A (zh) * | 2017-11-07 | 2019-05-14 | 三星电子株式会社 | 包括命令优先级策略管理的半导体设备和相关系统 |
CN109753311B (zh) * | 2017-11-07 | 2023-10-31 | 三星电子株式会社 | 包括命令优先级策略管理的半导体设备和相关系统 |
WO2019128586A1 (zh) * | 2017-12-29 | 2019-07-04 | Oppo广东移动通信有限公司 | 应用程序处理方法、电子设备、计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW201329695A (zh) | 2013-07-16 |
US10254818B2 (en) | 2019-04-09 |
EP2761395A4 (en) | 2016-03-30 |
US11112853B2 (en) | 2021-09-07 |
EP3742256A1 (en) | 2020-11-25 |
EP2761395A2 (en) | 2014-08-06 |
KR20140067072A (ko) | 2014-06-03 |
WO2013049326A2 (en) | 2013-04-04 |
CN103842934B (zh) | 2017-08-15 |
TWI556092B (zh) | 2016-11-01 |
US20140237279A1 (en) | 2014-08-21 |
US20190294231A1 (en) | 2019-09-26 |
US20160252951A1 (en) | 2016-09-01 |
WO2013049326A3 (en) | 2013-06-27 |
JP5932044B2 (ja) | 2016-06-08 |
JP2015507771A (ja) | 2015-03-12 |
US9383803B2 (en) | 2016-07-05 |
KR101597167B1 (ko) | 2016-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103842934A (zh) | 用于降低功耗的基于优先级的应用事件控制(paec) | |
Do et al. | ptop: A process-level power profiling tool | |
CN104798004B (zh) | 根据功率平衡控制偏置,跨多个处理器域的动态功率平衡 | |
TWI630476B (zh) | 執行平台裝置之動態功率控制的處理器、機器可讀取媒體及系統 | |
CN103814342B (zh) | 多核心计算装置的动态睡眠 | |
CN103597449B (zh) | 操作系统解耦的异构计算 | |
US7971084B2 (en) | Power management in electronic systems | |
US9377841B2 (en) | Adaptively limiting a maximum operating frequency in a multicore processor | |
CN105183128A (zh) | 强制处理器进入低功率状态 | |
Muralidhar et al. | Energy efficient computing systems: Architectures, abstractions and modeling to techniques and standards | |
US8745629B2 (en) | System and method of controlling power in an electronic device | |
US20220011842A1 (en) | Apparatus and method for achieving deterministic power saving state | |
JP2022036904A (ja) | エネルギー効率の良いコア電圧選択装置及び方法 | |
US20130275791A1 (en) | Method and System for Tracking and Selecting Optimal Power Conserving Modes of a PCD | |
US10860083B2 (en) | System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail | |
CN114008562A (zh) | 使用自适应算法的基于工作负载的动态能量性能偏好 | |
EP4198687A1 (en) | Power management watchdog | |
US20140108830A1 (en) | Power management in electronic systems | |
US11500444B2 (en) | Intelligent prediction of processor idle time apparatus and method | |
Cohen et al. | The Low-Power Design of Android Application and Intel Graphics Performance Analyzers (Intel GPA): Assisted Power Optimization |
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 |